From df67ec20d9240a01380827775f9d8c0000a01455 Mon Sep 17 00:00:00 2001 From: Raheman Vaiya Date: Wed, 29 Dec 2021 20:37:55 -0500 Subject: [PATCH] Execute overload keys verbatim (Fix #74). --- src/keyboard.c | 6 ++++-- t/overload-nested.t | 13 +++++++++++++ t/overload-nested2.t | 13 +++++++++++++ t/test.conf | 1 + 4 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 t/overload-nested.t create mode 100644 t/overload-nested2.t diff --git a/src/keyboard.c b/src/keyboard.c index a56c3ed..9eea62b 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -451,8 +451,10 @@ long kbd_process_key_event(struct keyboard *kbd, } else if (last_pressed_keycode == code) { kbd_deactivate_layer(kbd, layer); - kbd_process_keyseq(kbd, 0, sequence, 1); - kbd_process_keyseq(kbd, 0, sequence, 0); + kbd_process_keyseq(kbd, 1, sequence, 1); + kbd_process_keyseq(kbd, 1, sequence, 0); + + kbd_reify_mods(kbd); } else { kbd_deactivate_layer(kbd, layer); } diff --git a/t/overload-nested.t b/t/overload-nested.t new file mode 100644 index 0000000..9b74059 --- /dev/null +++ b/t/overload-nested.t @@ -0,0 +1,13 @@ +6 down +o down +a down +a up +o up +6 up + +control down +meta down +a down +a up +meta up +control up diff --git a/t/overload-nested2.t b/t/overload-nested2.t new file mode 100644 index 0000000..436b2dc --- /dev/null +++ b/t/overload-nested2.t @@ -0,0 +1,13 @@ +6 down +o down +o up +6 up + +control down +meta down +meta up +control up +\ down +\ up +control down +control up diff --git a/t/test.conf b/t/test.conf index 8b1b0e8..f7fc30a 100644 --- a/t/test.conf +++ b/t/test.conf @@ -33,6 +33,7 @@ a = b [6l:C] +o = overload(meta, \) m = macro(mac) e = macro(leftcontrol o+n leftcontrol+1) b = macro(leftcontrol+n)