[MouseUtils]Auto activate setting for highlighter and crosshairs (#27826)

* auto activate for mouse highlighter and crosshairs

* revert changed encoding
This commit is contained in:
Davide Giacometti
2023-08-08 18:01:23 +02:00
committed by GitHub
parent a49f806ac7
commit 8e712c6f49
11 changed files with 112 additions and 9 deletions

View File

@@ -534,6 +534,11 @@ int MouseHighlighterMain(HINSTANCE hInstance, MouseHighlighterSettings settings)
}
Logger::info("Initialized the highlighter instance.");
if (settings.autoActivate)
{
highlighter.SwitchActivationMode();
}
MSG msg;
// Main message loop:

View File

@@ -7,6 +7,7 @@ const winrt::Windows::UI::Color MOUSE_HIGHLIGHTER_DEFAULT_ALWAYS_COLOR = winrt::
constexpr int MOUSE_HIGHLIGHTER_DEFAULT_RADIUS = 20;
constexpr int MOUSE_HIGHLIGHTER_DEFAULT_DELAY_MS = 500;
constexpr int MOUSE_HIGHLIGHTER_DEFAULT_DURATION_MS = 250;
constexpr bool MOUSE_HIGHLIGHTER_DEFAULT_AUTO_ACTIVATE = false;
struct MouseHighlighterSettings
{
@@ -16,6 +17,7 @@ struct MouseHighlighterSettings
int radius = MOUSE_HIGHLIGHTER_DEFAULT_RADIUS;
int fadeDelayMs = MOUSE_HIGHLIGHTER_DEFAULT_DELAY_MS;
int fadeDurationMs = MOUSE_HIGHLIGHTER_DEFAULT_DURATION_MS;
bool autoActivate = MOUSE_HIGHLIGHTER_DEFAULT_AUTO_ACTIVATE;
};
int MouseHighlighterMain(HINSTANCE hinst, MouseHighlighterSettings settings);

View File

@@ -17,6 +17,7 @@ namespace
const wchar_t JSON_KEY_HIGHLIGHT_RADIUS[] = L"highlight_radius";
const wchar_t JSON_KEY_HIGHLIGHT_FADE_DELAY_MS[] = L"highlight_fade_delay_ms";
const wchar_t JSON_KEY_HIGHLIGHT_FADE_DURATION_MS[] = L"highlight_fade_duration_ms";
const wchar_t JSON_KEY_AUTO_ACTIVATE[] = L"auto_activate";
}
extern "C" IMAGE_DOS_HEADER __ImageBase;
@@ -356,6 +357,16 @@ public:
{
Logger::warn("Failed to initialize Fade Duration from settings. Will use default value");
}
try
{
// Parse auto activate
auto jsonPropertiesObject = settingsObject.GetNamedObject(JSON_KEY_PROPERTIES).GetNamedObject(JSON_KEY_AUTO_ACTIVATE);
highlightSettings.autoActivate = jsonPropertiesObject.GetNamedBoolean(JSON_KEY_VALUE);
}
catch (...)
{
Logger::warn("Failed to initialize auto activate from settings. Will use default value");
}
}
else
{