Fix caps word + autoshift (#351)
This commit is contained in:
@@ -123,7 +123,12 @@ bool get_autoshift_shift_state(uint16_t keycode) {
|
||||
/** \brief Restores the shift key if it was cancelled by Auto Shift */
|
||||
static void autoshift_flush_shift(void) {
|
||||
autoshift_flags.holding_shift = false;
|
||||
del_weak_mods(MOD_BIT(KC_LSFT));
|
||||
# ifdef CAPS_WORD_ENABLE
|
||||
if (!is_caps_word_on())
|
||||
# endif
|
||||
{
|
||||
del_weak_mods(MOD_BIT(KC_LSFT));
|
||||
}
|
||||
if (autoshift_flags.cancelling_lshift) {
|
||||
autoshift_flags.cancelling_lshift = false;
|
||||
add_mods(MOD_BIT(KC_LSFT));
|
||||
|
||||
@@ -131,7 +131,11 @@ bool process_caps_word(uint16_t keycode, keyrecord_t* record) {
|
||||
#endif // SWAP_HANDS_ENABLE
|
||||
}
|
||||
|
||||
#ifdef AUTO_SHIFT_ENABLE
|
||||
del_weak_mods(get_autoshift_state() ? ~MOD_BIT(KC_LSFT) : 0xff);
|
||||
#else
|
||||
clear_weak_mods();
|
||||
#endif
|
||||
if (caps_word_press_user(keycode)) {
|
||||
send_keyboard_report();
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user