diff options
author | lokher <lokher@gmail.com> | 2022-09-13 11:13:00 +0800 |
---|---|---|
committer | lokher <lokher@gmail.com> | 2022-09-13 11:13:00 +0800 |
commit | fe13cedf8c09fa34d5cec4e4c624738095176625 (patch) | |
tree | 818436626d49c7f22f325632b2053edba10d4358 /quantum/rgb_matrix/rgb_matrix.c | |
parent | fa207545a9759c50b9f230eb608d86a9085801d4 (diff) | |
parent | f46379f308783994b8178f95adc686f4b4c3ebd8 (diff) |
merge upstream master
Diffstat (limited to 'quantum/rgb_matrix/rgb_matrix.c')
-rw-r--r-- | quantum/rgb_matrix/rgb_matrix.c | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/quantum/rgb_matrix/rgb_matrix.c b/quantum/rgb_matrix/rgb_matrix.c index 1f9ad47c81..92da08b31c 100644 --- a/quantum/rgb_matrix/rgb_matrix.c +++ b/quantum/rgb_matrix/rgb_matrix.c @@ -254,8 +254,15 @@ void process_rgb_matrix(uint8_t row, uint8_t col, bool pressed) { #endif // RGB_MATRIX_KEYREACTIVE_ENABLED #if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && defined(ENABLE_RGB_MATRIX_TYPING_HEATMAP) - if (rgb_matrix_config.mode == RGB_MATRIX_TYPING_HEATMAP) { - process_rgb_matrix_typing_heatmap(row, col); +# if defined(RGB_MATRIX_KEYRELEASES) + if (!pressed) +# else + if (pressed) +# endif // defined(RGB_MATRIX_KEYRELEASES) + { + if (rgb_matrix_config.mode == RGB_MATRIX_TYPING_HEATMAP) { + process_rgb_matrix_typing_heatmap(row, col); + } } #endif // defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && defined(ENABLE_RGB_MATRIX_TYPING_HEATMAP) } @@ -779,12 +786,22 @@ 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); +} + +void rgb_matrix_set_flags_noeeprom(led_flags_t flags) { + rgb_matrix_set_flags_eeprom_helper(flags, false); } |