diff options
author | Drashna Jaelre <drashna@live.com> | 2022-07-12 16:36:17 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-13 08:36:17 +0900 |
commit | 764ac89d8db728175996ffb1830895d3b9fd83c8 (patch) | |
tree | ce2e9723be36492896e8407aad742d2e3efe1ed2 | |
parent | 085f0898e038903a677b4270ec0ba6259f66404f (diff) |
Fix issues with RGB Matrix flags (#353)
-rw-r--r-- | keyboards/ergodox_ez/ergodox_ez.c | 12 | ||||
-rw-r--r-- | keyboards/ergodox_ez/ergodox_ez.h | 2 | ||||
-rw-r--r-- | keyboards/moonlander/moonlander.c | 12 | ||||
-rw-r--r-- | keyboards/moonlander/moonlander.h | 2 | ||||
-rw-r--r-- | keyboards/planck/ez/ez.c | 11 | ||||
-rw-r--r-- | keyboards/planck/ez/ez.h | 2 | ||||
-rw-r--r-- | quantum/rgb_matrix/rgb_matrix.c | 7 |
7 files changed, 9 insertions, 39 deletions
diff --git a/keyboards/ergodox_ez/ergodox_ez.c b/keyboards/ergodox_ez/ergodox_ez.c index 8fa038cdda..0432ec79ab 100644 --- a/keyboards/ergodox_ez/ergodox_ez.c +++ b/keyboards/ergodox_ez/ergodox_ez.c @@ -67,14 +67,6 @@ void matrix_init_kb(void) { keyboard_config.raw = eeconfig_read_kb(); ergodox_led_all_set((uint8_t)keyboard_config.led_level * 255 / 4); -#ifdef RGB_MATRIX_ENABLE - if (keyboard_config.rgb_matrix_enable) { - rgb_matrix_set_flags(LED_FLAG_ALL); - } else { - rgb_matrix_set_flags(LED_FLAG_NONE); - } -#endif - ergodox_blink_all_leds(); matrix_init_user(); @@ -376,15 +368,12 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { switch (rgb_matrix_get_flags()) { case LED_FLAG_ALL: { rgb_matrix_set_flags(LED_FLAG_NONE); - keyboard_config.rgb_matrix_enable = false; rgb_matrix_set_color_all(0, 0, 0); } break; default: { rgb_matrix_set_flags(LED_FLAG_ALL); - keyboard_config.rgb_matrix_enable = true; } break; } - eeconfig_update_kb(keyboard_config.raw); } return false; # endif @@ -396,7 +385,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { void eeconfig_init_kb(void) { // EEPROM is getting reset! keyboard_config.raw = 0; keyboard_config.led_level = 4; - keyboard_config.rgb_matrix_enable = true; eeconfig_update_kb(keyboard_config.raw); eeconfig_init_user(); } diff --git a/keyboards/ergodox_ez/ergodox_ez.h b/keyboards/ergodox_ez/ergodox_ez.h index 905995ab17..1ea13070e8 100644 --- a/keyboards/ergodox_ez/ergodox_ez.h +++ b/keyboards/ergodox_ez/ergodox_ez.h @@ -137,7 +137,7 @@ typedef union { struct { uint8_t led_level :3; bool disable_layer_led :1; - bool rgb_matrix_enable :1; + bool placeholder :1; }; } keyboard_config_t; diff --git a/keyboards/moonlander/moonlander.c b/keyboards/moonlander/moonlander.c index 3c8f5b4184..e849bff4e2 100644 --- a/keyboards/moonlander/moonlander.c +++ b/keyboards/moonlander/moonlander.c @@ -407,7 +407,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { keyboard_config.disable_layer_led ^= 1; if (keyboard_config.disable_layer_led) rgb_matrix_set_color_all(0, 0, 0); - eeconfig_update_kb(keyboard_config.raw); } break; case RGB_TOG: @@ -415,15 +414,12 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { switch (rgb_matrix_get_flags()) { case LED_FLAG_ALL: { rgb_matrix_set_flags(LED_FLAG_NONE); - keyboard_config.rgb_matrix_enable = false; rgb_matrix_set_color_all(0, 0, 0); } break; default: { rgb_matrix_set_flags(LED_FLAG_ALL); - keyboard_config.rgb_matrix_enable = true; } break; } - eeconfig_update_kb(keyboard_config.raw); } return false; #endif @@ -439,19 +435,11 @@ void matrix_init_kb(void) { keyboard_config.led_level_res = 0b11; eeconfig_update_kb(keyboard_config.raw); } -#ifdef RGB_MATRIX_ENABLE - if (keyboard_config.rgb_matrix_enable) { - rgb_matrix_set_flags(LED_FLAG_ALL); - } else { - rgb_matrix_set_flags(LED_FLAG_NONE); - } -#endif matrix_init_user(); } void eeconfig_init_kb(void) { // EEPROM is getting reset! keyboard_config.raw = 0; - keyboard_config.rgb_matrix_enable = true; keyboard_config.led_level = true; keyboard_config.led_level_res = 0b11; eeconfig_update_kb(keyboard_config.raw); diff --git a/keyboards/moonlander/moonlander.h b/keyboards/moonlander/moonlander.h index 16c6859613..e2b4c76a11 100644 --- a/keyboards/moonlander/moonlander.h +++ b/keyboards/moonlander/moonlander.h @@ -70,7 +70,7 @@ typedef union { uint32_t raw; struct { bool disable_layer_led :1; - bool rgb_matrix_enable :1; + bool placeholder :1; bool led_level :1; uint8_t led_level_res :2; // DO NOT REMOVE }; diff --git a/keyboards/planck/ez/ez.c b/keyboards/planck/ez/ez.c index 2e74ff860a..5294be9ec0 100644 --- a/keyboards/planck/ez/ez.c +++ b/keyboards/planck/ez/ez.c @@ -208,20 +208,12 @@ void keyboard_pre_init_kb(void) { } // read kb settings from eeprom keyboard_config.raw = eeconfig_read_kb(); -#ifdef RGB_MATRIX_ENABLE - if (keyboard_config.rgb_matrix_enable) { - rgb_matrix_set_flags(LED_FLAG_ALL); - } else { - rgb_matrix_set_flags(LED_FLAG_NONE); - } -#endif led_initialize_hardware(); keyboard_pre_init_user(); } void eeconfig_init_kb(void) { // EEPROM is getting reset! keyboard_config.raw = 0; - keyboard_config.rgb_matrix_enable = true; keyboard_config.led_level = 4; eeconfig_update_kb(keyboard_config.raw); eeconfig_init_user(); @@ -277,17 +269,14 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { switch (rgb_matrix_get_flags()) { case LED_FLAG_ALL: { rgb_matrix_set_flags(LED_FLAG_NONE); - keyboard_config.rgb_matrix_enable = false; rgb_matrix_set_color_all(0, 0, 0); } break; default: { rgb_matrix_set_flags(LED_FLAG_ALL); - keyboard_config.rgb_matrix_enable = true; } break; } - eeconfig_update_kb(keyboard_config.raw); } return false; #endif diff --git a/keyboards/planck/ez/ez.h b/keyboards/planck/ez/ez.h index 9e572d258d..7243477cbf 100644 --- a/keyboards/planck/ez/ez.h +++ b/keyboards/planck/ez/ez.h @@ -78,7 +78,7 @@ typedef union { struct { uint8_t led_level :3; bool disable_layer_led :1; - bool rgb_matrix_enable :1; + bool placeholder :1; }; } keyboard_config_t; diff --git a/quantum/rgb_matrix/rgb_matrix.c b/quantum/rgb_matrix/rgb_matrix.c index f721dfc7f2..141e0a69f5 100644 --- a/quantum/rgb_matrix/rgb_matrix.c +++ b/quantum/rgb_matrix/rgb_matrix.c @@ -724,10 +724,15 @@ void rgb_matrix_decrease_speed(void) { rgb_matrix_decrease_speed_helper(true); } +void rgb_matrix_set_flags_eeprom_helper(led_flags_t flags, bool write_to_eeprom) { + rgb_matrix_config.flags = flags; + eeconfig_flag_rgb_matrix(write_to_eeprom); + dprintf("rgb matrix set speed [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", rgb_matrix_config.flags); +} led_flags_t rgb_matrix_get_flags(void) { return rgb_matrix_config.flags; } void rgb_matrix_set_flags(led_flags_t flags) { - rgb_matrix_config.flags = flags; + rgb_matrix_set_flags_eeprom_helper(flags, true); } |