refactor: modular RGB effect registration API
Replace hardcoded effect enum/switch-case with STRUCT_SECTION_ITERABLE registration. Effects register via ZMK_RGB_EFFECT_DEFINE macro. Core API (rgb_effect.h): - zmk_rgb_effect_ctx passed to render callbacks - zmk_rgb_request_refresh() for static effects - ZMK_RGB_EFFECT_STATIC flag skips animation timer - on_select/on_deselect lifecycle hooks - zmk_rgb_hsb_to_rgb/scale helpers now public Built-in effects (solid/breathe/spectrum/swirl) use same API. Per-key layer RGB, behaviors, DTS bindings extracted to external zmk-rgb-effects module.
This commit is contained in:
parent
d94d1597c1
commit
8f3c4d3929
16 changed files with 209 additions and 656 deletions
|
|
@ -322,8 +322,8 @@ config ZMK_RGB_UNDERGLOW_SPD_START
|
|||
range 1 5
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_EFF_START
|
||||
int "RGB underglow start effect int value related to the effect enum list"
|
||||
range 0 4
|
||||
int "RGB underglow start effect index (clamped to available effects at runtime)"
|
||||
range 0 15
|
||||
|
||||
config ZMK_RGB_UNDERGLOW_ON_START
|
||||
bool "RGB underglow starts on by default"
|
||||
|
|
@ -335,10 +335,6 @@ config ZMK_RGB_UNDERGLOW_AUTO_OFF_USB
|
|||
bool "Turn off RGB underglow when USB is disconnected"
|
||||
depends on USB_DEVICE_STACK
|
||||
|
||||
config EXPERIMENTAL_RGB_LAYER
|
||||
bool "Experimental per-key per-layer RGB underglow"
|
||||
default n
|
||||
|
||||
endif # ZMK_RGB_UNDERGLOW
|
||||
|
||||
menuconfig ZMK_BACKLIGHT
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue