diff options
author | Didier Loiseau <didierloiseau+git@gmail.com> | 2016-03-08 23:14:15 +0100 |
---|---|---|
committer | Didier Loiseau <didierloiseau+git@gmail.com> | 2016-03-08 23:14:15 +0100 |
commit | b7a81f041906c3c978a314987e486536be0a58cd (patch) | |
tree | 81865fdb062f2716cb1581a856f3728fb4b09209 /tmk_core/common/action_macro.c | |
parent | 7d3ebd7b40b96f576fe4608b33f47329c334925b (diff) | |
download | qmk_firmware-b7a81f041906c3c978a314987e486536be0a58cd.tar.gz qmk_firmware-b7a81f041906c3c978a314987e486536be0a58cd.zip |
Fix #156: clear weak mods on every key press
- new macro_mods bit field for mods applied by macros
- weak_mods now only used for ACT_{L,R}MODS (i.e. LSFT, RSFT, LCTL etc.)
- clear the _weak_ mods on every key *pressed* such that LSFT etc.
can no more interfere with the next key
Diffstat (limited to 'tmk_core/common/action_macro.c')
-rw-r--r-- | tmk_core/common/action_macro.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/tmk_core/common/action_macro.c b/tmk_core/common/action_macro.c index ffaf125c0..7726b1190 100644 --- a/tmk_core/common/action_macro.c +++ b/tmk_core/common/action_macro.c | |||
@@ -41,7 +41,7 @@ void action_macro_play(const macro_t *macro_p) | |||
41 | MACRO_READ(); | 41 | MACRO_READ(); |
42 | dprintf("KEY_DOWN(%02X)\n", macro); | 42 | dprintf("KEY_DOWN(%02X)\n", macro); |
43 | if (IS_MOD(macro)) { | 43 | if (IS_MOD(macro)) { |
44 | add_weak_mods(MOD_BIT(macro)); | 44 | add_macro_mods(MOD_BIT(macro)); |
45 | send_keyboard_report(); | 45 | send_keyboard_report(); |
46 | } else { | 46 | } else { |
47 | register_code(macro); | 47 | register_code(macro); |
@@ -51,7 +51,7 @@ void action_macro_play(const macro_t *macro_p) | |||
51 | MACRO_READ(); | 51 | MACRO_READ(); |
52 | dprintf("KEY_UP(%02X)\n", macro); | 52 | dprintf("KEY_UP(%02X)\n", macro); |
53 | if (IS_MOD(macro)) { | 53 | if (IS_MOD(macro)) { |
54 | del_weak_mods(MOD_BIT(macro)); | 54 | del_macro_mods(MOD_BIT(macro)); |
55 | send_keyboard_report(); | 55 | send_keyboard_report(); |
56 | } else { | 56 | } else { |
57 | unregister_code(macro); | 57 | unregister_code(macro); |