diff options
author | Joel Challis <[email protected]> | 2024-11-21 13:02:49 +0000 |
---|---|---|
committer | GitHub <[email protected]> | 2024-11-21 13:02:49 +0000 |
commit | 968a611476c7add787f737be9521d2968d1f4451 (patch) | |
tree | 57038a01ca75e2a33870696a84665d452ce6cc98 /quantum/process_keycode/process_layer_lock.c | |
parent | 65a8a5ff69289a5cb8fce6555b774573e4452a79 (diff) | |
download | qmk_firmware-968a611476c7add787f737be9521d2968d1f4451.tar.gz qmk_firmware-968a611476c7add787f737be9521d2968d1f4451.zip |
Review fixes for layer lock feature (#24627)
Diffstat (limited to 'quantum/process_keycode/process_layer_lock.c')
-rw-r--r-- | quantum/process_keycode/process_layer_lock.c | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/quantum/process_keycode/process_layer_lock.c b/quantum/process_keycode/process_layer_lock.c index 1e36d8844e..6946d3c886 100644 --- a/quantum/process_keycode/process_layer_lock.c +++ b/quantum/process_keycode/process_layer_lock.c @@ -12,14 +12,6 @@ // See the License for the specific language governing permissions and // limitations under the License. -/** - * @file layer_lock.c - * @brief Layer Lock implementation - * - * For full documentation, see - * <https://getreuer.info/posts/keyboards/layer-lock> - */ - #include "layer_lock.h" #include "process_layer_lock.h" #include "quantum_keycodes.h" @@ -27,12 +19,9 @@ // The current lock state. The kth bit is on if layer k is locked. extern layer_state_t locked_layers; -#if defined(LAYER_LOCK_IDLE_TIMEOUT) && LAYER_LOCK_IDLE_TIMEOUT > 0 -extern uint32_t layer_lock_timer; -#endif // Handles an event on an `MO` or `TT` layer switch key. -static bool handle_mo_or_tt(uint8_t layer, keyrecord_t* record) { +static inline bool handle_mo_or_tt(uint8_t layer, keyrecord_t* record) { if (is_layer_locked(layer)) { if (record->event.pressed) { // On press, unlock the layer. layer_lock_invert(layer); @@ -44,9 +33,7 @@ static bool handle_mo_or_tt(uint8_t layer, keyrecord_t* record) { bool process_layer_lock(uint16_t keycode, keyrecord_t* record) { #ifndef NO_ACTION_LAYER -# if defined(LAYER_LOCK_IDLE_TIMEOUT) && LAYER_LOCK_IDLE_TIMEOUT > 0 - layer_lock_timer = timer_read32(); -# endif // LAYER_LOCK_IDLE_TIMEOUT > 0 + layer_lock_activity_trigger(); // The intention is that locked layers remain on. If something outside of // this feature turned any locked layers off, unlock them. |