aboutsummaryrefslogtreecommitdiff
path: root/quantum/rgb_matrix.c
diff options
context:
space:
mode:
authorXScorpion2 <rcalt2vt@gmail.com>2021-02-15 18:30:33 -0600
committerGitHub <noreply@github.com>2021-02-16 11:30:33 +1100
commitd1806a26e4ad75fa0e0405283803eba22c1a49ba (patch)
tree25bf2750e9770781cff373114bd44736463a91f1 /quantum/rgb_matrix.c
parent1bc8a6e5d49861b268f9274a8686a2640e36e0b5 (diff)
downloadqmk_firmware-d1806a26e4ad75fa0e0405283803eba22c1a49ba.tar.gz
qmk_firmware-d1806a26e4ad75fa0e0405283803eba22c1a49ba.zip
Split transport mirror (#11046)
* Split transport mirror support * Updated RGB Matrix to respond to electrical events instead of key events * split matrix slave fix
Diffstat (limited to 'quantum/rgb_matrix.c')
-rw-r--r--quantum/rgb_matrix.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/quantum/rgb_matrix.c b/quantum/rgb_matrix.c
index a945df68e..ec17b4d72 100644
--- a/quantum/rgb_matrix.c
+++ b/quantum/rgb_matrix.c
@@ -184,11 +184,12 @@ void rgb_matrix_set_color(int index, uint8_t red, uint8_t green, uint8_t blue) {
184 184
185void rgb_matrix_set_color_all(uint8_t red, uint8_t green, uint8_t blue) { rgb_matrix_driver.set_color_all(red, green, blue); } 185void rgb_matrix_set_color_all(uint8_t red, uint8_t green, uint8_t blue) { rgb_matrix_driver.set_color_all(red, green, blue); }
186 186
187bool process_rgb_matrix(uint16_t keycode, keyrecord_t *record) { 187void process_rgb_matrix(uint8_t row, uint8_t col, bool pressed) {
188#ifndef RGB_MATRIX_SPLIT
189 if (!is_keyboard_master()) return;
190#endif
188#if RGB_DISABLE_TIMEOUT > 0 191#if RGB_DISABLE_TIMEOUT > 0
189 if (record->event.pressed) { 192 rgb_anykey_timer = 0;
190 rgb_anykey_timer = 0;
191 }
192#endif // RGB_DISABLE_TIMEOUT > 0 193#endif // RGB_DISABLE_TIMEOUT > 0
193 194
194#ifdef RGB_MATRIX_KEYREACTIVE_ENABLED 195#ifdef RGB_MATRIX_KEYREACTIVE_ENABLED
@@ -196,12 +197,12 @@ bool process_rgb_matrix(uint16_t keycode, keyrecord_t *record) {
196 uint8_t led_count = 0; 197 uint8_t led_count = 0;
197 198
198# if defined(RGB_MATRIX_KEYRELEASES) 199# if defined(RGB_MATRIX_KEYRELEASES)
199 if (!record->event.pressed) 200 if (!pressed)
200# elif defined(RGB_MATRIX_KEYPRESSES) 201# elif defined(RGB_MATRIX_KEYPRESSES)
201 if (record->event.pressed) 202 if (pressed)
202# endif // defined(RGB_MATRIX_KEYRELEASES) 203# endif // defined(RGB_MATRIX_KEYRELEASES)
203 { 204 {
204 led_count = rgb_matrix_map_row_column_to_led(record->event.key.row, record->event.key.col, led); 205 led_count = rgb_matrix_map_row_column_to_led(row, col, led);
205 } 206 }
206 207
207 if (last_hit_buffer.count + led_count > LED_HITS_TO_REMEMBER) { 208 if (last_hit_buffer.count + led_count > LED_HITS_TO_REMEMBER) {
@@ -224,11 +225,9 @@ bool process_rgb_matrix(uint16_t keycode, keyrecord_t *record) {
224 225
225#if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && !defined(DISABLE_RGB_MATRIX_TYPING_HEATMAP) 226#if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && !defined(DISABLE_RGB_MATRIX_TYPING_HEATMAP)
226 if (rgb_matrix_config.mode == RGB_MATRIX_TYPING_HEATMAP) { 227 if (rgb_matrix_config.mode == RGB_MATRIX_TYPING_HEATMAP) {
227 process_rgb_matrix_typing_heatmap(record); 228 process_rgb_matrix_typing_heatmap(row, col);
228 } 229 }
229#endif // defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && !defined(DISABLE_RGB_MATRIX_TYPING_HEATMAP) 230#endif // defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && !defined(DISABLE_RGB_MATRIX_TYPING_HEATMAP)
230
231 return true;
232} 231}
233 232
234void rgb_matrix_test(void) { 233void rgb_matrix_test(void) {