From a042a8266a92fbc59a6cf66c71ef0d5d12d04e27 Mon Sep 17 00:00:00 2001 From: bluepython508 <16466646+bluepython508@users.noreply.github.com> Date: Sun, 19 May 2024 21:12:32 +0100 Subject: [PATCH] Use esc as a lock-ending key --- keyboards/splitkb/kyria/rev3/keymaps/bluepython508/keymap.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/splitkb/kyria/rev3/keymaps/bluepython508/keymap.c b/keyboards/splitkb/kyria/rev3/keymaps/bluepython508/keymap.c index da2e521..5167871 100644 --- a/keyboards/splitkb/kyria/rev3/keymaps/bluepython508/keymap.c +++ b/keyboards/splitkb/kyria/rev3/keymaps/bluepython508/keymap.c @@ -134,8 +134,8 @@ bool is_oneshot_ignored_key(uint16_t keycode) { } } -bool is_oneshot_cancel_key(uint16_t keycode) { - return keycode == KC_NO; +bool is_oneshot_cancel_key(uint16_t keycode, oneshot_mode_t mode) { + return keycode == KC_NO || (keycode == KC_ESCAPE && mode == os_locked); } // Based on @@ -183,7 +183,7 @@ void update_oneshot(oneshot_state_t *state, uint16_t keycode, keyrecord_t *recor } } else { if (record->event.pressed) { - if (is_oneshot_cancel_key(keycode) && state->mode != os_up_unqueued) { + if (is_oneshot_cancel_key(keycode, state->mode) && state->mode != os_up_unqueued) { // Cancel oneshot on designated cancel keydown. state->mode = os_up_unqueued; unregister_code(state->mod);