[Keyboard] Fixes fox idb_60 keyboard (#10827)

* Fixed VIA keymap build warning on gcc 10.2.0, Fixed misleading LED function names, Fixed formatting

* Fix: Allow layer LED indicators to be overriden on the keymap level

* Implemented suggested change from led_set_kb callback to led_update_kb callback

* Apply suggestions from code review

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/idb/idb_60/idb_60.c

Co-authored-by: Drashna Jaelre <drashna@live.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
master
Thorben 2020-11-25 18:10:42 +01:00 committed by GitHub
parent 86b0acbae0
commit 50611bd814
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 164 additions and 201 deletions

View File

@ -5,17 +5,6 @@ void keyboard_pre_init_kb(void) {
setPinOutput(C5); setPinOutput(C5);
} }
void led_set_kb(uint8_t usb_led) {
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
_idb_60_caps_led_on();
} else {
_idb_60_caps_led_off();
}
led_set_user(usb_led);
}
inline void _idb_60_caps_led_on(void) { inline void _idb_60_caps_led_on(void) {
writePinLow(C5); writePinLow(C5);
} }
@ -31,3 +20,28 @@ inline void _idb_60_caps_led_off(void) {
inline void _idb_60_fn_led_off(void) { inline void _idb_60_fn_led_off(void) {
writePinHigh(C4); writePinHigh(C4);
} }
// Capslock LED indicator
bool led_update_kb(led_t led_state) {
bool res = led_update_user(led_state);
if (res) {
if (led_state.caps_lock) {
_idb_60_caps_led_on();
} else {
_idb_60_caps_led_off();
}
}
return res;
}
// Layer LED indicator - drive LED when not on base layer
__attribute__((weak)) layer_state_t layer_state_set_user(layer_state_t state) {
if (get_highest_layer(state) == 0) {
_idb_60_fn_led_off();
} else {
_idb_60_fn_led_on();
}
return state;
}

View File

@ -32,15 +32,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
), ),
}; };
// Layer LED indicators
layer_state_t layer_state_set_user(layer_state_t state) {
if (layer_state_cmp(state, 1)) {
_idb_60_fn_led_on();
} else {
_idb_60_fn_led_off();
}
return state;
}

View File

@ -32,15 +32,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
), ),
}; };
// Layer LED indicators
layer_state_t layer_state_set_user(layer_state_t state) {
if (layer_state_cmp(state, 1)) {
_idb_60_fn_led_on();
} else {
_idb_60_fn_led_off();
}
return state;
}

View File

@ -25,15 +25,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
) )
}; };
// Layer LED indicators
layer_state_t layer_state_set_user(layer_state_t state) {
if (layer_state_cmp(state, 1)) {
_idb_60_fn_led_on();
} else {
_idb_60_fn_led_off();
}
return state;
}

View File

@ -32,15 +32,3 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
), ),
}; };
// Layer LED indicators
layer_state_t layer_state_set_user(layer_state_t state) {
if (layer_state_cmp(state, 1)) {
_idb_60_fn_led_on();
} else {
_idb_60_fn_led_off();
}
return state;
}

View File

@ -1,2 +1 @@
VIA_ENABLE = yes VIA_ENABLE = yes
LTO_ENABLE = yes

View File

@ -22,6 +22,4 @@ KEYBOARD_LOCK_ENABLE = no # Allow locking of keyboard via magic key
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
MIDI_ENABLE = no # MIDI controls BLUETOOTH_ENABLE = no # Enable Bluetooth
UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID