Skip to content

Commit

Permalink
Fix leader overlapping with timerless
Browse files Browse the repository at this point in the history
  • Loading branch information
nickconway committed Jun 4, 2023
1 parent 4b7c1e7 commit 2d761ea
Show file tree
Hide file tree
Showing 5 changed files with 54 additions and 1 deletion.
2 changes: 1 addition & 1 deletion app/src/leader.c
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,7 @@ static int position_state_changed_listener(const zmk_event_t *ev) {
zmk_leader_deactivate();
}
}
if (!timerless) {
if (!timerless || num_comp_candidates < num_candidates) {
reset_timer(data->timestamp);
}
}
Expand Down
37 changes: 37 additions & 0 deletions app/tests/leader/behavior_keymap_overlap_timerless.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#include <dt-bindings/zmk/keys.h>
#include <behaviors.dtsi>
#include <dt-bindings/zmk/kscan_mock.h>

&leader {
timeout-ms = <200>;
timerless;
};

/ {
leader-sequences {
compatible = "zmk,leader-sequences";

leader_seq_one {
key-positions = <0>;
bindings = <&kp A>;
};

leader_seq_two {
key-positions = <0 0>;
bindings = <&kp B>;
};

};

keymap {
compatible = "zmk,keymap";
label ="Default keymap";

default_layer {
bindings = <
&kp N1 &kp N2
&kp N3 &leader
>;
};
};
};
2 changes: 2 additions & 0 deletions app/tests/leader/overlapping-timerless/events.patterns
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
s/.*hid_listener_keycode_//p
s/.*zmk_leader.*:/leader:/p
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
leader: leader key activated
pressed: usage_page 0x07 keycode 0x04 implicit_mods 0x00 explicit_mods 0x00
released: usage_page 0x07 keycode 0x04 implicit_mods 0x00 explicit_mods 0x00
leader: leader key deactivated
10 changes: 10 additions & 0 deletions app/tests/leader/overlapping-timerless/native_posix_64.keymap
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#include "../behavior_keymap_overlap_timerless.dtsi"

&kscan {
events = <
ZMK_MOCK_PRESS(1,1,10)
ZMK_MOCK_RELEASE(1,1,10)
ZMK_MOCK_PRESS(0,0,10)
ZMK_MOCK_RELEASE(0,0,2000)
>;
};

0 comments on commit 2d761ea

Please sign in to comment.