diff options
-rw-r--r-- | apps/lang/english.lang | 14 | ||||
-rw-r--r-- | apps/menus/settings_menu.c | 2 | ||||
-rw-r--r-- | apps/misc.c | 5 | ||||
-rw-r--r-- | apps/settings.h | 3 | ||||
-rw-r--r-- | apps/settings_list.c | 4 | ||||
-rw-r--r-- | firmware/backlight.c | 9 | ||||
-rw-r--r-- | manual/appendix/config_file_options.tex | 1 | ||||
-rw-r--r-- | manual/configure_rockbox/startup_shutdown_options.tex | 5 |
8 files changed, 41 insertions, 2 deletions
diff --git a/apps/lang/english.lang b/apps/lang/english.lang index 50cec84b7c..333527c71c 100644 --- a/apps/lang/english.lang +++ b/apps/lang/english.lang @@ -16136,3 +16136,17 @@ *: "List Wraparound" </voice> </phrase> +<phrase> + id: LANG_SHOW_SHUTDOWN_MESSAGE + desc: in Settings + user: core + <source> + *: "Show Shutdown Message" + </source> + <dest> + *: "Show Shutdown Message" + </dest> + <voice> + *: "Show Shutdown Message" + </voice> +</phrase>
\ No newline at end of file diff --git a/apps/menus/settings_menu.c b/apps/menus/settings_menu.c index 1dce12907f..562a89e85a 100644 --- a/apps/menus/settings_menu.c +++ b/apps/menus/settings_menu.c @@ -563,9 +563,11 @@ MENUITEM_SETTING(sleeptimer_on_startup, &global_settings.sleeptimer_on_startup, NULL); MENUITEM_SETTING(keypress_restarts_sleeptimer, &global_settings.keypress_restarts_sleeptimer, NULL); +MENUITEM_SETTING(show_shutdown_message, &global_settings.show_shutdown_message, NULL); MAKE_MENU(startup_shutdown_menu, ID2P(LANG_STARTUP_SHUTDOWN), 0, Icon_System_menu, + &show_shutdown_message, &start_screen, &poweroff, &sleeptimer_toggle, diff --git a/apps/misc.c b/apps/misc.c index 7da86930ba..2668ba714d 100644 --- a/apps/misc.c +++ b/apps/misc.c @@ -323,7 +323,10 @@ static bool clean_shutdown(void (*callback)(void *), void *parameter) #endif level = battery_level(); if (level > 10 || level < 0) - splash(0, str(LANG_SHUTTINGDOWN)); + { + if (global_settings.show_shutdown_message) + splash(0, str(LANG_SHUTTINGDOWN)); + } else { msg_id = LANG_WARNING_BATTERY_LOW; diff --git a/apps/settings.h b/apps/settings.h index ce7421d95e..4374cc720b 100644 --- a/apps/settings.h +++ b/apps/settings.h @@ -761,6 +761,9 @@ struct user_settings bool sleeptimer_on_startup; bool keypress_restarts_sleeptimer; + bool show_shutdown_message; /* toggle whether display lights up and displays message + when shutting down */ + #ifdef HAVE_MORSE_INPUT bool morse_input; /* text input method setting */ #endif diff --git a/apps/settings_list.c b/apps/settings_list.c index 383ec9cd0e..d8702148ba 100644 --- a/apps/settings_list.c +++ b/apps/settings_list.c @@ -1956,6 +1956,10 @@ const struct settings_list settings[] = { "sleeptimer on startup", NULL), OFFON_SETTING(0, keypress_restarts_sleeptimer, LANG_KEYPRESS_RESTARTS_SLEEP_TIMER, false, "keypress restarts sleeptimer", set_keypress_restarts_sleep_timer), + + OFFON_SETTING(0, show_shutdown_message, LANG_SHOW_SHUTDOWN_MESSAGE, true, + "show shutdown message", NULL), + #ifdef HAVE_TOUCHPAD_SENSITIVITY_SETTING /* If specific values are set for touchpad sensitivity setting we use those */ #if (defined(MAX_TOUCHPAD_SENSITIVITY_SETTING) \ diff --git a/firmware/backlight.c b/firmware/backlight.c index e8a71af12c..1284db4659 100644 --- a/firmware/backlight.c +++ b/firmware/backlight.c @@ -21,6 +21,9 @@ * ****************************************************************************/ #include "config.h" +#if !defined(BOOTLOADER) +#include "settings.h" +#endif #include <stdlib.h> #include "cpu.h" #include "kernel.h" @@ -667,7 +670,11 @@ void backlight_thread(void) case SYS_POWEROFF: /* Lock backlight on poweroff so it doesn't */ locked = true; /* go off before power is actually cut. */ - /* fall through */ +#if !defined(BOOTLOADER) + if (!global_settings.show_shutdown_message) + break; +#endif + /* else fall through */ #if CONFIG_CHARGING case SYS_CHARGER_CONNECTED: case SYS_CHARGER_DISCONNECTED: diff --git a/manual/appendix/config_file_options.tex b/manual/appendix/config_file_options.tex index fd08f64335..5cf5b1b0f7 100644 --- a/manual/appendix/config_file_options.tex +++ b/manual/appendix/config_file_options.tex @@ -107,6 +107,7 @@ idle poweroff & off, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 30, 45, 60 & min\\ + show shutdown message & off, on & N/A\\ sleeptimer duration & 5 to 300 (in steps of 5) & min\\ sleeptimer on startup & off, on & N/A\\ diff --git a/manual/configure_rockbox/startup_shutdown_options.tex b/manual/configure_rockbox/startup_shutdown_options.tex index 20dd21356d..7952985ece 100644 --- a/manual/configure_rockbox/startup_shutdown_options.tex +++ b/manual/configure_rockbox/startup_shutdown_options.tex @@ -5,6 +5,11 @@ The \setting{Startup/Shutdown} sub menu allows you to configure items which are run at startup, or initiate a shutdown when conditions are met. +\begin{description} + \item[Show Shutdown Message.] If set, a message will be displayed and the display + will light up before the device shuts down. +\end{description} + \subsection{Start Screen} Set the screen that Rockbox will start in. The default is the main menu but the following options are available: |