summaryrefslogtreecommitdiff
path: root/users/drashna
diff options
context:
space:
mode:
Diffstat (limited to 'users/drashna')
-rw-r--r--users/drashna/callbacks.c17
-rw-r--r--users/drashna/callbacks.h2
-rw-r--r--users/drashna/callbacks.md11
-rw-r--r--users/drashna/template.c13
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(); }