Browse Source

Fixes #4072, #6214. Revision of #156 to clear before AS/TD. (#9941)

Isaac Elenbaas 5 years ago
parent
commit
765d8a33dd
1 changed files with 5 additions and 5 deletions
  1. 5 5
      tmk_core/common/action.c

+ 5 - 5
tmk_core/common/action.c

@@ -76,6 +76,11 @@ void action_exec(keyevent_t event) {
 #endif
     }
 
+    if (event.pressed) {
+        // clear the potential weak mods left by previously pressed keys
+        clear_weak_mods();
+    }
+
 #ifdef SWAP_HANDS_ENABLE
     if (!IS_NOEVENT(event)) {
         process_hand_swap(&event);
@@ -237,11 +242,6 @@ void process_action(keyrecord_t *record, action_t action) {
     uint8_t tap_count = record->tap.count;
 #endif
 
-    if (event.pressed) {
-        // clear the potential weak mods left by previously pressed keys
-        clear_weak_mods();
-    }
-
 #ifndef NO_ACTION_ONESHOT
     bool do_release_oneshot = false;
     // notice we only clear the one shot layer if the pressed key is not a modifier.