]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - common/action.c
Added backlight.h, backlight.c
[qmk_firmware.git] / common / action.c
index fddb97c508dbd96865c73ef08bfd68cc1739b1ac..220de0f8a003b65c6530f60ad0997ec0ce9d11f7 100644 (file)
@@ -237,6 +237,16 @@ void process_action(keyrecord_t *record)
         case ACT_LAYER_TAP:
         case ACT_LAYER_TAP_EXT:
             switch (action.layer_tap.code) {
+                case 0xe0 ... 0xef:
+                    /* layer On/Off with modifiers(left only) */
+                    if (event.pressed) {
+                        layer_on(action.layer_tap.val);
+                        register_mods(action.layer_tap.code & 0x0f);
+                    } else {
+                        layer_off(action.layer_tap.val);
+                        unregister_mods(action.layer_tap.code & 0x0f);
+                    }
+                    break;
                 case OP_TAP_TOGGLE:
                     /* tap toggle */
                     if (event.pressed) {
@@ -338,7 +348,7 @@ void register_code(uint8_t code)
         return;
     }
 
-#ifdef LOCKING_SUPPORT_ENABLE
+#ifdef LOCKING_SUPPORT_ENABLE    
     else if (KC_LOCKING_CAPS == code) {
 #ifdef LOCKING_RESYNC_ENABLE
         // Resync: ignore if caps lock already is on
@@ -499,7 +509,7 @@ void clear_keyboard_but_mods(void)
 #endif
 }
 
-bool is_tap_key(key_t key)
+bool is_tap_key(keypos_t key)
 {
     action_t action = layer_switch_get_action(key);