]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - quantum/keymap_common.c
Lets split eh (#3120)
[qmk_firmware.git] / quantum / keymap_common.c
index 8b09f93fced6815f6ca4107535022ed92f2f2665..50af15d62696e9172a7c1dc023a4cd34a85ecaef 100644 (file)
@@ -29,6 +29,10 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #include "backlight.h"
 #include "quantum.h"
 
+#ifdef SPLIT_KEYBOARD
+    #include "split_flags.h"
+#endif
+
 #ifdef MIDI_ENABLE
        #include "process_midi.h"
 #endif
@@ -122,6 +126,11 @@ action_t action_for_key(uint8_t layer, keypos_t key)
         case QK_LAYER_TAP_TOGGLE ... QK_LAYER_TAP_TOGGLE_MAX:
             action.code = ACTION_LAYER_TAP_TOGGLE(keycode & 0xFF);
             break;
+        case QK_LAYER_MOD ... QK_LAYER_MOD_MAX:
+            mod = keycode & 0xF;
+            action_layer = (keycode >> 4) & 0xF;
+            action.code = ACTION_LAYER_MODS(action_layer, mod);
+            break;
         case QK_MOD_TAP ... QK_MOD_TAP_MAX:
             mod = mod_config((keycode >> 0x8) & 0x1F);
             action.code = ACTION_MODS_TAP_KEY(mod, keycode & 0xFF);
@@ -129,21 +138,39 @@ action_t action_for_key(uint8_t layer, keypos_t key)
     #ifdef BACKLIGHT_ENABLE
         case BL_ON:
             action.code = ACTION_BACKLIGHT_ON();
+            #ifdef SPLIT_KEYBOARD
+                BACKLIT_DIRTY = true;
+            #endif
             break;
         case BL_OFF:
             action.code = ACTION_BACKLIGHT_OFF();
+            #ifdef SPLIT_KEYBOARD
+                BACKLIT_DIRTY = true;
+            #endif
             break;
         case BL_DEC:
             action.code = ACTION_BACKLIGHT_DECREASE();
+            #ifdef SPLIT_KEYBOARD
+                BACKLIT_DIRTY = true;
+            #endif
             break;
         case BL_INC:
             action.code = ACTION_BACKLIGHT_INCREASE();
+            #ifdef SPLIT_KEYBOARD
+                BACKLIT_DIRTY = true;
+            #endif
             break;
         case BL_TOGG:
             action.code = ACTION_BACKLIGHT_TOGGLE();
+            #ifdef SPLIT_KEYBOARD
+                BACKLIT_DIRTY = true;
+            #endif
             break;
         case BL_STEP:
             action.code = ACTION_BACKLIGHT_STEP();
+            #ifdef SPLIT_KEYBOARD
+                BACKLIT_DIRTY = true;
+            #endif
             break;
     #endif
     #ifdef SWAP_HANDS_ENABLE