]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Update Drashna user space code to support keyboard_init functions (#5138)
authorDrashna Jaelre <drashna@live.com>
Sun, 17 Feb 2019 02:28:04 +0000 (18:28 -0800)
committerMechMerlin <30334081+mechmerlin@users.noreply.github.com>
Sun, 17 Feb 2019 02:28:04 +0000 (18:28 -0800)
* Update code to support keyboard_init functions

* Get Minor tweaks

layouts/community/ergodox/drashna_glow/rules.mk
users/drashna/config.h
users/drashna/drashna.c
users/drashna/rgb_stuff.c
users/drashna/rgb_stuff.h

index e152fa01f0d547dc4453c3047e6f04723ffc292d..5cb47dae4e37a613dafc5dce5d34964cce39a2c9 100644 (file)
@@ -6,4 +6,5 @@ SRC += ../drashna/keymap.c
 ifneq (,$(findstring ergodox_ez,$(KEYBOARD)))
   RGBLIGHT_ENABLE = no
   RGB_MATRIX_ENABLE = yes
+  TAP_DANCE_ENABLE  = no
 endif
index 20e58fd0bb547aa0c65a8878393f38be11cccd6e..2e125d1e4ef042639e94b393201a1a504fdd8bc2 100644 (file)
@@ -55,7 +55,7 @@
 // and when this option isn't enabled, z rapidly followed by x
 // actually sends Ctrl-x. That's bad.)
 #define IGNORE_MOD_TAP_INTERRUPT
-// #define PERMISSIVE_HOLD
+#undef PERMISSIVE_HOLD
 //#define TAPPING_FORCE_HOLD
 //#define RETRO_TAPPING
 
index 222824837981d4fa6632060d6d332bc2c2f72e3f..8019f26676f2ade937eac21800ace54a962999a1 100644 (file)
@@ -122,11 +122,17 @@ void matrix_init_user(void) {
     get_unicode_input_mode();
   #endif //UNICODE_ENABLE
   matrix_init_keymap();
-  #ifdef RGBLIGHT_ENABLE
-    matrix_init_rgb();
-  #endif //RGBLIGHT_ENABLE
 }
 
+__attribute__((weak))
+void keyboard_post_init_keymap(void){ }
+
+void keyboard_post_init_user(void){
+#ifdef RGBLIGHT_ENABLE
+  keyboard_post_init_rgb();
+#endif
+  keyboard_post_init_keymap();
+}
 
 __attribute__ ((weak))
 void shutdown_keymap(void) {}
@@ -208,9 +214,11 @@ uint32_t default_layer_state_set_keymap (uint32_t state) {
 // Runs state check and changes underglow color and animation
 uint32_t default_layer_state_set_user(uint32_t state) {
   state = default_layer_state_set_keymap(state);
+#if 0
 #ifdef RGBLIGHT_ENABLE
   state = default_layer_state_set_rgb(state);
 #endif // RGBLIGHT_ENABLE
+#endif
   return state;
 }
 
index 37076ce99044698e3044d16706bd58aac93f359c..7eaa7e94918b6b846f3f3432f6106a365da87a94 100644 (file)
@@ -243,25 +243,25 @@ bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) {
 
 
 
- void matrix_init_rgb(void) {
+void keyboard_post_init_rgb(void) {
 
-// #ifdef RGBLIGHT_ENABLE
-//   if (userspace_config.rgb_layer_change) {
-//     rgblight_enable_noeeprom();
-//     switch (biton32(eeconfig_read_default_layer())) {
-//       case _COLEMAK:
-//         rgblight_sethsv_noeeprom_magenta(); break;
-//       case _DVORAK:
-//         rgblight_sethsv_noeeprom_springgreen(); break;
-//       case _WORKMAN:
-//         rgblight_sethsv_noeeprom_goldenrod(); break;
-//       default:
-//         rgblight_sethsv_noeeprom_cyan(); break;
-//     }
-//     rgblight_mode(RGBLIGHT_MODE_STATIC_LIGHT);
-//   }
-// #endif
- }
+#ifdef RGBLIGHT_ENABLE
+  if (userspace_config.rgb_layer_change) {
+    rgblight_enable_noeeprom();
+    switch (biton32(eeconfig_read_default_layer())) {
+      case _COLEMAK:
+        rgblight_sethsv_noeeprom_magenta(); break;
+      case _DVORAK:
+        rgblight_sethsv_noeeprom_springgreen(); break;
+      case _WORKMAN:
+        rgblight_sethsv_noeeprom_goldenrod(); break;
+      default:
+        rgblight_sethsv_noeeprom_cyan(); break;
+    }
+    rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT);
+  }
+#endif
+}
 
 void matrix_scan_rgb(void) {
 #ifdef RGBLIGHT_TWINKLE
@@ -336,6 +336,7 @@ uint32_t layer_state_set_rgb(uint32_t state) {
   return state;
 }
 
+#if 0
 uint32_t default_layer_state_set_rgb(uint32_t state) {
 #ifdef RGBLIGHT_ENABLE
   if (userspace_config.rgb_layer_change) {
@@ -371,3 +372,4 @@ uint32_t default_layer_state_set_rgb(uint32_t state) {
 #endif // RGBLIGHT_ENABLE
   return state;
 }
+#endif
index 065bda9f9ebd1056a1efa24b05fd39b6e38515b4..886f20ffcca10eb71afd4e0c06d025c122b9b5bf 100644 (file)
@@ -13,7 +13,7 @@ typedef struct {
 
 bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record);
 void scan_rgblight_fadeout(void);
-void matrix_init_rgb(void);
+void keyboard_post_init_rgb(void);
 void matrix_scan_rgb(void);
 uint32_t layer_state_set_rgb(uint32_t state);
 uint32_t default_layer_state_set_rgb(uint32_t state);