summaryrefslogtreecommitdiff
path: root/keyboards/lfkeyboards/lfk78/lfk78.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/lfkeyboards/lfk78/lfk78.c')
-rw-r--r--keyboards/lfkeyboards/lfk78/lfk78.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/keyboards/lfkeyboards/lfk78/lfk78.c b/keyboards/lfkeyboards/lfk78/lfk78.c
index 3bf7c40d15..6fe282bb0b 100644
--- a/keyboards/lfkeyboards/lfk78/lfk78.c
+++ b/keyboards/lfkeyboards/lfk78/lfk78.c
@@ -21,12 +21,10 @@ void matrix_init_kb(void) {
#endif
}
-void matrix_scan_kb(void) {
+void housekeeping_task_kb(void) {
#ifdef WATCHDOG_ENABLE
wdt_reset();
#endif
-
- matrix_scan_user();
}
void clicking_notes(uint16_t freq, uint16_t duration) {
@@ -45,20 +43,19 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record) {
if (click_toggle && record->event.pressed) {
clicking_notes(click_hz, click_time);
}
-
- if (keycode == QK_BOOT) {
- reset_keyboard_kb();
- }
-
return process_record_user(keycode, record);
}
-void reset_keyboard_kb(void) {
+bool shutdown_kb(bool jump_to_bootloader) {
#ifdef WATCHDOG_ENABLE
+ // Unconditionally run so shutdown_user can't mess up watchdog
MCUSR = 0;
wdt_disable();
wdt_reset();
#endif
- reset_keyboard();
+ if (!shutdown_user(jump_to_bootloader)) {
+ return false;
+ }
+ return true;
}