public FullWindow(MainViewModel viewModel) { Instance = this; _viewModel = new FullWindowViewModel(viewModel); _viewModel.AppExpanded += (_, e) => AppPopup.PositionAndShow(this, e); _viewModel.AppCollapsed += (_, __) => AppPopup.HideWithAnimation(); InitializeComponent(); AppPopup.Closed += (_, __) => _viewModel.CollapseApp(); LocationChanged += (_, __) => _viewModel.CollapseApp(); SizeChanged += (_, __) => _viewModel.CollapseApp(); DataContext = _viewModel; PreviewKeyDown += FullWindow_PreviewKeyDown; this.FlowDirection = SystemSettings.IsRTL ? FlowDirection.RightToLeft : FlowDirection.LeftToRight; Instance = this; Closing += (s, e) => { Instance = null; _viewModel.Close(); }; SourceInitialized += (_, __) => { this.Cloak(); AccentPolicyLibrary.SetWindowBlur(this, true, true); }; Microsoft.Win32.SystemEvents.DisplaySettingsChanged += (s, e) => Dispatcher.BeginInvoke((Action)(() => _viewModel.CollapseApp())); }
private void LightDismissBorder_PreviewMouseDown(object sender, MouseButtonEventArgs e) { AppPopup.HideWithAnimation(); e.Handled = true; }
private void ViewModel_AppExpanded(object sender, AppExpandedEventArgs e) { AppPopup.PositionAndShow(this, e); }
private void ViewModel_AppCollapsed(object sender, object e) { AppPopup.HideWithAnimation(); }
private void ViewModel_AppExpanded(object sender, AppExpandedEventArgs e) { Trace.WriteLine("FullWindow ViewModel_AppExpanded"); AppPopup.PositionAndShow(_mainViewModel, this, e); }
private void ViewModel_AppCollapsed(object sender, object e) { Trace.WriteLine("FullWindow ViewModel_AppCollapsed"); AppPopup.HideWithAnimation(); }
public void OpenPopup(object viewModel, FrameworkElement container) { AppPopup?.Invoke(viewModel, container); }