From 46823be3c9f937c9ae5f5261130d9d6d75cce6dd Mon Sep 17 00:00:00 2001 From: Mheca Date: Sat, 7 Jun 2025 12:28:45 +0200 Subject: [PATCH 1/3] Fix repeat last key for tap_dance keys --- quantum/process_keycode/process_tap_dance.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/quantum/process_keycode/process_tap_dance.c b/quantum/process_keycode/process_tap_dance.c index 11df62763dd..b40c3b7f771 100644 --- a/quantum/process_keycode/process_tap_dance.c +++ b/quantum/process_keycode/process_tap_dance.c @@ -38,6 +38,9 @@ void tap_dance_pair_on_each_tap(tap_dance_state_t *state, void *user_data) { void tap_dance_pair_finished(tap_dance_state_t *state, void *user_data) { tap_dance_pair_t *pair = (tap_dance_pair_t *)user_data; + #ifdef REPEAT_KEY_ENABLE + set_last_keycode(pair->kc1); + #endif register_code16(pair->kc1); } From 2187920fa9b60406a8a33793ef4a81717247b6b2 Mon Sep 17 00:00:00 2001 From: Mheca Date: Sat, 7 Jun 2025 18:07:12 +0200 Subject: [PATCH 2/3] Linting fix --- quantum/process_keycode/process_tap_dance.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/quantum/process_keycode/process_tap_dance.c b/quantum/process_keycode/process_tap_dance.c index b40c3b7f771..514d6655e4c 100644 --- a/quantum/process_keycode/process_tap_dance.c +++ b/quantum/process_keycode/process_tap_dance.c @@ -38,9 +38,9 @@ void tap_dance_pair_on_each_tap(tap_dance_state_t *state, void *user_data) { void tap_dance_pair_finished(tap_dance_state_t *state, void *user_data) { tap_dance_pair_t *pair = (tap_dance_pair_t *)user_data; - #ifdef REPEAT_KEY_ENABLE +#ifdef REPEAT_KEY_ENABLE set_last_keycode(pair->kc1); - #endif +#endif register_code16(pair->kc1); } From eaa72d92cb65b37007dc46cb086cbc008b3574d6 Mon Sep 17 00:00:00 2001 From: Mheca Date: Sat, 19 Jul 2025 21:22:19 +0200 Subject: [PATCH 3/3] Added the fix to kc2 and for kc of tap_dance_dual_role_finished. --- quantum/process_keycode/process_tap_dance.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/quantum/process_keycode/process_tap_dance.c b/quantum/process_keycode/process_tap_dance.c index 514d6655e4c..75732dae8c8 100644 --- a/quantum/process_keycode/process_tap_dance.c +++ b/quantum/process_keycode/process_tap_dance.c @@ -30,6 +30,9 @@ void tap_dance_pair_on_each_tap(tap_dance_state_t *state, void *user_data) { tap_dance_pair_t *pair = (tap_dance_pair_t *)user_data; if (state->count == 2) { +#ifdef REPEAT_KEY_ENABLE + set_last_keycode(pair->kc2); +#endif register_code16(pair->kc2); state->finished = true; } @@ -68,6 +71,9 @@ void tap_dance_dual_role_finished(tap_dance_state_t *state, void *user_data) { tap_dance_dual_role_t *pair = (tap_dance_dual_role_t *)user_data; if (state->count == 1) { +#ifdef REPEAT_KEY_ENABLE + set_last_keycode(pair->kc); +#endif register_code16(pair->kc); } else if (state->count == 2) { pair->layer_function(pair->layer);