]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - users/konstantin/konstantin.c
Make toggle_numpad a nested function in process_record_user
[qmk_firmware.git] / users / konstantin / konstantin.c
index bf92a503e6e2d9e1071f14118589f0fec4e93a09..a567d9166fd174b20f82a5e2685ea6c771e82e55 100644 (file)
@@ -1,15 +1,39 @@
 #include "konstantin.h"
 
-#ifdef LAYER_NUMPAD
-static void toggle_numpad(void) {
-  layer_invert(L_NUMPAD);
-  bool numpad_on = IS_LAYER_ON(L_NUMPAD);
-  bool num_lock_on = IS_HOST_LED_ON(USB_LED_NUM_LOCK);
-  if (num_lock_on != numpad_on) {
-    tap_code(KC_NLCK); // Toggle Num Lock to match layer state
-  }
+__attribute__((weak))
+void keyboard_pre_init_keymap(void) {}
+
+void keyboard_pre_init_user(void) {
+  keyboard_pre_init_keymap();
+}
+
+__attribute__((weak))
+void eeconfig_init_keymap(void) {}
+
+void eeconfig_init_user(void) {
+  eeconfig_init_keymap();
+}
+
+__attribute__((weak))
+void matrix_init_keymap(void) {}
+
+void matrix_init_user(void) {
+  matrix_init_keymap();
+}
+
+__attribute__((weak))
+void keyboard_post_init_keymap(void) {}
+
+void keyboard_post_init_user(void) {
+  keyboard_post_init_keymap();
+}
+
+__attribute__((weak))
+void matrix_scan_keymap(void) {}
+
+void matrix_scan_user(void) {
+  matrix_scan_keymap();
 }
-#endif
 
 __attribute__((weak))
 bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
@@ -21,6 +45,16 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
     return false;
   }
 
+#ifdef LAYER_NUMPAD
+  void toggle_numpad(void) {
+    layer_invert(L_NUMPAD);
+    bool numpad = IS_LAYER_ON(L_NUMPAD), num_lock = IS_HOST_LED_ON(USB_LED_NUM_LOCK);
+    if (num_lock != numpad) {
+      tap_code(KC_NLCK);  // Toggle Num Lock to match layer state
+    }
+  }
+#endif
+
   switch (keycode) {
   case CLEAR:
     if (record->event.pressed) {
@@ -30,13 +64,13 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 
   case DST_P_R:
     (record->event.pressed ? register_code16 : unregister_code16)(
-      (get_mods() & MOD_MASK_CTRL) ? DST_RMV : DST_PRV
+      (get_mods() & DST_MOD_MASK) ? DST_REM : DST_PRV
     );
     return false;
 
   case DST_N_A:
     (record->event.pressed ? register_code16 : unregister_code16)(
-      (get_mods() & MOD_MASK_CTRL) ? DST_ADD : DST_NXT
+      (get_mods() & DST_MOD_MASK) ? DST_ADD : DST_NXT
     );
     return false;
 
@@ -45,7 +79,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
 
   case FN_FNLK:
     if (record->event.pressed && record->tap.count == TAPPING_TOGGLE) {
-      fn_lock = !IS_LAYER_ON(L_FN); // Fn layer will be toggled after this
+      fn_lock = !IS_LAYER_ON(L_FN);  // Fn layer will be toggled after this
     }
     return true;
 #endif
@@ -88,3 +122,38 @@ uint32_t layer_state_set_keymap(uint32_t state) {
 uint32_t layer_state_set_user(uint32_t state) {
   return layer_state_set_keymap(state);
 }
+
+__attribute__((weak))
+void led_set_keymap(uint8_t usb_led) {}
+
+void led_set_user(uint8_t usb_led) {
+  led_set_keymap(usb_led);
+}
+
+__attribute__((weak))
+void suspend_power_down_keymap(void) {}
+
+void suspend_power_down_user(void) {
+  suspend_power_down_keymap();
+}
+
+__attribute__((weak))
+void suspend_wakeup_init_keymap(void) {}
+
+void suspend_wakeup_init_user(void) {
+  suspend_wakeup_init_keymap();
+}
+
+__attribute__((weak))
+void startup_keymap(void) {}
+
+void startup_user(void) {  // Currently not called anywhere
+  startup_keymap();
+}
+
+__attribute__((weak))
+void shutdown_keymap(void) {}
+
+void shutdown_user(void) {
+  shutdown_keymap();
+}