From a2638d01dc1fa9003bbedbab216718e78ce11068 Mon Sep 17 00:00:00 2001 From: Davide Giacometti Date: Sun, 16 Oct 2022 14:51:08 +0200 Subject: [PATCH] [Mouse Highlighter]Change opacity setting to 1-100 (#20964) * mouse highlighter opacity 1-100 --- .../MouseUtils/MouseHighlighter/MouseHighlighter.h | 2 +- src/modules/MouseUtils/MouseHighlighter/dllmain.cpp | 7 +++++++ .../Settings.UI.Library/MouseHighlighterProperties.cs | 2 +- .../Settings.UI.Library/MouseHighlighterSettings.cs | 10 +++++++++- src/settings-ui/Settings.UI/Views/MouseUtilsPage.xaml | 4 ++-- 5 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/modules/MouseUtils/MouseHighlighter/MouseHighlighter.h b/src/modules/MouseUtils/MouseHighlighter/MouseHighlighter.h index eb1948bd09..e98024d100 100644 --- a/src/modules/MouseUtils/MouseHighlighter/MouseHighlighter.h +++ b/src/modules/MouseUtils/MouseHighlighter/MouseHighlighter.h @@ -1,7 +1,7 @@ #pragma once #include "pch.h" -constexpr int MOUSE_HIGHLIGHTER_DEFAULT_OPACITY = 160; +constexpr int MOUSE_HIGHLIGHTER_DEFAULT_OPACITY = 65; const winrt::Windows::UI::Color MOUSE_HIGHLIGHTER_DEFAULT_LEFT_BUTTON_COLOR = winrt::Windows::UI::ColorHelper::FromArgb(MOUSE_HIGHLIGHTER_DEFAULT_OPACITY, 255, 255, 0); const winrt::Windows::UI::Color MOUSE_HIGHLIGHTER_DEFAULT_RIGHT_BUTTON_COLOR = winrt::Windows::UI::ColorHelper::FromArgb(MOUSE_HIGHLIGHTER_DEFAULT_OPACITY, 0, 0, 255); constexpr int MOUSE_HIGHLIGHTER_DEFAULT_RADIUS = 20; diff --git a/src/modules/MouseUtils/MouseHighlighter/dllmain.cpp b/src/modules/MouseUtils/MouseHighlighter/dllmain.cpp index d14ffd4f66..c3aa1380a6 100644 --- a/src/modules/MouseUtils/MouseHighlighter/dllmain.cpp +++ b/src/modules/MouseUtils/MouseHighlighter/dllmain.cpp @@ -215,6 +215,13 @@ public: { Logger::warn("Failed to initialize Opacity from settings. Will use default value"); } + + // Convert % to uint8_t + if ((std::wstring)settingsObject.GetNamedString(L"version") != L"1.0") + { + opacity = opacity * 255 / 100; + } + try { // Parse left button click color diff --git a/src/settings-ui/Settings.UI.Library/MouseHighlighterProperties.cs b/src/settings-ui/Settings.UI.Library/MouseHighlighterProperties.cs index 7ccd5534f3..5e1a4746fb 100644 --- a/src/settings-ui/Settings.UI.Library/MouseHighlighterProperties.cs +++ b/src/settings-ui/Settings.UI.Library/MouseHighlighterProperties.cs @@ -34,7 +34,7 @@ namespace Microsoft.PowerToys.Settings.UI.Library ActivationShortcut = new HotkeySettings(true, false, false, true, 0x48); LeftButtonClickColor = new StringProperty("#FFFF00"); RightButtonClickColor = new StringProperty("#0000FF"); - HighlightOpacity = new IntProperty(160); + HighlightOpacity = new IntProperty(65); HighlightRadius = new IntProperty(20); HighlightFadeDelayMs = new IntProperty(500); HighlightFadeDurationMs = new IntProperty(250); diff --git a/src/settings-ui/Settings.UI.Library/MouseHighlighterSettings.cs b/src/settings-ui/Settings.UI.Library/MouseHighlighterSettings.cs index 100e5b60d6..c25869c969 100644 --- a/src/settings-ui/Settings.UI.Library/MouseHighlighterSettings.cs +++ b/src/settings-ui/Settings.UI.Library/MouseHighlighterSettings.cs @@ -18,7 +18,7 @@ namespace Microsoft.PowerToys.Settings.UI.Library { Name = ModuleName; Properties = new MouseHighlighterProperties(); - Version = "1.0"; + Version = "1.1"; } public string GetModuleName() @@ -29,6 +29,14 @@ namespace Microsoft.PowerToys.Settings.UI.Library // This can be utilized in the future if the settings.json file is to be modified/deleted. public bool UpgradeSettingsConfiguration() { + // Migrate settings from 1.0 to 1.1 + if (Version == "1.0") + { + Version = "1.1"; + Properties.HighlightOpacity = new IntProperty(Properties.HighlightOpacity.Value * 100 / 255); + return true; + } + return false; } } diff --git a/src/settings-ui/Settings.UI/Views/MouseUtilsPage.xaml b/src/settings-ui/Settings.UI/Views/MouseUtilsPage.xaml index 71e32fd4cd..b6d5dbfc80 100644 --- a/src/settings-ui/Settings.UI/Views/MouseUtilsPage.xaml +++ b/src/settings-ui/Settings.UI/Views/MouseUtilsPage.xaml @@ -178,8 +178,8 @@ -