diff options
Diffstat (limited to 'quantum/quantum.c')
-rw-r--r-- | quantum/quantum.c | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/quantum/quantum.c b/quantum/quantum.c index 2bd2c71af..9c6ed3330 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c | |||
@@ -312,8 +312,16 @@ bool process_record_quantum(keyrecord_t *record) { | |||
312 | #endif | 312 | #endif |
313 | #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) | 313 | #if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) |
314 | case RGB_TOG: | 314 | case RGB_TOG: |
315 | // Split keyboards need to trigger on key-up for edge-case issue | ||
316 | #ifndef SPLIT_KEYBOARD | ||
315 | if (record->event.pressed) { | 317 | if (record->event.pressed) { |
318 | #else | ||
319 | if (!record->event.pressed) { | ||
320 | #endif | ||
316 | rgblight_toggle(); | 321 | rgblight_toggle(); |
322 | #ifdef SPLIT_KEYBOARD | ||
323 | RGB_DIRTY = true; | ||
324 | #endif | ||
317 | } | 325 | } |
318 | return false; | 326 | return false; |
319 | case RGB_MODE_FORWARD: | 327 | case RGB_MODE_FORWARD: |
@@ -325,6 +333,9 @@ bool process_record_quantum(keyrecord_t *record) { | |||
325 | else { | 333 | else { |
326 | rgblight_step(); | 334 | rgblight_step(); |
327 | } | 335 | } |
336 | #ifdef SPLIT_KEYBOARD | ||
337 | RGB_DIRTY = true; | ||
338 | #endif | ||
328 | } | 339 | } |
329 | return false; | 340 | return false; |
330 | case RGB_MODE_REVERSE: | 341 | case RGB_MODE_REVERSE: |
@@ -336,36 +347,87 @@ bool process_record_quantum(keyrecord_t *record) { | |||
336 | else { | 347 | else { |
337 | rgblight_step_reverse(); | 348 | rgblight_step_reverse(); |
338 | } | 349 | } |
350 | #ifdef SPLIT_KEYBOARD | ||
351 | RGB_DIRTY = true; | ||
352 | #endif | ||
339 | } | 353 | } |
340 | return false; | 354 | return false; |
341 | case RGB_HUI: | 355 | case RGB_HUI: |
356 | // Split keyboards need to trigger on key-up for edge-case issue | ||
357 | #ifndef SPLIT_KEYBOARD | ||
342 | if (record->event.pressed) { | 358 | if (record->event.pressed) { |
359 | #else | ||
360 | if (!record->event.pressed) { | ||
361 | #endif | ||
343 | rgblight_increase_hue(); | 362 | rgblight_increase_hue(); |
363 | #ifdef SPLIT_KEYBOARD | ||
364 | RGB_DIRTY = true; | ||
365 | #endif | ||
344 | } | 366 | } |
345 | return false; | 367 | return false; |
346 | case RGB_HUD: | 368 | case RGB_HUD: |
369 | // Split keyboards need to trigger on key-up for edge-case issue | ||
370 | #ifndef SPLIT_KEYBOARD | ||
347 | if (record->event.pressed) { | 371 | if (record->event.pressed) { |
372 | #else | ||
373 | if (!record->event.pressed) { | ||
374 | #endif | ||
348 | rgblight_decrease_hue(); | 375 | rgblight_decrease_hue(); |
376 | #ifdef SPLIT_KEYBOARD | ||
377 | RGB_DIRTY = true; | ||
378 | #endif | ||
349 | } | 379 | } |
350 | return false; | 380 | return false; |
351 | case RGB_SAI: | 381 | case RGB_SAI: |
382 | // Split keyboards need to trigger on key-up for edge-case issue | ||
383 | #ifndef SPLIT_KEYBOARD | ||
352 | if (record->event.pressed) { | 384 | if (record->event.pressed) { |
385 | #else | ||
386 | if (!record->event.pressed) { | ||
387 | #endif | ||
353 | rgblight_increase_sat(); | 388 | rgblight_increase_sat(); |
389 | #ifdef SPLIT_KEYBOARD | ||
390 | RGB_DIRTY = true; | ||
391 | #endif | ||
354 | } | 392 | } |
355 | return false; | 393 | return false; |
356 | case RGB_SAD: | 394 | case RGB_SAD: |
395 | // Split keyboards need to trigger on key-up for edge-case issue | ||
396 | #ifndef SPLIT_KEYBOARD | ||
357 | if (record->event.pressed) { | 397 | if (record->event.pressed) { |
398 | #else | ||
399 | if (!record->event.pressed) { | ||
400 | #endif | ||
358 | rgblight_decrease_sat(); | 401 | rgblight_decrease_sat(); |
402 | #ifdef SPLIT_KEYBOARD | ||
403 | RGB_DIRTY = true; | ||
404 | #endif | ||
359 | } | 405 | } |
360 | return false; | 406 | return false; |
361 | case RGB_VAI: | 407 | case RGB_VAI: |
408 | // Split keyboards need to trigger on key-up for edge-case issue | ||
409 | #ifndef SPLIT_KEYBOARD | ||
362 | if (record->event.pressed) { | 410 | if (record->event.pressed) { |
411 | #else | ||
412 | if (!record->event.pressed) { | ||
413 | #endif | ||
363 | rgblight_increase_val(); | 414 | rgblight_increase_val(); |
415 | #ifdef SPLIT_KEYBOARD | ||
416 | RGB_DIRTY = true; | ||
417 | #endif | ||
364 | } | 418 | } |
365 | return false; | 419 | return false; |
366 | case RGB_VAD: | 420 | case RGB_VAD: |
421 | // Split keyboards need to trigger on key-up for edge-case issue | ||
422 | #ifndef SPLIT_KEYBOARD | ||
367 | if (record->event.pressed) { | 423 | if (record->event.pressed) { |
424 | #else | ||
425 | if (!record->event.pressed) { | ||
426 | #endif | ||
368 | rgblight_decrease_val(); | 427 | rgblight_decrease_val(); |
428 | #ifdef SPLIT_KEYBOARD | ||
429 | RGB_DIRTY = true; | ||
430 | #endif | ||
369 | } | 431 | } |
370 | return false; | 432 | return false; |
371 | case RGB_SPI: | 433 | case RGB_SPI: |
@@ -381,6 +443,9 @@ bool process_record_quantum(keyrecord_t *record) { | |||
381 | case RGB_MODE_PLAIN: | 443 | case RGB_MODE_PLAIN: |
382 | if (record->event.pressed) { | 444 | if (record->event.pressed) { |
383 | rgblight_mode(1); | 445 | rgblight_mode(1); |
446 | #ifdef SPLIT_KEYBOARD | ||
447 | RGB_DIRTY = true; | ||
448 | #endif | ||
384 | } | 449 | } |
385 | return false; | 450 | return false; |
386 | case RGB_MODE_BREATHE: | 451 | case RGB_MODE_BREATHE: |