summaryrefslogtreecommitdiff
path: root/users/edvorakjp/edvorakjp_tap_dance.c
diff options
context:
space:
mode:
Diffstat (limited to 'users/edvorakjp/edvorakjp_tap_dance.c')
-rw-r--r--users/edvorakjp/edvorakjp_tap_dance.c78
1 files changed, 0 insertions, 78 deletions
diff --git a/users/edvorakjp/edvorakjp_tap_dance.c b/users/edvorakjp/edvorakjp_tap_dance.c
deleted file mode 100644
index d2c9f2b0e9..0000000000
--- a/users/edvorakjp/edvorakjp_tap_dance.c
+++ /dev/null
@@ -1,78 +0,0 @@
-#include "edvorakjp.h"
-#include "process_keycode/process_tap_dance.h"
-
-enum tap_state {
- NONE = 0,
- SINGLE_TAP = 1,
- DOUBLE_TAP = 2,
- HOLD,
-};
-
-typedef struct {
- uint8_t lower;
- uint8_t raise;
-} td_status_t;
-static td_status_t td_status = {NONE, NONE};
-
-uint8_t cur_dance(tap_dance_state_t *state) {
- if (state->interrupted || !state->pressed) {
- return state->count == 1 ? SINGLE_TAP : DOUBLE_TAP;
- } else {
- return HOLD;
- }
-}
-
-void td_lower_finished(tap_dance_state_t *state, void *user_data) {
- td_status.lower = cur_dance(state);
- switch (td_status.lower) {
- case SINGLE_TAP:
- set_japanese_mode(false);
- break;
- case DOUBLE_TAP:
- set_japanese_mode(false);
- register_code(KC_ESC);
- break;
- }
- layer_on(L_EDVORAKJP_LOWER);
-}
-
-void td_lower_reset(tap_dance_state_t *state, void *user_data) {
- switch (td_status.lower) {
- case DOUBLE_TAP:
- unregister_code(KC_ESC);
- break;
- }
- layer_off(L_EDVORAKJP_LOWER);
- td_status.lower = NONE;
-}
-
-void td_raise_finished(tap_dance_state_t *state, void *user_data) {
- td_status.raise = cur_dance(state);
- switch (td_status.raise) {
- case DOUBLE_TAP:
- // same as single
- case SINGLE_TAP:
- set_japanese_mode(true);
- break;
- }
- layer_on(L_EDVORAKJP_RAISE);
-}
-
-void td_raise_reset(tap_dance_state_t *state, void *user_data) {
- layer_off(L_EDVORAKJP_RAISE);
- td_status.raise = NONE;
-}
-
-tap_dance_action_t tap_dance_actions[] = {
- [TD_EDVORAKJP_LOWER] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_lower_finished, td_lower_reset),
- [TD_EDVORAKJP_RAISE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, td_raise_finished, td_raise_reset),
-};
-
-uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case QK_TAP_DANCE ... QK_TAP_DANCE_MAX:
- return 150;
- default:
- return TAPPING_TERM;
- }
-}