123456789101112131415161718192021222324252627282930313233343536373839 |
- // Copyright 2022 QMK
- // SPDX-License-Identifier: GPL-2.0-or-later
- #include "secure.h"
- #include "process_secure.h"
- #include "quantum_keycodes.h"
- bool preprocess_secure(uint16_t keycode, keyrecord_t *record) {
- if (secure_is_unlocking()) {
- if (!record->event.pressed) {
- secure_keypress_event(record->event.key.row, record->event.key.col);
- }
- // Normal keypresses should be disabled until the sequence is completed
- return false;
- }
- return true;
- }
- bool process_secure(uint16_t keycode, keyrecord_t *record) {
- #ifndef SECURE_DISABLE_KEYCODES
- if (!record->event.pressed) {
- if (keycode == SECURE_LOCK) {
- secure_lock();
- return false;
- }
- if (keycode == SECURE_UNLOCK) {
- secure_unlock();
- return false;
- }
- if (keycode == SECURE_TOGGLE) {
- secure_is_locked() ? secure_unlock() : secure_lock();
- return false;
- }
- }
- #endif
- return true;
- }
|