Rgb matrix/enable modes explicitly (#13758)

* Change animations to require explicet activation

* Add support for legacy config

* Make default for now

* Add LED Matrix support

* change LED Matrix docs
This commit is contained in:
Drashna Jaelre
2021-08-17 11:19:00 -07:00
committed by GitHub
parent 85351dc23d
commit 7da97c293d
51 changed files with 359 additions and 122 deletions

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_ALPHAS_MODS
#ifdef ENABLE_RGB_MATRIX_ALPHAS_MODS
RGB_MATRIX_EFFECT(ALPHAS_MODS)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_BREATHING
#ifdef ENABLE_RGB_MATRIX_BREATHING
RGB_MATRIX_EFFECT(BREATHING)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
#ifdef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
RGB_MATRIX_EFFECT(BAND_PINWHEEL_SAT)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
#ifdef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
RGB_MATRIX_EFFECT(BAND_PINWHEEL_VAL)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_BAND_SAT
#ifdef ENABLE_RGB_MATRIX_BAND_SAT
RGB_MATRIX_EFFECT(BAND_SAT)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_BAND_SPIRAL_SAT
#ifdef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
RGB_MATRIX_EFFECT(BAND_SPIRAL_SAT)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_BAND_SPIRAL_VAL
#ifdef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
RGB_MATRIX_EFFECT(BAND_SPIRAL_VAL)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_BAND_VAL
#ifdef ENABLE_RGB_MATRIX_BAND_VAL
RGB_MATRIX_EFFECT(BAND_VAL)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_CYCLE_ALL
#ifdef ENABLE_RGB_MATRIX_CYCLE_ALL
RGB_MATRIX_EFFECT(CYCLE_ALL)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
#ifdef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
RGB_MATRIX_EFFECT(CYCLE_LEFT_RIGHT)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_CYCLE_OUT_IN
#ifdef ENABLE_RGB_MATRIX_CYCLE_OUT_IN
RGB_MATRIX_EFFECT(CYCLE_OUT_IN)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
#ifdef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
RGB_MATRIX_EFFECT(CYCLE_OUT_IN_DUAL)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_CYCLE_PINWHEEL
#ifdef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
RGB_MATRIX_EFFECT(CYCLE_PINWHEEL)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_CYCLE_SPIRAL
#ifdef ENABLE_RGB_MATRIX_CYCLE_SPIRAL
RGB_MATRIX_EFFECT(CYCLE_SPIRAL)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_CYCLE_UP_DOWN
#ifdef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
RGB_MATRIX_EFFECT(CYCLE_UP_DOWN)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_DUAL_BEACON
#ifdef ENABLE_RGB_MATRIX_DUAL_BEACON
RGB_MATRIX_EFFECT(DUAL_BEACON)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
#ifdef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
RGB_MATRIX_EFFECT(GRADIENT_LEFT_RIGHT)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN
#ifdef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
RGB_MATRIX_EFFECT(GRADIENT_UP_DOWN)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_HUE_BREATHING
#ifdef ENABLE_RGB_MATRIX_HUE_BREATHING
RGB_MATRIX_EFFECT(HUE_BREATHING)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_HUE_PENDULUM
#ifdef ENABLE_RGB_MATRIX_HUE_PENDULUM
RGB_MATRIX_EFFECT(HUE_PENDULUM)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_HUE_WAVE
#ifdef ENABLE_RGB_MATRIX_HUE_WAVE
RGB_MATRIX_EFFECT(HUE_WAVE)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
#ifdef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
RGB_MATRIX_EFFECT(JELLYBEAN_RAINDROPS)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_RAINBOW_BEACON
#ifdef ENABLE_RGB_MATRIX_RAINBOW_BEACON
RGB_MATRIX_EFFECT(RAINBOW_BEACON)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
#ifdef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
RGB_MATRIX_EFFECT(RAINBOW_MOVING_CHEVRON)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS
#ifdef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
RGB_MATRIX_EFFECT(RAINBOW_PINWHEELS)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#ifndef DISABLE_RGB_MATRIX_RAINDROPS
#ifdef ENABLE_RGB_MATRIX_RAINDROPS
RGB_MATRIX_EFFECT(RAINDROPS)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -1,4 +1,4 @@
#if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && !defined(DISABLE_RGB_MATRIX_TYPING_HEATMAP)
#if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && defined(ENABLE_RGB_MATRIX_TYPING_HEATMAP)
RGB_MATRIX_EFFECT(TYPING_HEATMAP)
# ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS

View File

@ -92,7 +92,7 @@ __attribute__((weak)) RGB rgb_matrix_hsv_to_rgb(HSV hsv) { return hsv_to_rgb(hsv
#endif
#if !defined(RGB_MATRIX_STARTUP_MODE)
# ifndef DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
# ifdef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
# define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT
# else
// fallback to solid colors if RGB_MATRIX_CYCLE_LEFT_RIGHT is disabled in userspace
@ -243,11 +243,11 @@ void process_rgb_matrix(uint8_t row, uint8_t col, bool pressed) {
}
#endif // RGB_MATRIX_KEYREACTIVE_ENABLED
#if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && !defined(DISABLE_RGB_MATRIX_TYPING_HEATMAP)
#if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && defined(ENABLE_RGB_MATRIX_TYPING_HEATMAP)
if (rgb_matrix_config.mode == RGB_MATRIX_TYPING_HEATMAP) {
process_rgb_matrix_typing_heatmap(row, col);
}
#endif // defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && !defined(DISABLE_RGB_MATRIX_TYPING_HEATMAP)
#endif // defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) && defined(ENABLE_RGB_MATRIX_TYPING_HEATMAP)
}
void rgb_matrix_test(void) {

View File

@ -23,6 +23,7 @@
#include "rgb_matrix_types.h"
#include "color.h"
#include "quantum.h"
#include "rgb_matrix_legacy_enables.h"
#ifdef IS31FL3731
# include "is31fl3731.h"

View File

@ -0,0 +1,153 @@
/* Copyright 2021 QMK
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
// to-do: remove this
#pragma once
#ifndef DISABLE_RGB_MATRIX_ALPHAS_MODS
# define ENABLE_RGB_MATRIX_ALPHAS_MODS
#endif
#ifndef DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN
# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
#endif
#ifndef DISABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
#endif
#ifndef DISABLE_RGB_MATRIX_BREATHING
# define ENABLE_RGB_MATRIX_BREATHING
#endif
#ifndef DISABLE_RGB_MATRIX_BAND_SAT
# define ENABLE_RGB_MATRIX_BAND_SAT
#endif
#ifndef DISABLE_RGB_MATRIX_BAND_VAL
# define ENABLE_RGB_MATRIX_BAND_VAL
#endif
#ifndef DISABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
#endif
#ifndef DISABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
#endif
#ifndef DISABLE_RGB_MATRIX_BAND_SPIRAL_SAT
# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
#endif
#ifndef DISABLE_RGB_MATRIX_BAND_SPIRAL_VAL
# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
#endif
#ifndef DISABLE_RGB_MATRIX_CYCLE_ALL
# define ENABLE_RGB_MATRIX_CYCLE_ALL
#endif
#ifndef DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
#endif
#ifndef DISABLE_RGB_MATRIX_CYCLE_UP_DOWN
# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
#endif
#ifndef DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
#endif
#ifndef DISABLE_RGB_MATRIX_CYCLE_OUT_IN
# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
#endif
#ifndef DISABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
#endif
#ifndef DISABLE_RGB_MATRIX_CYCLE_PINWHEEL
# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
#endif
#ifndef DISABLE_RGB_MATRIX_CYCLE_SPIRAL
# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
#endif
#ifndef DISABLE_RGB_MATRIX_DUAL_BEACON
# define ENABLE_RGB_MATRIX_DUAL_BEACON
#endif
#ifndef DISABLE_RGB_MATRIX_RAINBOW_BEACON
# define ENABLE_RGB_MATRIX_RAINBOW_BEACON
#endif
#ifndef DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS
# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
#endif
#ifndef DISABLE_RGB_MATRIX_RAINDROPS
# define ENABLE_RGB_MATRIX_RAINDROPS
#endif
#ifndef DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
#endif
#ifndef DISABLE_RGB_MATRIX_HUE_BREATHING
# define ENABLE_RGB_MATRIX_HUE_BREATHING
#endif
#ifndef DISABLE_RGB_MATRIX_HUE_PENDULUM
# define ENABLE_RGB_MATRIX_HUE_PENDULUM
#endif
#ifndef DISABLE_RGB_MATRIX_HUE_WAVE
# define ENABLE_RGB_MATRIX_HUE_WAVE
#endif
#ifndef DISABLE_RGB_MATRIX_PIXEL_RAIN
# define ENABLE_RGB_MATRIX_PIXEL_RAIN
#endif
#ifndef DISABLE_RGB_MATRIX_PIXEL_FLOW
# define ENABLE_RGB_MATRIX_PIXEL_FLOW
#endif
#ifndef DISABLE_RGB_MATRIX_PIXEL_FRACTAL
# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
#endif
#if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS)
# ifndef DISABLE_RGB_MATRIX_TYPING_HEATMAP
# define ENABLE_RGB_MATRIX_TYPING_HEATMAP
# endif
# ifndef DISABLE_RGB_MATRIX_DIGITAL_RAIN
# define ENABLE_RGB_MATRIX_DIGITAL_RAIN
# endif
#endif
#if defined(RGB_MATRIX_KEYREACTIVE_ENABLED)
# ifndef DISABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
# endif
# ifndef DISABLE_RGB_MATRIX_SOLID_REACTIVE
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE
# endif
# ifndef DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
# endif
# ifndef DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
# endif
# ifndef DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
# endif
# ifndef DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
# endif
# ifndef DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
# endif
# ifndef DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
# endif
# ifndef DISABLE_RGB_MATRIX_SPLASH
# define ENABLE_RGB_MATRIX_SPLASH
# endif
# ifndef DISABLE_RGB_MATRIX_MULTISPLASH
# define ENABLE_RGB_MATRIX_MULTISPLASH
# endif
# ifndef DISABLE_RGB_MATRIX_SOLID_SPLASH
# define ENABLE_RGB_MATRIX_SOLID_SPLASH
# endif
# ifndef DISABLE_RGB_MATRIX_SOLID_MULTISPLASH
# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
# endif
#endif