diff options
author | Drashna Jaelre <drashna@live.com> | 2023-11-26 03:59:18 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-26 22:59:18 +1100 |
commit | 3ef06aa732ce8063e11b2f983592529883f7ecbc (patch) | |
tree | 7fa143f938e711b6db1c2ed40c36298b8f7604c7 /users/drashna | |
parent | 4601f339e48b0116ca139dd06ce55ef0b9ed598f (diff) |
Improve and Cleanup Shutdown callbacks (#21060)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
Diffstat (limited to 'users/drashna')
-rw-r--r-- | users/drashna/callbacks.c | 17 | ||||
-rw-r--r-- | users/drashna/callbacks.h | 2 | ||||
-rw-r--r-- | users/drashna/callbacks.md | 11 | ||||
-rw-r--r-- | users/drashna/template.c | 13 |
4 files changed, 17 insertions, 26 deletions
diff --git a/users/drashna/callbacks.c b/users/drashna/callbacks.c index cab7e5278f..2ace2ff9e6 100644 --- a/users/drashna/callbacks.c +++ b/users/drashna/callbacks.c @@ -73,8 +73,13 @@ void keyboard_post_init_user(void) { void rgb_matrix_update_pwm_buffers(void); #endif -__attribute__((weak)) void shutdown_keymap(void) {} -void shutdown_user(void) { +__attribute__((weak)) bool shutdown_keymap(bool jump_to_bootloader) { + return true; +} +bool shutdown_user(bool jump_to_bootloader) { + if (!shutdown_keymap(jump_to_bootloader)) { + return false; + } #ifdef RGBLIGHT_ENABLE rgblight_enable_noeeprom(); rgblight_mode_noeeprom(1); @@ -87,8 +92,7 @@ void shutdown_user(void) { #ifdef OLED_ENABLE oled_off(); #endif - - shutdown_keymap(); + return true; } __attribute__((weak)) void suspend_power_down_keymap(void) {} @@ -268,11 +272,6 @@ void matrix_slave_scan_user(void) { __attribute__((weak)) void housekeeping_task_keymap(void) {} void housekeeping_task_user(void) { - static bool has_ran_yet; - if (!has_ran_yet) { - has_ran_yet = true; - startup_user(); - } #ifdef TAP_DANCE_ENABLE // Run Diablo 3 macro checking code. run_diablo_macro_check(); #endif // TAP_DANCE_ENABLE diff --git a/users/drashna/callbacks.h b/users/drashna/callbacks.h index d3d260378d..77c0403f82 100644 --- a/users/drashna/callbacks.h +++ b/users/drashna/callbacks.h @@ -7,7 +7,7 @@ void keyboard_post_init_keymap(void); void matrix_init_secret(void); -void shutdown_keymap(void); +bool shutdown_keymap(bool jump_to_bootloader); void suspend_power_down_keymap(void); void suspend_wakeup_init_keymap(void); void matrix_scan_keymap(void); diff --git a/users/drashna/callbacks.md b/users/drashna/callbacks.md index e23f7f6d86..8ef2707fc2 100644 --- a/users/drashna/callbacks.md +++ b/users/drashna/callbacks.md @@ -53,9 +53,14 @@ void suspend_wakeup_init_user(void) { } -__attribute__ ((weak)) void shutdown_keymap(void) {} -void shutdown_user (void) { - shutdown_keymap(); +__attribute__((weak)) bool shutdown_keymap(bool jump_to_bootloader) { + return true; +} +bool shutdown_user(bool jump_to_bootloader) { + if (!shutdown_keymap(jump_to_bootloader)) { + return false; + } + return true; } __attribute__ ((weak)) void eeconfig_init_keymap(void) {} diff --git a/users/drashna/template.c b/users/drashna/template.c index c032bd1ce3..300cdbc934 100644 --- a/users/drashna/template.c +++ b/users/drashna/template.c @@ -55,16 +55,3 @@ void suspend_wakeup_init_user(void) { wait_ms(10); #endif } - -__attribute__((weak)) void startup_keymap(void) {} - -void startup_user(void) { -#ifdef RGBLIGHT_ENABLE - matrix_init_rgb(); -#endif // RGBLIGHT_ENABLE - startup_keymap(); -} - -__attribute__((weak)) void shutdown_keymap(void) {} - -void shutdown_user(void) { shutdown_keymap(); } |