M quantum/action.c => quantum/action.c +0 -6
@@ 57,12 57,6 @@ __attribute__((weak)) bool get_retro_tapping(uint16_t keycode, keyrecord_t *reco
__attribute__((weak)) bool pre_process_record_quantum(keyrecord_t *record) { return true; }
-#ifndef TAP_CODE_DELAY
-# define TAP_CODE_DELAY 0
-#endif
-#ifndef TAP_HOLD_CAPS_DELAY
-# define TAP_HOLD_CAPS_DELAY 80
-#endif
/** \brief Called to execute an action.
*
* FIXME: Needs documentation.
M quantum/action.h => quantum/action.h +7 -0
@@ 38,6 38,13 @@ extern "C" {
# endif
#endif
+#ifndef TAP_CODE_DELAY
+# define TAP_CODE_DELAY 0
+#endif
+#ifndef TAP_HOLD_CAPS_DELAY
+# define TAP_HOLD_CAPS_DELAY 80
+#endif
+
/* tapping count and state */
typedef struct {
bool interrupted : 1;
M quantum/process_keycode/process_tap_dance.c => quantum/process_keycode/process_tap_dance.c +2 -0
@@ 44,6 44,7 @@ void qk_tap_dance_pair_finished(qk_tap_dance_state_t *state, void *user_data) {
void qk_tap_dance_pair_reset(qk_tap_dance_state_t *state, void *user_data) {
qk_tap_dance_pair_t *pair = (qk_tap_dance_pair_t *)user_data;
+ wait_ms(TAP_CODE_DELAY);
if (state->count == 1) {
unregister_code16(pair->kc1);
} else if (state->count == 2) {
@@ 74,6 75,7 @@ void qk_tap_dance_dual_role_reset(qk_tap_dance_state_t *state, void *user_data)
qk_tap_dance_dual_role_t *pair = (qk_tap_dance_dual_role_t *)user_data;
if (state->count == 1) {
+ wait_ms(TAP_CODE_DELAY);
unregister_code16(pair->kc);
}
}