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

This commit is contained in:
Isaac Elenbaas 2021-02-27 23:48:19 -05:00 committed by GitHub
parent 58e733b5a0
commit 765d8a33dd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

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