diff options
author | precondition <[email protected]> | 2023-07-07 16:18:02 +0200 |
---|---|---|
committer | GitHub <[email protected]> | 2023-07-08 00:18:02 +1000 |
commit | 1abf8f3e8b8a9b358be3c27867f9bee7422507f3 (patch) | |
tree | 22df0acf90ca877cf4b1066116704a310227be99 /quantum/process_keycode | |
parent | baf289112460d73e889a8a442a932bc4198ccc05 (diff) | |
download | qmk_firmware-1abf8f3e8b8a9b358be3c27867f9bee7422507f3.tar.gz qmk_firmware-1abf8f3e8b8a9b358be3c27867f9bee7422507f3.zip |
[Feature] Send a dummy keycode to neutralize flashing modifiers in retro tap and key overrides (#20992)
Diffstat (limited to 'quantum/process_keycode')
-rw-r--r-- | quantum/process_keycode/process_key_override.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/quantum/process_keycode/process_key_override.c b/quantum/process_keycode/process_key_override.c index 17e490e67a..de628d3fec 100644 --- a/quantum/process_keycode/process_key_override.c +++ b/quantum/process_keycode/process_key_override.c @@ -322,6 +322,15 @@ static bool try_activating_override(const uint16_t keycode, const uint8_t layer, clear_active_override(false); +#ifdef DUMMY_MOD_NEUTRALIZER_KEYCODE + // Send a dummy keycode before unregistering the modifier(s) + // so that suppressing the modifier(s) doesn't falsely get interpreted + // by the host OS as a tap of a modifier key. + // For example, unintended activations of the start menu on Windows when + // using a GUI+<kc> key override with suppressed mods. + neutralize_flashing_modifiers(active_mods); +#endif + active_override = override; active_override_trigger_is_down = true; |