// Copyright 2023 Colin Kinloch (@ColinKinloch) // SPDX-License-Identifier: GPL-2.0-or-later #include "quantum.h" static uint8_t anim = 0; #ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; } switch (index) { case 0: { if (clockwise) { tap_code_delay(KC_VOLU, 10); } else { tap_code_delay(KC_VOLD, 10); } } break; case 1: { if (clockwise) { rgblight_increase_hue(); } else { rgblight_decrease_hue(); } } break; case 2: { if (clockwise) { rgblight_increase_val(); } else { rgblight_decrease_val(); } } break; case 3: { if (clockwise) { anim++; } else { anim--; } if (anim >= RGB_MATRIX_EFFECT_MAX) { anim = 0; } else if (anim < 0) { anim = RGB_MATRIX_EFFECT_MAX - 1; } rgblight_mode(anim); } break; } return true; } #endif