1
0
Fork 0

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:
Drashna Jael're 2021-03-01 08:57:02 -08:00 committed by GitHub
parent 86f6f68274
commit 0e984b6e7e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 81 additions and 9 deletions

View file

@ -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;

View file

@ -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
}
}

View file

@ -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