From c128a667722ece5c67b3370765a0c2d5e83bc9f3 Mon Sep 17 00:00:00 2001 From: Jack251970 <1160210343@qq.com> Date: Wed, 14 May 2025 12:09:18 +0800 Subject: [PATCH] Manage handle in dispose --- Flow.Launcher/MainWindow.xaml.cs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/Flow.Launcher/MainWindow.xaml.cs b/Flow.Launcher/MainWindow.xaml.cs index 0b7ebf148..4465c8e33 100644 --- a/Flow.Launcher/MainWindow.xaml.cs +++ b/Flow.Launcher/MainWindow.xaml.cs @@ -99,6 +99,11 @@ namespace Flow.Launcher #pragma warning disable VSTHRD100 // Avoid async void methods + private void ThemeManager_ActualApplicationThemeChanged(ModernWpf.ThemeManager sender, object args) + { + _theme.RefreshFrameAsync(); + } + private void OnSourceInitialized(object sender, EventArgs e) { var handle = Win32Helper.GetWindowHandle(this, true); @@ -543,10 +548,6 @@ namespace Flow.Launcher #region Window Sound Effects - private void ThemeManager_ActualApplicationThemeChanged(ModernWpf.ThemeManager sender, object args) - { - _theme.RefreshFrameAsync(); - } private void SystemEvents_PowerModeChanged(object sender, PowerModeChangedEventArgs e) { // Fix for sound not playing after sleep / hibernate @@ -1184,6 +1185,7 @@ namespace Flow.Launcher _notifyIcon?.Dispose(); animationSoundWMP?.Close(); animationSoundWPF?.Dispose(); + ModernWpf.ThemeManager.Current.ActualApplicationThemeChanged -= ThemeManager_ActualApplicationThemeChanged; SystemEvents.PowerModeChanged -= SystemEvents_PowerModeChanged; }