diff options
Diffstat (limited to 'quantum')
-rw-r--r-- | quantum/process_keycode/process_leader.c | 5 | ||||
-rw-r--r-- | quantum/process_keycode/process_leader.h | 9 |
2 files changed, 12 insertions, 2 deletions
diff --git a/quantum/process_keycode/process_leader.c b/quantum/process_keycode/process_leader.c index 58a615d85..cf63f2514 100644 --- a/quantum/process_keycode/process_leader.c +++ b/quantum/process_keycode/process_leader.c | |||
@@ -49,7 +49,10 @@ bool process_leader(uint16_t keycode, keyrecord_t *record) { | |||
49 | // Leader key set-up | 49 | // Leader key set-up |
50 | if (record->event.pressed) { | 50 | if (record->event.pressed) { |
51 | if (leading) { | 51 | if (leading) { |
52 | if (timer_elapsed(leader_time) < LEADER_TIMEOUT) { | 52 | # ifndef LEADER_NO_TIMEOUT |
53 | if (timer_elapsed(leader_time) < LEADER_TIMEOUT) | ||
54 | # endif // LEADER_NO_TIMEOUT | ||
55 | { | ||
53 | # ifndef LEADER_KEY_STRICT_KEY_PROCESSING | 56 | # ifndef LEADER_KEY_STRICT_KEY_PROCESSING |
54 | if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { | 57 | if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { |
55 | keycode = keycode & 0xFF; | 58 | keycode = keycode & 0xFF; |
diff --git a/quantum/process_keycode/process_leader.h b/quantum/process_keycode/process_leader.h index 9844f27a1..5865d65a5 100644 --- a/quantum/process_keycode/process_leader.h +++ b/quantum/process_keycode/process_leader.h | |||
@@ -35,4 +35,11 @@ void qk_leader_start(void); | |||
35 | extern uint16_t leader_time; \ | 35 | extern uint16_t leader_time; \ |
36 | extern uint16_t leader_sequence[5]; \ | 36 | extern uint16_t leader_sequence[5]; \ |
37 | extern uint8_t leader_sequence_size | 37 | extern uint8_t leader_sequence_size |
38 | #define LEADER_DICTIONARY() if (leading && timer_elapsed(leader_time) > LEADER_TIMEOUT) | 38 | |
39 | #ifdef LEADER_NO_TIMEOUT | ||
40 | #define LEADER_DICTIONARY() if (leading && leader_sequence_size > 0 && timer_elapsed(leader_time) > LEADER_TIMEOUT) | ||
41 | #else | ||
42 | #define LEADER_DICTIONARY() if (leading && timer_elapsed(leader_time) > LEADER_TIMEOUT) | ||
43 | #endif | ||
44 | |||
45 | #endif | ||