summaryrefslogtreecommitdiffstats
path: root/quantum/process_keycode/process_tap_dance.c
diff options
context:
space:
mode:
Diffstat (limited to 'quantum/process_keycode/process_tap_dance.c')
-rw-r--r--quantum/process_keycode/process_tap_dance.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/quantum/process_keycode/process_tap_dance.c b/quantum/process_keycode/process_tap_dance.c
index 94dd17c2f..833780691 100644
--- a/quantum/process_keycode/process_tap_dance.c
+++ b/quantum/process_keycode/process_tap_dance.c
@@ -16,7 +16,9 @@
#include "quantum.h"
#include "action_tapping.h"
+#ifndef NO_ACTION_ONESHOT
uint8_t get_oneshot_mods(void);
+#endif
static uint16_t last_td;
static int8_t highest_td = -1;
@@ -146,7 +148,11 @@ bool process_tap_dance(uint16_t keycode, keyrecord_t *record) {
action->state.keycode = keycode;
action->state.count++;
action->state.timer = timer_read();
+#ifndef NO_ACTION_ONESHOT
action->state.oneshot_mods = get_oneshot_mods();
+#else
+ action->state.oneshot_mods = 0;
+#endif
action->state.weak_mods = get_mods();
action->state.weak_mods |= get_weak_mods();
process_tap_dance_action_on_each_tap (action);