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:
Drashna Jaelre 2022-10-04 15:24:22 -07:00 committed by GitHub
commit 64b1ed4550
Failed to generate hash of commit
218 changed files with 1430 additions and 1271 deletions

View file

@ -42,7 +42,10 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
return true;
}
__attribute__((weak)) void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) {
if (!rgb_matrix_indicators_advanced_user(led_min, led_max)) {
return false;
}
// RGB_MATRIX_INDICATOR_SET_COLOR(index, red, green, blue);
if (host_keyboard_led_state().num_lock) {
@ -52,6 +55,7 @@ __attribute__((weak)) void rgb_matrix_indicators_advanced_user(uint8_t led_min,
RGB_MATRIX_INDICATOR_SET_COLOR(NUM_LOCK_LED_INDEX, 0, 0, 0);
}
}
return true;
}
#endif // NUM_LOCK_LED_INDEX

View file

@ -31,7 +31,7 @@ void rgb_matrix_init_user(void) {
}
}
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) {
uint8_t current_layer = get_highest_layer(layer_state);
switch (current_layer) {
case MAC_BASE:
@ -49,6 +49,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
#endif
break;
}
return false;
}
void rgb_matrix_set_color_by_keycode(uint8_t led_min, uint8_t led_max, uint8_t layer, bool (*is_keycode)(uint16_t), uint8_t red, uint8_t green, uint8_t blue) {

View file

@ -31,7 +31,7 @@ void rgb_matrix_init_user(void) {
}
}
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) {
uint8_t current_layer = get_highest_layer(layer_state);
switch (current_layer) {
case MAC_BASE:
@ -54,6 +54,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
}
break;
}
return false;
}
void rgb_matrix_set_color_by_keycode(uint8_t led_min, uint8_t led_max, uint8_t layer, bool (*is_keycode)(uint16_t), uint8_t red, uint8_t green, uint8_t blue) {
@ -67,11 +68,11 @@ void rgb_matrix_set_color_by_keycode(uint8_t led_min, uint8_t led_max, uint8_t l
bool is_caps_lock_indicator(uint16_t keycode) {
bool indicator = keycode == KC_CAPS;
if (get_caps_lock_light_tab()) {
indicator = keycode == KC_TAB || keycode == KC_CAPS;
}
if (get_caps_lock_light_alphas()) {
return (KC_A <= keycode && keycode <= KC_Z) || indicator;
} else {
@ -80,4 +81,4 @@ bool is_caps_lock_indicator(uint16_t keycode) {
}
bool is_transparent(uint16_t keycode) { return keycode == KC_TRNS; }
bool is_not_transparent(uint16_t keycode) { return keycode != KC_TRNS; }
bool is_not_transparent(uint16_t keycode) { return keycode != KC_TRNS; }

View file

@ -31,7 +31,7 @@ void rgb_matrix_init_user(void) {
}
}
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) {
uint8_t current_layer = get_highest_layer(layer_state | default_layer_state);
switch (current_layer) {
case MAC_BASE:
@ -59,6 +59,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
#endif
break;
}
return false;
}
void rgb_matrix_set_color_by_keycode(uint8_t led_min, uint8_t led_max, uint8_t layer, bool (*is_keycode)(uint16_t), uint8_t red, uint8_t green, uint8_t blue) {

View file

@ -31,7 +31,7 @@ void rgb_matrix_init_user(void) {
}
}
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) {
uint8_t current_layer = get_highest_layer(layer_state);
switch (current_layer) {
case MAC_BASE:
@ -49,6 +49,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
#endif
break;
}
return false;
}
void rgb_matrix_set_color_by_keycode(uint8_t led_min, uint8_t led_max, uint8_t layer, bool (*is_keycode)(uint16_t), uint8_t red, uint8_t green, uint8_t blue) {

View file

@ -31,7 +31,7 @@ void rgb_matrix_init_user(void) {
}
}
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) {
uint8_t current_layer = get_highest_layer(layer_state);
switch (current_layer) {
case MAC_BASE:
@ -54,6 +54,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
}
break;
}
return false;
}
void rgb_matrix_set_color_by_keycode(uint8_t led_min, uint8_t led_max, uint8_t layer, bool (*is_keycode)(uint16_t), uint8_t red, uint8_t green, uint8_t blue) {
@ -67,11 +68,11 @@ void rgb_matrix_set_color_by_keycode(uint8_t led_min, uint8_t led_max, uint8_t l
bool is_caps_lock_indicator(uint16_t keycode) {
bool indicator = keycode == KC_CAPS;
if (get_caps_lock_light_tab()) {
indicator = keycode == KC_TAB || keycode == KC_CAPS;
}
if (get_caps_lock_light_alphas()) {
return (KC_A <= keycode && keycode <= KC_Z) || indicator;
} else {
@ -80,4 +81,4 @@ bool is_caps_lock_indicator(uint16_t keycode) {
}
bool is_transparent(uint16_t keycode) { return keycode == KC_TRNS; }
bool is_not_transparent(uint16_t keycode) { return keycode != KC_TRNS; }
bool is_not_transparent(uint16_t keycode) { return keycode != KC_TRNS; }

View file

@ -31,7 +31,7 @@ void rgb_matrix_init_user(void) {
}
}
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) {
uint8_t current_layer = get_highest_layer(layer_state);
switch (current_layer) {
case MAC_BASE:
@ -50,6 +50,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {
#endif
break;
}
return false;
}
void rgb_matrix_set_color_by_keycode(uint8_t led_min, uint8_t led_max, uint8_t layer, bool (*is_keycode)(uint16_t), uint8_t red, uint8_t green, uint8_t blue) {
@ -69,4 +70,4 @@ bool is_caps_lock_indicator(uint16_t keycode) {
#endif
}
bool is_transparent(uint16_t keycode) { return keycode == KC_TRNS; }
bool is_transparent(uint16_t keycode) { return keycode == KC_TRNS; }

View file

@ -67,7 +67,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
} else {
tap_code_delay(KC_VOLD, 10);
}
} else {
} else {
if ((get_mods() & MOD_BIT(KC_LCMD)) != MOD_BIT(KC_LCMD)) {
register_code(KC_LCMD);
defer_exec(20, cancel_cmd, NULL);
@ -81,7 +81,7 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
return false;
}
void rgb_matrix_indicators_kb(void) {
bool rgb_matrix_indicators_user(void) {
switch(get_highest_layer(layer_state|default_layer_state)) {
case 1:
rgb_matrix_set_color_all(RGB_BLACK);
@ -91,4 +91,5 @@ void rgb_matrix_indicators_kb(void) {
rgb_matrix_set_color_all(RGB_BLACK);
break;
}
return false;
}