Fix Per Key LED Indicator Callbacks (#18450)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
This commit is contained in:
@@ -51,7 +51,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
return true;
|
||||
}
|
||||
|
||||
void rgb_matrix_indicators_user(void) {
|
||||
bool rgb_matrix_indicators_user(void) {
|
||||
if (rgb_matrix_config.enable) {
|
||||
HSV hsv = rgb_matrix_config.hsv;
|
||||
if (IS_HOST_LED_ON(USB_LED_CAPS_LOCK)) {
|
||||
@@ -87,6 +87,7 @@ void rgb_matrix_indicators_user(void) {
|
||||
set_hsv_at(hsv1, 63);
|
||||
set_hsv_at(hsv2, 57);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void set_hsv_at(HSV hsv, uint8_t index) {
|
||||
|
@@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
// Capslock, Scroll lock and Numlock indicator
|
||||
void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
|
||||
bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
|
||||
if (get_rgb_nightmode()) rgb_matrix_set_color_all(RGB_OFF);
|
||||
if (IS_HOST_LED_ON(USB_LED_SCROLL_LOCK)) {
|
||||
rgb_matrix_set_color(LED_I, RGB_GREEN);
|
||||
@@ -109,15 +109,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void suspend_power_down_user(void) {
|
||||
rgb_matrix_set_suspend_state(true);
|
||||
}
|
||||
|
||||
void suspend_wakeup_init_user(void) {
|
||||
rgb_matrix_set_suspend_state(false);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
@@ -96,9 +96,13 @@ led_config_t g_led_config = {{{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14}
|
||||
{{0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, {90, 0}, {105, 0}, {120, 0}, {135, 0}, {150, 0}, {165, 0}, {180, 0}, {203, 0}, {224, 0}, {4, 16}, {23, 16}, {38, 16}, {53, 16}, {68, 16}, {83, 16}, {98, 16}, {113, 16}, {128, 16}, {143, 16}, {158, 16}, {173, 16}, {188, 16}, {206, 16}, {224, 16}, {6, 32}, {26, 32}, {41, 32}, {56, 32}, {71, 32}, {86, 32}, {101, 32}, {116, 32}, {131, 32}, {146, 32}, {161, 32}, {176, 32}, {201, 32}, {224, 32}, {9, 48}, {34, 48}, {49, 48}, {64, 48}, {79, 48}, {94, 48}, {109, 48}, {124, 48}, {139, 48}, {154, 48}, {169, 48}, {189, 48}, {210, 48}, {224, 48}, {2, 64}, {21, 64}, {39, 64}, {96, 64}, {152, 64}, {171, 64}, {195, 64}, {210, 64}, {224, 64}},
|
||||
{1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1}};
|
||||
|
||||
__attribute__((weak)) void rgb_matrix_indicators_user(void) {
|
||||
bool rgb_matrix_indicators_kb(void) {
|
||||
if (!rgb_matrix_indicators_user()) {
|
||||
return false;
|
||||
}
|
||||
if (host_keyboard_led_state().caps_lock) {
|
||||
rgb_matrix_set_color(30, 0xFF, 0xFF, 0xFF);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
@@ -113,10 +113,13 @@ led_config_t g_led_config = { {
|
||||
} };
|
||||
|
||||
|
||||
__attribute__ ((weak))
|
||||
void rgb_matrix_indicators_user(void) {
|
||||
bool rgb_matrix_indicators_kb(void) {
|
||||
if (!rgb_matrix_indicators_user()) {
|
||||
return false;
|
||||
}
|
||||
if (host_keyboard_led_state().caps_lock) {
|
||||
rgb_matrix_set_color(30, 0xFF, 0xFF, 0xFF);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
@@ -137,8 +137,10 @@ led_config_t g_led_config = { {
|
||||
#define CAPS_LOCK_VAL_STEP 8
|
||||
#endif
|
||||
|
||||
__attribute__ ((weak))
|
||||
void rgb_matrix_indicators_user(void) {
|
||||
bool rgb_matrix_indicators_kb(void) {
|
||||
if (!rgb_matrix_indicators_user()) {
|
||||
return false;
|
||||
}
|
||||
if (host_keyboard_led_state().caps_lock) {
|
||||
uint8_t b = rgb_matrix_get_val();
|
||||
if (b < CAPS_LOCK_VAL_STEP) {
|
||||
@@ -150,6 +152,7 @@ void rgb_matrix_indicators_user(void) {
|
||||
}
|
||||
rgb_matrix_set_color(CAPS_LOCK_LED_INDEX, b, b, b); // white, with the adjusted brightness
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@@ -13,7 +13,7 @@
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#include "v4.h"
|
||||
|
||||
#ifdef RGB_MATRIX_ENABLE
|
||||
@@ -29,21 +29,24 @@ led_config_t g_led_config = {
|
||||
{0,0},{15,0},{30,0},{45,0},{60,0},{75,0},{90,0},{105,0},{120,0},{135,0},{150,0},{165,0},{180,0},{203,0},{224,0},
|
||||
{224,16},{206,16},{188,16},{173,16},{158,16},{143,16},{128,16},{113,16},{98,16},{83,16}, {68,16},{53,16},{38,16},{23,16},{4,16},
|
||||
{6,32},{26,32},{41,32},{56,32},{71,32},{86,32},{101,32},{116,32},{131,32},{146,32},{161,32},{176,32},{201,32},{224,32},
|
||||
{224,48},{210,48},{189,48},{169,48},{154,48},{139,48},{124,48},{109,48},{94,48},{79,48},{64,48},{49,48},{34,48},{9,48},
|
||||
{224,48},{210,48},{189,48},{169,48},{154,48},{139,48},{124,48},{109,48},{94,48},{79,48},{64,48},{49,48},{34,48},{9,48},
|
||||
{2,64},{21,64},{39,64},{96,64},{152,64},{171,64},{195,64},{210,64},{224,64}
|
||||
}, {
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 1, 1, 4, 1, 1, 1, 1, 1
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 1, 1, 4, 1, 1, 1, 1, 1
|
||||
} };
|
||||
|
||||
__attribute__ ((weak))
|
||||
void rgb_matrix_indicators_user(void) {
|
||||
bool rgb_matrix_indicators_kb(void) {
|
||||
if (!rgb_matrix_indicators_user()) {
|
||||
return false;
|
||||
}
|
||||
if (host_keyboard_led_state().caps_lock) {
|
||||
rgb_matrix_set_color(30, 0xFF, 0xFF, 0xFF);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@@ -33,17 +33,19 @@ led_config_t g_led_config = {
|
||||
}, {
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 1, 1, 4, 1, 1, 1, 1, 1
|
||||
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
|
||||
1, 1, 1, 4, 1, 1, 1, 1, 1
|
||||
} };
|
||||
|
||||
|
||||
__attribute__ ((weak))
|
||||
void rgb_matrix_indicators_user(void) {
|
||||
bool rgb_matrix_indicators_kb(void) {
|
||||
if (!rgb_matrix_indicators_user()) {
|
||||
return false;
|
||||
}
|
||||
if (host_keyboard_led_state().caps_lock) {
|
||||
rgb_matrix_set_color(29, 0xFF, 0xFF, 0xFF);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
Reference in New Issue
Block a user