aboutsummaryrefslogtreecommitdiff
path: root/qmk/keyboards/sofle_choc/keymaps/custom/lighting.c
diff options
context:
space:
mode:
Diffstat (limited to 'qmk/keyboards/sofle_choc/keymaps/custom/lighting.c')
-rw-r--r--qmk/keyboards/sofle_choc/keymaps/custom/lighting.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/qmk/keyboards/sofle_choc/keymaps/custom/lighting.c b/qmk/keyboards/sofle_choc/keymaps/custom/lighting.c
index 525d0c4..9e4001d 100644
--- a/qmk/keyboards/sofle_choc/keymaps/custom/lighting.c
+++ b/qmk/keyboards/sofle_choc/keymaps/custom/lighting.c
@@ -25,6 +25,11 @@ void lighting_init(void) {
static uint8_t last_flags;
+static bool one_shot_alt_flag = 0;
+
+void oneshot_mods_changed_lighting(uint8_t mods) {
+ one_shot_alt_flag = mods & MOD_MASK_ALT;
+}
void housekeeping_task_lighting(void) {
@@ -46,11 +51,11 @@ void housekeeping_task_lighting(void) {
flags |= 0b001;
counter += 1;
}
- if (get_mods() & MOD_MASK_ALT) {
+ if (one_shot_alt_flag || (get_mods() & MOD_MASK_ALT)) {
flags |= 0b010;
counter += 1;
}
- if (get_mods() & MOD_MASK_SHIFT) {
+ if ((get_mods() & MOD_MASK_SHIFT) || host_keyboard_led_state().caps_lock) {
flags |= 0b100;
counter += 1;
}