diff options
| author | Erez Zukerman <bulk@ezuk.org> | 2016-03-27 21:09:15 +0300 |
|---|---|---|
| committer | Erez Zukerman <bulk@ezuk.org> | 2016-03-27 21:09:15 +0300 |
| commit | 80eefb09ac5de95a6977702b4014d4b4d79a5d7d (patch) | |
| tree | 3c5176ee8dfdadd4429b709e8c2cabcaff84f063 /tmk_core/common/action.c | |
| parent | 16da54cfa037aad7575bae2fd12527ae7a0149b1 (diff) | |
| parent | b7a81f041906c3c978a314987e486536be0a58cd (diff) | |
| download | qmk_firmware-80eefb09ac5de95a6977702b4014d4b4d79a5d7d.tar.gz qmk_firmware-80eefb09ac5de95a6977702b4014d4b4d79a5d7d.zip | |
Merge pull request #188 from DidierLoiseau/issue-156
Fix #156: clear weak mods on every key press
Diffstat (limited to 'tmk_core/common/action.c')
| -rw-r--r-- | tmk_core/common/action.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tmk_core/common/action.c b/tmk_core/common/action.c index 77ea39e94..4197c53ed 100644 --- a/tmk_core/common/action.c +++ b/tmk_core/common/action.c | |||
| @@ -70,6 +70,10 @@ void process_action(keyrecord_t *record) | |||
| 70 | #endif | 70 | #endif |
| 71 | dprintln(); | 71 | dprintln(); |
| 72 | 72 | ||
| 73 | if (event.pressed) { | ||
| 74 | // clear the potential weak mods left by previously pressed keys | ||
| 75 | clear_weak_mods(); | ||
| 76 | } | ||
| 73 | switch (action.kind.id) { | 77 | switch (action.kind.id) { |
| 74 | /* Key and Mods */ | 78 | /* Key and Mods */ |
| 75 | case ACT_LMODS: | 79 | case ACT_LMODS: |
| @@ -500,6 +504,7 @@ void clear_keyboard(void) | |||
| 500 | void clear_keyboard_but_mods(void) | 504 | void clear_keyboard_but_mods(void) |
| 501 | { | 505 | { |
| 502 | clear_weak_mods(); | 506 | clear_weak_mods(); |
| 507 | clear_macro_mods(); | ||
| 503 | clear_keys(); | 508 | clear_keys(); |
| 504 | send_keyboard_report(); | 509 | send_keyboard_report(); |
| 505 | #ifdef MOUSEKEY_ENABLE | 510 | #ifdef MOUSEKEY_ENABLE |
