From 265fd6478f634895cb22488c42aa9eab50788cd8 Mon Sep 17 00:00:00 2001 From: Sébastien Dailly Date: Fri, 12 Apr 2024 22:44:05 +0200 Subject: Update qmk --- .../sofle_choc/keymaps/custom/quad_tapdance.c | 57 ++++------------------ 1 file changed, 10 insertions(+), 47 deletions(-) (limited to 'qmk/keyboards/sofle_choc/keymaps/custom/quad_tapdance.c') diff --git a/qmk/keyboards/sofle_choc/keymaps/custom/quad_tapdance.c b/qmk/keyboards/sofle_choc/keymaps/custom/quad_tapdance.c index f0a5dbb..ab27f82 100644 --- a/qmk/keyboards/sofle_choc/keymaps/custom/quad_tapdance.c +++ b/qmk/keyboards/sofle_choc/keymaps/custom/quad_tapdance.c @@ -77,10 +77,16 @@ static td_tap_t w_tap_state = { void w_finished(tap_dance_state_t *state, void *user_data) { w_tap_state.state = cur_dance(state); switch (w_tap_state.state) { - case TD_SINGLE_TAP: register_code(BP_W); break; - case TD_SINGLE_HOLD: register_code(KC_RIGHT_SHIFT); break; - case TD_DOUBLE_TAP: caps_word_on(); break; - case TD_DOUBLE_SINGLE_TAP: tap_code(BP_W); register_code(BP_W); break; + case TD_SINGLE_TAP: + register_code(BP_W); break; + case TD_DOUBLE_TAP: + case TD_DOUBLE_SINGLE_TAP: + caps_word_on(); + break; + case TD_SINGLE_HOLD: + case TD_DOUBLE_HOLD: + register_code(KC_RIGHT_SHIFT); + break; default: break; } } @@ -131,48 +137,6 @@ void ql_reset(tap_dance_state_t *state, void *user_data) { ql_tap_state.state = TD_NONE; } -// -// Definiton for the key L_SHIFT. -// The main usage of the key is to activate the LShift when hold. But the key -// can also be used to active the CAPSLOCK mode. -// -// -static td_tap_t lshift_tap_state = { - .is_press_action = true, - .state = TD_NONE -}; - -// Functions that control what our tap dance key does -void lshift_finished(tap_dance_state_t *state, void *user_data) { - lshift_tap_state.state = cur_dance(state); - switch (lshift_tap_state.state) { - // Remove the layer with a single tap, this way I always have a key to remove the - // the layer, without knowing the previous state I had. - case TD_SINGLE_HOLD: - register_code(KC_LEFT_SHIFT); - break; - case TD_SINGLE_TAP: - if (host_keyboard_led_state().caps_lock) - register_code(KC_CAPS_LOCK); - break; - default: break; - } -} - -void lshift_reset(tap_dance_state_t *state, void *user_data) { - switch (lshift_tap_state.state) { - case TD_SINGLE_HOLD: - unregister_code(KC_LEFT_SHIFT); - break; - case TD_SINGLE_TAP: - if (host_keyboard_led_state().caps_lock) - unregister_code(KC_CAPS_LOCK); - break; - default: break; - } - lshift_tap_state.state = TD_NONE; -} - // // Declare the tapdance table here. // @@ -181,7 +145,6 @@ tap_dance_action_t tap_dance_actions[] = { [TD_PRC] = ACTION_TAP_DANCE_DOUBLE(BP_EQL, BP_PERC), [TD_W_CAPSLOCK] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, w_finished, w_reset), [TD_LAYER_SYMB] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, ql_finished, ql_reset), - [TD_LSFT] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, lshift_finished, lshift_reset), [TD_EE] = ACTION_TAP_DANCE_DOUBLE(BP_COMM, BP_EGRV), }; -- cgit v1.2.3