From 088f51410a5819bafd9d88767a1079ef07249fc0 Mon Sep 17 00:00:00 2001 From: Stone_Red <56473591+Stone-Red-Code@users.noreply.github.com> Date: Wed, 26 Feb 2025 19:28:42 +0100 Subject: [PATCH] Send plugin windows to front when edit mode enabled and to back when disabled --- src/DesktopMagic/MainWindow.xaml.cs | 18 ------------------ src/DesktopMagic/Plugins/PluginWindow.xaml.cs | 4 ++++ 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/src/DesktopMagic/MainWindow.xaml.cs b/src/DesktopMagic/MainWindow.xaml.cs index 9b0d488..4d5d569 100644 --- a/src/DesktopMagic/MainWindow.xaml.cs +++ b/src/DesktopMagic/MainWindow.xaml.cs @@ -159,17 +159,6 @@ namespace DesktopMagic #region Windows - private static void DisplayWindow_ContentRendered(object? sender, EventArgs e) - { - if (sender is not Window window) - { - return; - } - - WindowPos.SendWpfWindowBack(window); - WindowPos.SendWpfWindowBack(window); - } - private void EditCheckBox_Click(object? sender, RoutedEventArgs? e) { foreach (PluginWindow window in Windows) @@ -265,7 +254,6 @@ namespace DesktopMagic window.ShowInTaskbar = false; window.Show(); window.SetEditMode(editCheckBox.IsChecked == true); - window.ContentRendered += DisplayWindow_ContentRendered; window.Closing += DisplayWindow_Closing; Windows.Add(window); WindowNames.Add(window.Title); @@ -289,12 +277,6 @@ namespace DesktopMagic ShowInTaskbar = false; WindowState = WindowState.Minimized; Visibility = Visibility.Collapsed; - - foreach (Window item in Windows) - { - WindowPos.SendWpfWindowBack(item); - WindowPos.SendWpfWindowBack(item); - } } } diff --git a/src/DesktopMagic/Plugins/PluginWindow.xaml.cs b/src/DesktopMagic/Plugins/PluginWindow.xaml.cs index accbc45..86a097e 100644 --- a/src/DesktopMagic/Plugins/PluginWindow.xaml.cs +++ b/src/DesktopMagic/Plugins/PluginWindow.xaml.cs @@ -94,6 +94,7 @@ public partial class PluginWindow : Window { if (enabled) { + Topmost = true; panel.Visibility = Visibility.Visible; imageBorder.BorderThickness = new Thickness(3); image.Margin = new(-3); @@ -103,9 +104,12 @@ public partial class PluginWindow : Window } else { + Topmost = false; panel.Visibility = Visibility.Collapsed; imageBorder.BorderThickness = new Thickness(0); image.Margin = new Thickness(0); + WindowPos.SendWpfWindowBack(this); + WindowPos.SendWpfWindowBack(this); WindowPos.SetIsLocked(this, true); tileBar.CaptionHeight = 0; ResizeMode = ResizeMode.NoResize;