MCPcopy Create free account
hub / github.com/HO-COOH/FastCopy / trySetMicaBackdrop

Method trySetMicaBackdrop

FastCopy/AcrylicHelper.cpp:119–154  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

117}
118
119bool MicaHelper::trySetMicaBackdrop(MicaParameter const& parameter)
120{
121 auto activatedToken = m_window.Activated([this](auto, winrt::Microsoft::UI::Xaml::WindowActivatedEventArgs args)
122 {
123 if (m_configurationSource)
124 m_configurationSource.IsInputActive(args.WindowActivationState() != winrt::Microsoft::UI::Xaml::WindowActivationState::Deactivated);
125 });
126
127 //m_window.Closed([this, activatedToken](auto, winrt::Microsoft::UI::Xaml::WindowEventArgs args)
128 //{
129 // //m_micaController = nullptr;
130 // //m_configurationSource = nullptr;
131 // //m_window.Activated(activatedToken);
132 //});
133
134 m_window.Content().as<winrt::Microsoft::UI::Xaml::FrameworkElement>().ActualThemeChanged([this](auto, auto)
135 {
136 if (m_configurationSource)
137 setConfigurationSourceTheme();
138 });
139
140 m_configurationSource.IsInputActive(true);
141 setConfigurationSourceTheme();
142 auto pt = m_window.try_as<winrt::Microsoft::UI::Composition::ICompositionSupportsSystemBackdrop>();
143
144 if (parameter.kind) m_micaController.Kind(*parameter.kind);
145 if (parameter.fallbackColor) m_micaController.FallbackColor(*parameter.fallbackColor);
146 if (parameter.luminosityOpacity) m_micaController.LuminosityOpacity(*parameter.luminosityOpacity);
147 if (parameter.tintColor) m_micaController.TintColor(*parameter.tintColor);
148 if (parameter.tintOpacity) m_micaController.TintOpacity(*parameter.tintOpacity);
149
150 m_micaController.SetSystemBackdropConfiguration(m_configurationSource);
151 m_micaController.AddSystemBackdropTarget(pt);
152
153 return true;
154}
155
156void MicaHelper::setConfigurationSourceTheme()
157{

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected