qmk_settings: fix variable delays on avr
This commit is contained in:
@ -110,7 +110,7 @@ if (QS_auto_shift_repeat && !QS_auto_shift_no_auto_repeat) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
wait_ms(QS_tap_code_delay);
|
qs_wait_ms(QS_tap_code_delay);
|
||||||
unregister_code(autoshift_lastkey);
|
unregister_code(autoshift_lastkey);
|
||||||
del_weak_mods(MOD_BIT(KC_LSFT));
|
del_weak_mods(MOD_BIT(KC_LSFT));
|
||||||
} else {
|
} else {
|
||||||
|
@ -203,3 +203,12 @@ extern qmk_settings_t QS;
|
|||||||
#define QS_tap_hold_caps_delay TAP_HOLD_CAPS_DELAY
|
#define QS_tap_hold_caps_delay TAP_HOLD_CAPS_DELAY
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(__AVR__) && defined(QMK_SETTINGS)
|
||||||
|
#include <util/delay.h>
|
||||||
|
static inline void qs_wait_ms(uint16_t timer) {
|
||||||
|
while (timer--) _delay_ms(1);
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
#define qs_wait_ms wait_ms
|
||||||
|
#endif
|
||||||
|
@ -108,7 +108,7 @@ void unregister_code16(uint16_t code) {
|
|||||||
|
|
||||||
void tap_code16(uint16_t code) {
|
void tap_code16(uint16_t code) {
|
||||||
register_code16(code);
|
register_code16(code);
|
||||||
wait_ms(QS_tap_code_delay);
|
qs_wait_ms(QS_tap_code_delay);
|
||||||
unregister_code16(code);
|
unregister_code16(code);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -286,7 +286,7 @@ static void vial_keycode_tap(uint16_t keycode) __attribute__((unused));
|
|||||||
|
|
||||||
static void vial_keycode_tap(uint16_t keycode) {
|
static void vial_keycode_tap(uint16_t keycode) {
|
||||||
vial_keycode_down(keycode);
|
vial_keycode_down(keycode);
|
||||||
wait_ms(QS_tap_code_delay);
|
qs_wait_ms(QS_tap_code_delay);
|
||||||
vial_keycode_up(keycode);
|
vial_keycode_up(keycode);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -425,7 +425,7 @@ static void on_dance_reset(qk_tap_dance_state_t *state, void *user_data) {
|
|||||||
uint8_t index = (uintptr_t)user_data;
|
uint8_t index = (uintptr_t)user_data;
|
||||||
if (dynamic_keymap_get_tap_dance(index, &td_entry) != 0)
|
if (dynamic_keymap_get_tap_dance(index, &td_entry) != 0)
|
||||||
return;
|
return;
|
||||||
wait_ms(QS_tap_code_delay);
|
qs_wait_ms(QS_tap_code_delay);
|
||||||
uint8_t st = dance_state[index];
|
uint8_t st = dance_state[index];
|
||||||
state->count = 0;
|
state->count = 0;
|
||||||
dance_state[index] = 0;
|
dance_state[index] = 0;
|
||||||
|
@ -364,9 +364,9 @@ if (QS_oneshot_tap_toggle > 1) {
|
|||||||
if (tap_count > 0) {
|
if (tap_count > 0) {
|
||||||
dprint("MODS_TAP: Tap: unregister_code\n");
|
dprint("MODS_TAP: Tap: unregister_code\n");
|
||||||
if (action.layer_tap.code == KC_CAPS) {
|
if (action.layer_tap.code == KC_CAPS) {
|
||||||
wait_ms(QS_tap_hold_caps_delay);
|
qs_wait_ms(QS_tap_hold_caps_delay);
|
||||||
} else {
|
} else {
|
||||||
wait_ms(QS_tap_code_delay);
|
qs_wait_ms(QS_tap_code_delay);
|
||||||
}
|
}
|
||||||
unregister_code(action.key.code);
|
unregister_code(action.key.code);
|
||||||
} else {
|
} else {
|
||||||
@ -589,9 +589,9 @@ if (QS_oneshot_tap_toggle > 1) {
|
|||||||
if (tap_count > 0) {
|
if (tap_count > 0) {
|
||||||
dprint("KEYMAP_TAP_KEY: Tap: unregister_code\n");
|
dprint("KEYMAP_TAP_KEY: Tap: unregister_code\n");
|
||||||
if (action.layer_tap.code == KC_CAPS) {
|
if (action.layer_tap.code == KC_CAPS) {
|
||||||
wait_ms(QS_tap_hold_caps_delay);
|
qs_wait_ms(QS_tap_hold_caps_delay);
|
||||||
} else {
|
} else {
|
||||||
wait_ms(QS_tap_code_delay);
|
qs_wait_ms(QS_tap_code_delay);
|
||||||
}
|
}
|
||||||
unregister_code(action.layer_tap.code);
|
unregister_code(action.layer_tap.code);
|
||||||
} else {
|
} else {
|
||||||
@ -670,7 +670,7 @@ if (QS_oneshot_tap_toggle > 1) {
|
|||||||
if (event.pressed) {
|
if (event.pressed) {
|
||||||
register_code(action.swap.code);
|
register_code(action.swap.code);
|
||||||
} else {
|
} else {
|
||||||
wait_ms(QS_tap_code_delay);
|
qs_wait_ms(QS_tap_code_delay);
|
||||||
unregister_code(action.swap.code);
|
unregister_code(action.swap.code);
|
||||||
*record = (keyrecord_t){}; // hack: reset tap mode
|
*record = (keyrecord_t){}; // hack: reset tap mode
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user