Compare commits

...
2 Commits
Author SHA1 Message Date
rootiest 66c73eef89 Merge pull request 'fix(q5_max): switch fallback combo to LCK_BASE for reliable layer recovery' (#21) from fix/combo-key into main
Reviewed-on: #21
2026-04-14 02:09:56 +00:00
rootiest c498d5025c fix(q5_max): ensure fallback combo overrides layer locks
Change the fallback combo's action from TO(BASE) to LCK_BASE.
Since LCK_BASE explicitly clears the locked_layers bitmask,
it ensures that the keyboard actually returns to the BASE
layer even if a layer was previously locked.

The previous TO(BASE) action only updated the temporary layer
state, which was immediately overwritten by the persistent
locked_layers bitmask in layer_state_set_user().
2026-04-13 21:40:20 -04:00
@@ -228,12 +228,12 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
// clang-format on
// Combos -----------------------------------------------------------------
// COMM + DOT + SLSH → TO(BASE): emergency fallback to base layer.
// COMM + DOT + SLSH → LCK_BASE: emergency fallback to base layer.
// COMBO_ONLY_FROM_LAYER 0 (config.h) ensures these keycodes are always
// resolved from BASE so the combo fires regardless of the active layer.
const uint16_t PROGMEM fallback_combo[] = {KC_COMM, KC_DOT, KC_SLSH, COMBO_END};
combo_t key_combos[] = {
COMBO(fallback_combo, TO(BASE)),
COMBO(fallback_combo, LCK_BASE),
};
// Re-assert locked layers whenever QMK modifies layer state (e.g. TT release).