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. |
||
|---|---|---|
| .. | ||
| zmk-behavior-local-id-map.ld | ||
| zmk-behaviors.ld | ||
| zmk-events.ld | ||
| zmk-rgb-effects.ld | ||
| zmk-rpc-event-mappers.ld | ||
| zmk-rpc-subsystem-handlers.ld | ||
| zmk-rpc-subsystem-settings-reset.ld | ||
| zmk-rpc-subsystems.ld | ||
| zmk-rpc-transport.ld | ||
| zmk-split-transport-central.ld | ||
| zmk-split-transport-peripheral.ld | ||