Add ability to toggle One Shot functionality (#4198)
Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: Ryan <fauxpark@gmail.com>
This commit is contained in:
@@ -37,6 +37,7 @@ typedef union {
|
||||
bool nkro : 1;
|
||||
bool swap_lctl_lgui : 1;
|
||||
bool swap_rctl_rgui : 1;
|
||||
bool oneshot_disable : 1;
|
||||
};
|
||||
} keymap_config_t;
|
||||
|
||||
|
@@ -318,6 +318,17 @@ bool process_record_quantum(keyrecord_t *record) {
|
||||
case OUT_BT:
|
||||
set_output(OUTPUT_BLUETOOTH);
|
||||
return false;
|
||||
#endif
|
||||
#ifndef NO_ACTION_ONESHOT
|
||||
case ONESHOT_TOGGLE:
|
||||
oneshot_toggle();
|
||||
break;
|
||||
case ONESHOT_ENABLE:
|
||||
oneshot_enable();
|
||||
break;
|
||||
case ONESHOT_DISABLE:
|
||||
oneshot_disable();
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
@@ -578,6 +578,10 @@ enum quantum_keycodes {
|
||||
|
||||
#endif
|
||||
|
||||
ONESHOT_ENABLE,
|
||||
ONESHOT_DISABLE,
|
||||
ONESHOT_TOGGLE,
|
||||
|
||||
// always leave at the end
|
||||
SAFE_RANGE
|
||||
};
|
||||
@@ -885,3 +889,8 @@ enum quantum_keycodes {
|
||||
#define DM_RSTP DYN_REC_STOP
|
||||
#define DM_PLY1 DYN_MACRO_PLAY1
|
||||
#define DM_PLY2 DYN_MACRO_PLAY2
|
||||
|
||||
// One Shot toggle
|
||||
#define OS_TOGG ONESHOT_TOGGLE
|
||||
#define OS_ON ONESHOT_ENABLE
|
||||
#define OS_OFF ONESHOT_DISABLE
|
||||
|
Reference in New Issue
Block a user