diff options
author | Drashna Jaelre <[email protected]> | 2022-09-26 20:49:15 -0700 |
---|---|---|
committer | GitHub <[email protected]> | 2022-09-26 20:49:15 -0700 |
commit | d909038b28c553f5eb0ecec74f58792155c4d49d (patch) | |
tree | 2827cb7325a599136f2e0a571c0b255a26c3ae57 /quantum/action.c | |
parent | ce0cd17a13163dbf3b6ed8b16230ae07a70eb361 (diff) | |
download | qmk_firmware-d909038b28c553f5eb0ecec74f58792155c4d49d.tar.gz qmk_firmware-d909038b28c553f5eb0ecec74f58792155c4d49d.zip |
Move Oneshot mod callbacks to after mods are set (#18101)
Diffstat (limited to 'quantum/action.c')
-rw-r--r-- | quantum/action.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/quantum/action.c b/quantum/action.c index 6b2e9104e0..a1476131b9 100644 --- a/quantum/action.c +++ b/quantum/action.c @@ -403,9 +403,9 @@ void process_action(keyrecord_t *record, action_t action) { # if defined(ONESHOT_TAP_TOGGLE) && ONESHOT_TAP_TOGGLE > 1 } else if (tap_count == ONESHOT_TAP_TOGGLE) { dprint("MODS_TAP: Toggling oneshot"); + register_mods(mods); clear_oneshot_mods(); set_oneshot_locked_mods(mods | get_oneshot_locked_mods()); - register_mods(mods); # endif } else { register_mods(mods | get_oneshot_mods()); @@ -418,16 +418,16 @@ void process_action(keyrecord_t *record, action_t action) { // Retain Oneshot mods # if defined(ONESHOT_TAP_TOGGLE) && ONESHOT_TAP_TOGGLE > 1 if (mods & get_mods()) { + unregister_mods(mods); clear_oneshot_mods(); set_oneshot_locked_mods(~mods & get_oneshot_locked_mods()); - unregister_mods(mods); } } else if (tap_count == ONESHOT_TAP_TOGGLE) { // Toggle Oneshot Layer # endif } else { - clear_oneshot_mods(); unregister_mods(mods); + clear_oneshot_mods(); } } } |