mirror of
https://github.com/nalf3in/vial-qmk.git
synced 2025-12-22 03:30:03 +00:00
qmk_settings: add flow tap
This commit is contained in:
@@ -26,7 +26,7 @@ ifeq ($(strip $(QMK_SETTINGS)), yes)
|
||||
OPT_DEFS += -DQMK_SETTINGS \
|
||||
-DAUTO_SHIFT_NO_SETUP -DAUTO_SHIFT_REPEAT_PER_KEY -DAUTO_SHIFT_NO_AUTO_REPEAT_PER_KEY \
|
||||
-DPERMISSIVE_HOLD_PER_KEY -DHOLD_ON_OTHER_KEY_PRESS_PER_KEY -DQUICK_TAP_TERM_PER_KEY -DRETRO_TAPPING_PER_KEY \
|
||||
-DCOMBO_TERM_PER_COMBO -DCHORDAL_HOLD
|
||||
-DCOMBO_TERM_PER_COMBO -DCHORDAL_HOLD -DFLOW_TAP_TERM=321
|
||||
endif
|
||||
|
||||
# Generate Vial layout definition header from JSON
|
||||
|
||||
@@ -71,6 +71,7 @@ static const qmk_settings_proto_t protos[] PROGMEM = {
|
||||
DECLARE_STATIC_BITSETTING(24, tapping_v2, QS_tapping_retro_tapping_bit),
|
||||
DECLARE_STATIC_SETTING(25, quick_tap_term),
|
||||
DECLARE_STATIC_BITSETTING(26, tapping_v2, QS_tapping_chordal_hold_bit),
|
||||
DECLARE_STATIC_SETTING(27, flow_tap_term),
|
||||
};
|
||||
|
||||
static void eeprom_settings_load(void) {
|
||||
@@ -212,6 +213,7 @@ void qmk_settings_reset(void) {
|
||||
QS.tap_code_delay = TAP_CODE_DELAY;
|
||||
QS.tap_hold_caps_delay = TAP_HOLD_CAPS_DELAY;
|
||||
QS.tapping_toggle = TAPPING_TOGGLE;
|
||||
QS.flow_tap_term = 0;
|
||||
|
||||
eeprom_settings_save();
|
||||
|
||||
@@ -336,3 +338,10 @@ bool get_chordal_hold(uint16_t tap_hold_keycode, keyrecord_t* tap_hold_record,
|
||||
return get_chordal_hold_default(tap_hold_record, other_record);
|
||||
return true;
|
||||
}
|
||||
|
||||
uint16_t get_flow_tap_term(uint16_t keycode, keyrecord_t *record, uint16_t prev_keycode) {
|
||||
if (is_flow_tap_key(keycode) && is_flow_tap_key(prev_keycode)) {
|
||||
return QS.flow_tap_term;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -124,8 +124,9 @@ typedef struct {
|
||||
uint8_t tapping_toggle;
|
||||
uint8_t unused;
|
||||
uint16_t quick_tap_term;
|
||||
uint16_t flow_tap_term;
|
||||
} qmk_settings_t;
|
||||
_Static_assert(sizeof(qmk_settings_t) == 38, "unexpected size of the qmk_settings_t structure");
|
||||
_Static_assert(sizeof(qmk_settings_t) == 40, "unexpected size of the qmk_settings_t structure");
|
||||
|
||||
struct qmk_settings_proto_t;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user