Default rgblight (#17855)
* better rgb bindings; improve default * trim firmware size
This commit is contained in:
parent
f02e355380
commit
baf34989f1
5 changed files with 48 additions and 42 deletions
|
@ -25,9 +25,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
[_FN] = LAYOUT_75_ansi(
|
||||
RESET, SPI_NORMAL, SPI_WIDE, SPI_SCRIPT, SPI_BLOCKS, SPI_CIRCLE, SPI_SQUARE, SPI_PARENS, SPI_FRAKTR, SPI_BOLD, SPI_MATH, XXXXXXX, SPI_GFLOCK, KC_SLEP, CH_SUSP, KC_PWR,
|
||||
EEP_RST, X(SAD), X(MEH), X(HAPPY), X(ANGRY), X(THUMBDN), X(THUMBUP), X(SPIDER), X_BUL, X(LOL), X(SURPRISE),X_DASH, XXXXXXX, KC_PAUS, KC_SLCK,
|
||||
XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, RGB_SPD, RGB_SPI, VLK_TOG, XXXXXXX, XXXXXXX, KC_BRIU,
|
||||
XXXXXXX, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_G, RGB_M_T, SPI_LNX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BRID,
|
||||
_______, SPI_GLO, XXXXXXX, SPI_WIN, UC_MOD, NK_TOGG, TG(_NUMPAD),SPI_OSX, X(LARR), X(RARR), DEBUG, _______, KC_VOLU, KC_MUTE,
|
||||
XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, SPI_GLO, VLK_TOG, XXXXXXX, XXXXXXX, XXXXXXX, KC_BRIU,
|
||||
XXXXXXX, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_G, RGB_M_TW, SPI_LNX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BRID,
|
||||
_______, XXXXXXX, XXXXXXX, SPI_WIN, UC_MOD, NK_TOGG, TG(_NUMPAD),SPI_OSX, X(LARR), X(RARR), DEBUG, _______, KC_VOLU, KC_MUTE,
|
||||
_______, _______, _______, KC_MPLY, CH_ASST, _______, CH_CPNL, KC_MPRV, KC_VOLD, KC_MNXT
|
||||
)
|
||||
};
|
||||
|
|
|
@ -2,21 +2,37 @@
|
|||
|
||||
#define LED_DISABLE_WHEN_USB_SUSPENDED
|
||||
#define RGB_DISABLE_WHEN_USB_SUSPENDED
|
||||
#define RGBLIGHT_LAYERS
|
||||
#define RGBLIGHT_MAX_LAYERS 17
|
||||
#define RGBLIGHT_LAYER_BLINK
|
||||
#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF
|
||||
#define RGBLIGHT_STARTUP_ANIMATION
|
||||
|
||||
#undef RGBLIGHT_ANIMATIONS
|
||||
#define RGBLIGHT_EFFECT_BREATHING
|
||||
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
|
||||
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
|
||||
#define RGBLIGHT_EFFECT_SNAKE
|
||||
#define RGBLIGHT_EFFECT_KNIGHT
|
||||
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
|
||||
#define RGBLIGHT_EFFECT_ALTERNATING
|
||||
#define RGBLIGHT_EFFECT_TWINKLE
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
|
||||
# define RGBLIGHT_LAYERS
|
||||
# define RGBLIGHT_MAX_LAYERS 17
|
||||
# define RGBLIGHT_LAYER_BLINK
|
||||
# define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF
|
||||
# define RGBLIGHT_STARTUP_ANIMATION
|
||||
|
||||
# undef RGBLIGHT_ANIMATIONS
|
||||
# define RGBLIGHT_EFFECT_BREATHING
|
||||
# define RGBLIGHT_EFFECT_RAINBOW_MOOD
|
||||
# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
|
||||
# define RGBLIGHT_EFFECT_SNAKE
|
||||
# define RGBLIGHT_EFFECT_KNIGHT
|
||||
# define RGBLIGHT_EFFECT_STATIC_GRADIENT
|
||||
# define RGBLIGHT_EFFECT_TWINKLE
|
||||
|
||||
# define RGBLIGHT_DEFAULT_HUE 213
|
||||
# define RGBLIGHT_DEFAULT_SAT UINT8_MAX
|
||||
# define RGBLIGHT_DEFAULT_VAL RGBLIGHT_LIMIT_VAL / 2
|
||||
|
||||
# if defined(RGBLIGHT_EFFECT_TWINKLE)
|
||||
# define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_TWINKLE
|
||||
# elif defined(RGBLIGHT_EFFECT_RAINBOW_MOOD)
|
||||
# define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_MOOD
|
||||
# else
|
||||
# define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_STATIC_LIGHT
|
||||
# endif
|
||||
|
||||
#endif
|
||||
|
||||
#define UNICODE_SELECTED_MODES UC_MAC, UC_LNX, UC_WINC
|
||||
|
||||
|
|
|
@ -11,10 +11,6 @@ void eeconfig_init_user(void) {
|
|||
#ifdef UNICODEMAP_ENABLE
|
||||
eeconfig_init_user_unicode();
|
||||
#endif
|
||||
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
eeconfig_init_user_rgb();
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
|
|
|
@ -13,21 +13,15 @@ bool rgb_saved = 0;
|
|||
extern bool spi_gflock;
|
||||
extern uint16_t spi_replace_mode;
|
||||
|
||||
void spidey_glow(void) {
|
||||
static void set_rgb_default(void) {
|
||||
rgblight_enable();
|
||||
rgblight_sethsv(213, 255, 128);
|
||||
if ((RGBLIGHT_MODE_TWINKLE <= rgblight_get_mode()) && (rgblight_get_mode() < RGBLIGHT_MODE_TWINKLE_end)) {
|
||||
rgblight_step();
|
||||
} else {
|
||||
rgblight_mode(RGBLIGHT_MODE_TWINKLE);
|
||||
}
|
||||
rgblight_sethsv(RGBLIGHT_DEFAULT_HUE, RGBLIGHT_DEFAULT_SAT, RGBLIGHT_DEFAULT_VAL);
|
||||
rgblight_mode(RGBLIGHT_DEFAULT_MODE);
|
||||
#ifdef VELOCIKEY_ENABLE
|
||||
if (velocikey_enabled()) velocikey_toggle();
|
||||
#endif
|
||||
}
|
||||
|
||||
void eeconfig_init_user_rgb(void) { spidey_glow(); }
|
||||
|
||||
// clang-format off
|
||||
|
||||
// Convenience macros
|
||||
|
@ -396,11 +390,9 @@ extern rgblight_config_t rgblight_config;
|
|||
bool process_record_user_rgb(uint16_t keycode, keyrecord_t *record) {
|
||||
if (record->event.pressed) {
|
||||
switch (keycode) {
|
||||
case SPI_GLO:
|
||||
spidey_glow();
|
||||
return false;
|
||||
|
||||
// clang-format off
|
||||
case SPI_GLO: set_rgb_default(); return false;
|
||||
|
||||
case RGB_HUI: change_timer = timer_read(); change_hue = 1; return false;
|
||||
case RGB_HUD: change_timer = timer_read(); change_hue = -1; return false;
|
||||
case RGB_SAI: change_timer = timer_read(); change_sat = 1; return false;
|
||||
|
|
|
@ -13,13 +13,12 @@ enum userspace_layers {
|
|||
};
|
||||
|
||||
enum custom_keycodes {
|
||||
SPI_GLO = SAFE_RANGE,
|
||||
SPI_LNX, // Mode: Linux
|
||||
SPI_OSX, // Mode: Mac
|
||||
SPI_WIN, // Mode: Windows
|
||||
CH_CPNL, // AL Control Panel
|
||||
CH_ASST, // AL Context-aware Desktop Assistant
|
||||
CH_SUSP, // Suspend
|
||||
SPI_LNX = SAFE_RANGE, // Mode: Linux
|
||||
SPI_OSX, // Mode: Mac
|
||||
SPI_WIN, // Mode: Windows
|
||||
CH_CPNL, // AL Control Panel
|
||||
CH_ASST, // AL Context-aware Desktop Assistant
|
||||
CH_SUSP, // Suspend
|
||||
|
||||
SPI_NORMAL,
|
||||
SPI_WIDE,
|
||||
|
@ -33,6 +32,10 @@ enum custom_keycodes {
|
|||
SPI_MATH,
|
||||
SPI_GFLOCK,
|
||||
SPI_KP_00,
|
||||
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
SPI_GLO,
|
||||
#endif
|
||||
};
|
||||
|
||||
#ifdef RGBLIGHT_ENABLE
|
||||
|
@ -52,7 +55,6 @@ typedef enum layer_ack {
|
|||
|
||||
# define RGB_LAYER_ACK_DURATION 500
|
||||
|
||||
void eeconfig_init_user_rgb(void);
|
||||
void matrix_init_user_rgb(void);
|
||||
void matrix_scan_user_rgb(void);
|
||||
void keyboard_post_init_user_rgb(void);
|
||||
|
|
Loading…
Reference in a new issue