From 42303cc17b4cec8dfd5374abc06015b680098b3a Mon Sep 17 00:00:00 2001 From: Yu Leng Date: Thu, 22 Jan 2026 11:56:30 +0800 Subject: [PATCH] Update dispatcher usage and handle power state changes Switched to dispatcher.TryEnqueue for UI flag reset in DashboardViewModel. Added handling for MonitorInfo.EnablePowerState changes in PowerDisplayViewModel to trigger settings updates. --- src/settings-ui/Settings.UI/ViewModels/DashboardViewModel.cs | 2 +- src/settings-ui/Settings.UI/ViewModels/PowerDisplayViewModel.cs | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/settings-ui/Settings.UI/ViewModels/DashboardViewModel.cs b/src/settings-ui/Settings.UI/ViewModels/DashboardViewModel.cs index 549333a0de..418d6b5964 100644 --- a/src/settings-ui/Settings.UI/ViewModels/DashboardViewModel.cs +++ b/src/settings-ui/Settings.UI/ViewModels/DashboardViewModel.cs @@ -258,7 +258,7 @@ namespace Microsoft.PowerToys.Settings.UI.ViewModels finally { // Use dispatcher to reset flag after UI updates complete - dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Background, () => + dispatcher.TryEnqueue(DispatcherQueuePriority.Low, () => { _isSorting = false; }); diff --git a/src/settings-ui/Settings.UI/ViewModels/PowerDisplayViewModel.cs b/src/settings-ui/Settings.UI/ViewModels/PowerDisplayViewModel.cs index 502f2ee6ef..ce19e37467 100644 --- a/src/settings-ui/Settings.UI/ViewModels/PowerDisplayViewModel.cs +++ b/src/settings-ui/Settings.UI/ViewModels/PowerDisplayViewModel.cs @@ -336,6 +336,7 @@ namespace Microsoft.PowerToys.Settings.UI.ViewModels e.PropertyName == nameof(MonitorInfo.EnableInputSource) || e.PropertyName == nameof(MonitorInfo.EnableRotation) || e.PropertyName == nameof(MonitorInfo.EnableColorTemperature) || + e.PropertyName == nameof(MonitorInfo.EnablePowerState) || e.PropertyName == nameof(MonitorInfo.IsHidden)) { SignalSettingsUpdated();