~ruther/qmk_firmware

1f4349592277e6a61e643947665c8b026b7700ed — Sebastian Kaim 7 years ago 21dfa29
Added a new keycode for cycling through RBG modes which reverses directions when shift is hold.

This commit adds a new keycode `RGB_SMOD` which is the same as `RGB_MOD` (cycle through all modes),
but when it is used in combination with shift it will reverse the direction.
3 files changed, 14 insertions(+), 0 deletions(-)

M docs/feature_rgblight.md
M quantum/quantum.c
M quantum/quantum_keycodes.h
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,