|
|
@ -54,7 +54,7 @@ int8_t get_oneshot_locked_mods(void) { return oneshot_locked_mods; } |
|
|
|
void set_oneshot_locked_mods(int8_t mods) { oneshot_locked_mods = mods; } |
|
|
|
void clear_oneshot_locked_mods(void) { oneshot_locked_mods = 0; } |
|
|
|
#if (defined(ONESHOT_TIMEOUT) && (ONESHOT_TIMEOUT > 0)) |
|
|
|
static int16_t oneshot_time = 0; |
|
|
|
static uint16_t oneshot_time = 0; |
|
|
|
bool has_oneshot_mods_timed_out(void) { |
|
|
|
return TIMER_DIFF_16(timer_read(), oneshot_time) >= ONESHOT_TIMEOUT; |
|
|
|
} |
|
|
@ -79,7 +79,7 @@ inline uint8_t get_oneshot_layer(void) { return oneshot_layer_data >> 3; } |
|
|
|
inline uint8_t get_oneshot_layer_state(void) { return oneshot_layer_data & 0b111; } |
|
|
|
|
|
|
|
#if (defined(ONESHOT_TIMEOUT) && (ONESHOT_TIMEOUT > 0)) |
|
|
|
static int16_t oneshot_layer_time = 0; |
|
|
|
static uint16_t oneshot_layer_time = 0; |
|
|
|
inline bool has_oneshot_layer_timed_out() { |
|
|
|
return TIMER_DIFF_16(timer_read(), oneshot_layer_time) >= ONESHOT_TIMEOUT && |
|
|
|
!(get_oneshot_layer_state() & ONESHOT_TOGGLED); |
|
|
|