M docs/feature_rgblight.md => docs/feature_rgblight.md +1 -0
@@ 88,6 88,7 @@ These control the RGB Lighting functionality.
|-----------|------------|-------------|
||`RGB_TOG`|toggle on/off|
||`RGB_MOD`|cycle through modes|
+||`RGB_SMOD`|cycle through modes, use reverse direction when shift is hold|
||`RGB_HUI`|hue increase|
||`RGB_HUD`|hue decrease|
||`RGB_SAI`|saturation increase|
M quantum/quantum.c => quantum/quantum.c +12 -0
@@ 290,6 290,18 @@ bool process_record_quantum(keyrecord_t *record) {
rgblight_step();
}
return false;
+ case RGB_SMOD:
+ // same as RBG_MOD, but if shift is pressed, it will use the reverese direction instead.
+ if (record->event.pressed) {
+ uint8_t shifted = get_mods() & (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT));
+ if(shifted) {
+ rgblight_step_reverse();
+ }
+ else {
+ rgblight_step();
+ }
+ }
+ return false;
case RGB_HUI:
if (record->event.pressed) {
rgblight_increase_hue();
M quantum/quantum_keycodes.h => quantum/quantum_keycodes.h +1 -0
@@ 400,6 400,7 @@ enum quantum_keycodes {
// RGB functionality
RGB_TOG,
RGB_MOD,
+ RGB_SMOD,
RGB_HUI,
RGB_HUD,
RGB_SAI,