rev3.c (1478B)
1 /* Copyright 2021 Danny Nguyen <danny@keeb.io> 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 #include "split_util.h" 19 20 void matrix_init_kb(void) { 21 gpio_set_pin_output(CAPS_LOCK_LED_PIN); 22 matrix_init_user(); 23 } 24 25 bool led_update_kb(led_t led_state) { 26 // Only update if left half 27 if (led_update_user(led_state) && isLeftHand) { 28 gpio_write_pin(CAPS_LOCK_LED_PIN, !led_state.caps_lock); 29 } 30 return true; 31 } 32 33 #ifdef ENCODER_ENABLE 34 bool encoder_update_kb(uint8_t index, bool clockwise) { 35 if (!encoder_update_user(index, clockwise)) { return false; } 36 if (index == 0) { 37 if (clockwise) { 38 tap_code(KC_PGDN); 39 } else { 40 tap_code(KC_PGUP); 41 } 42 } else if (index == 1) { 43 if (clockwise) { 44 tap_code(KC_VOLU); 45 } else { 46 tap_code(KC_VOLD); 47 } 48 } 49 return false; 50 } 51 #endif