#if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS)
bool disable_action_cache = false;
+action_t pressed_actions_cache[MATRIX_ROWS][MATRIX_COLS];
void process_action_nocache(keyrecord_t *record)
{
action_t store_or_get_action(bool pressed, keypos_t key)
{
#if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS)
- static action_t pressed_actions[MATRIX_ROWS][MATRIX_COLS];
-
if (disable_action_cache) {
return layer_switch_get_action(key);
}
if (pressed) {
- pressed_actions[key.row][key.col] = layer_switch_get_action(key);
+ pressed_actions_cache[key.row][key.col] = layer_switch_get_action(key);
}
- return pressed_actions[key.row][key.col];
+ return pressed_actions_cache[key.row][key.col];
#else
return layer_switch_get_action(key);
#endif
/* Utilities for actions. */
#if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS)
extern bool disable_action_cache;
+extern action_t pressed_actions_cache[MATRIX_ROWS][MATRIX_COLS];
#endif
void process_action_nocache(keyrecord_t *record);
void process_action(keyrecord_t *record);