diff --git a/keyboards/keychron/v2/v2.c b/keyboards/keychron/v2/v2.c index 011d58dfd2..fbc0335025 100644 --- a/keyboards/keychron/v2/v2.c +++ b/keyboards/keychron/v2/v2.c @@ -26,10 +26,21 @@ const matrix_row_t matrix_mask[] = { #ifdef DIP_SWITCH_ENABLE +bool dip_switch_update_kb(uint8_t index, bool active) { + if (!dip_switch_update_user(index, active)) { return false;} + if (index == 0) { + default_layer_set(1UL << (active ? 1 : 0)); + } + return true; +} + +#endif // DIP_SWITCH_ENABLE + +#if defined(RGB_MATRIX_ENABLE) && defined(CAPS_LOCK_LED_INDEX) + bool process_record_kb(uint16_t keycode, keyrecord_t *record) { if (!process_record_user(keycode, record)) { return false; } switch (keycode) { -#ifdef RGB_MATRIX_ENABLE case RGB_TOG: if (record->event.pressed) { switch (rgb_matrix_get_flags()) { @@ -47,12 +58,13 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { rgb_matrix_enable(); } return false; -#endif } return true; } void rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { + // RGB_MATRIX_INDICATOR_SET_COLOR(index, red, green, blue); + if (host_keyboard_led_state().caps_lock) { RGB_MATRIX_INDICATOR_SET_COLOR(CAPS_LOCK_LED_INDEX, 255, 255, 255); } else {