typek.c (1514B)
1 /* Copyright 2023 Gondolindrim <gondolindrim@acheronproject.com> 2 * 3 * This program is free software: you can redistribute it and/or modify 4 * it under the terms of the GNU General Public License as published by 5 * the Free Software Foundation, either version 2 of the License, or 6 * (at your option) any later version. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 * 13 * You should have received a copy of the GNU General Public License 14 * along with this program. If not, see <http://www.gnu.org/licenses/>. 15 */ 16 17 #include "quantum.h" 18 19 // This function gets called when caps, num, scroll change 20 bool led_update_kb(led_t led_state) { 21 bool res = led_update_user(led_state); 22 if (res) { 23 led_state.caps_lock? rgblight_setrgb_at(RGB_RED, 0) : rgblight_setrgb_at(RGB_OFF, 0); 24 } 25 return res; 26 } 27 28 // This function is called when layers change 29 layer_state_t layer_state_set_kb(layer_state_t state) { 30 state = layer_state_set_user(state); 31 switch(get_highest_layer(state)) { 32 case 1: 33 rgblight_setrgb_at(RGB_GREEN, 1); 34 break; 35 case 2: 36 rgblight_setrgb_at(RGB_BLUE, 2); 37 break; 38 default: 39 rgblight_setrgb_at(RGB_OFF, 1); 40 rgblight_setrgb_at(RGB_OFF, 2); 41 break; 42 } 43 return state; 44 }