From 97f979d93cf6a35d13fbd39807ef66ce02e3454b Mon Sep 17 00:00:00 2001 From: JSGRD22 Date: Thu, 19 Sep 2024 22:52:20 +0800 Subject: [PATCH] Fixed MoreContextMenu not closing when focus lost --- FancyWM/Controls/TilingWindow.xaml.cs | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/FancyWM/Controls/TilingWindow.xaml.cs b/FancyWM/Controls/TilingWindow.xaml.cs index 52e3a5b..af5083d 100644 --- a/FancyWM/Controls/TilingWindow.xaml.cs +++ b/FancyWM/Controls/TilingWindow.xaml.cs @@ -44,23 +44,11 @@ private void OnMoreClick(object sender, RoutedEventArgs e) { MoreContextMenu.IsOpen = true; MoreContextMenu.DataContext = ViewModel; - var child = (UIElement)VisualTreeHelper.GetChild(VisualTreeHelper.GetChild(MoreContextMenu, 0), 0); - child.MouseEnter -= OnContextMenuMouseEnter; - child.MouseEnter += OnContextMenuMouseEnter; + MoreContextMenu.LostFocus += OnContextMenuLostFocus; } - private void OnContextMenuMouseEnter(object sender, MouseEventArgs e) + private void OnContextMenuLostFocus(object sender, RoutedEventArgs e) { - var child = (UIElement)sender; - child.MouseEnter -= OnContextMenuMouseEnter; - child.MouseLeave -= OnContextMenuMouseLeave; - child.MouseLeave += OnContextMenuMouseLeave; - } - - private void OnContextMenuMouseLeave(object sender, MouseEventArgs e) - { - var child = (UIElement)sender; - child.MouseLeave -= OnContextMenuMouseLeave; MoreContextMenu.IsOpen = false; }