diff --git a/config.def.h b/config.def.h index 8e1454065c..659f17e082 100644 --- a/config.def.h +++ b/config.def.h @@ -277,6 +277,7 @@ static bool menu_show_configurations = true; static bool menu_show_help = true; static bool menu_show_quit_retroarch = true; static bool menu_show_reboot = true; +static bool menu_show_shutdown = true; #if defined(HAVE_LAKKA) || defined(VITA) || defined(_3DS) static bool menu_show_core_updater = false; #else diff --git a/configuration.c b/configuration.c index cafbdc9b38..d6e5073b73 100644 --- a/configuration.c +++ b/configuration.c @@ -1366,6 +1366,7 @@ static struct config_bool_setting *populate_settings_bool(settings_t *settings, SETTING_BOOL("menu_show_help", &settings->bools.menu_show_help, true, menu_show_help, false); SETTING_BOOL("menu_show_quit_retroarch", &settings->bools.menu_show_quit_retroarch, true, menu_show_quit_retroarch, false); SETTING_BOOL("menu_show_reboot", &settings->bools.menu_show_reboot, true, menu_show_reboot, false); + SETTING_BOOL("menu_show_shutdown", &settings->bools.menu_show_shutdown, true, menu_show_shutdown, false); SETTING_BOOL("menu_show_online_updater", &settings->bools.menu_show_online_updater, true, menu_show_online_updater, false); SETTING_BOOL("menu_show_core_updater", &settings->bools.menu_show_core_updater, true, menu_show_core_updater, false); SETTING_BOOL("filter_by_current_core", &settings->bools.filter_by_current_core, false, false /* TODO */, false); diff --git a/configuration.h b/configuration.h index 806280fafa..a0376baa79 100644 --- a/configuration.h +++ b/configuration.h @@ -149,6 +149,7 @@ typedef struct settings bool menu_show_help; bool menu_show_quit_retroarch; bool menu_show_reboot; + bool menu_show_shutdown; bool menu_show_latency; bool menu_show_rewind; bool menu_show_overlays; diff --git a/intl/msg_hash_ar.h b/intl/msg_hash_ar.h index 40b8c57e06..5f4215af55 100644 --- a/intl/msg_hash_ar.h +++ b/intl/msg_hash_ar.h @@ -3329,6 +3329,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Show Reboot") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Show/hide the 'Reboot' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "القائمة السريعة") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_chs.h b/intl/msg_hash_chs.h index 74cfb205c0..34ee6fedd4 100644 --- a/intl/msg_hash_chs.h +++ b/intl/msg_hash_chs.h @@ -3145,6 +3145,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Show Reboot") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Show/hide the 'Reboot' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Quick Menu") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_cht.h b/intl/msg_hash_cht.h index 7610e018e8..b9845b4c13 100644 --- a/intl/msg_hash_cht.h +++ b/intl/msg_hash_cht.h @@ -3137,6 +3137,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Show Reboot") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Show/hide the 'Reboot' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Quick Menu") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_de.h b/intl/msg_hash_de.h index 4fee19c045..69e95be72a 100644 --- a/intl/msg_hash_de.h +++ b/intl/msg_hash_de.h @@ -3233,6 +3233,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Zeige 'Neu starten'") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Zeige/verstecke die Option 'Neu starten'.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Spielmenü") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_eo.h b/intl/msg_hash_eo.h index 07a7604035..91426ef4d0 100644 --- a/intl/msg_hash_eo.h +++ b/intl/msg_hash_eo.h @@ -3010,6 +3010,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Show Reboot") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Show/hide the 'Reboot' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Quick Menu") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_es.h b/intl/msg_hash_es.h index 443b879ca3..42832cd482 100644 --- a/intl/msg_hash_es.h +++ b/intl/msg_hash_es.h @@ -5758,6 +5758,14 @@ MSG_HASH( MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Mostrar/ocultar la opción de 'Reiniciar'" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown" + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option." + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Menú rápido" diff --git a/intl/msg_hash_fr.h b/intl/msg_hash_fr.h index 3e42334bac..d0b3503a0b 100644 --- a/intl/msg_hash_fr.h +++ b/intl/msg_hash_fr.h @@ -3175,6 +3175,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Afficher Redémarrer") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Afficher/cacher l'option 'Redémarrer'.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Afficher Éteindre") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Afficher/cacher l'option 'Éteindre'.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Menu rapide") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_it.h b/intl/msg_hash_it.h index 805aca1d83..309116cf84 100644 --- a/intl/msg_hash_it.h +++ b/intl/msg_hash_it.h @@ -3233,6 +3233,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Visualizza Riavvia") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Mostra/Nasconde l'opzione 'Riavvia'.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Menu rapido") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_ja.h b/intl/msg_hash_ja.h index f898091ece..e081a85446 100644 --- a/intl/msg_hash_ja.h +++ b/intl/msg_hash_ja.h @@ -3241,6 +3241,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "「再起動」を表示") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Show/hide the 'Reboot' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "クイックメニュー") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_ko.h b/intl/msg_hash_ko.h index 9544404167..31c7e48614 100644 --- a/intl/msg_hash_ko.h +++ b/intl/msg_hash_ko.h @@ -3136,6 +3136,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Show Reboot") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Show/hide the 'Reboot' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Quick Menu") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_lbl.h b/intl/msg_hash_lbl.h index 664d9b86f6..5594a70296 100644 --- a/intl/msg_hash_lbl.h +++ b/intl/msg_hash_lbl.h @@ -1437,6 +1437,8 @@ MSG_HASH(MENU_ENUM_LABEL_MENU_SHOW_QUIT_RETROARCH, "menu_show_quit_retroarch") MSG_HASH(MENU_ENUM_LABEL_MENU_SHOW_REBOOT, "menu_show_reboot") +MSG_HASH(MENU_ENUM_LABEL_MENU_SHOW_SHUTDOWN, + "menu_show_shutdown") MSG_HASH(MENU_ENUM_LABEL_QUICK_MENU_SHOW_TAKE_SCREENSHOT, "quick_menu_show_take_screenshot") MSG_HASH(MENU_ENUM_LABEL_QUICK_MENU_SHOW_SAVE_LOAD_STATE, diff --git a/intl/msg_hash_nl.h b/intl/msg_hash_nl.h index 82539b3e7c..a54619922d 100644 --- a/intl/msg_hash_nl.h +++ b/intl/msg_hash_nl.h @@ -3012,6 +3012,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Toon Herstart") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Toon/verberg de 'Herstart' optie.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Snelmenu") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_pl.h b/intl/msg_hash_pl.h index cd21cc51ef..b60250234b 100644 --- a/intl/msg_hash_pl.h +++ b/intl/msg_hash_pl.h @@ -3382,6 +3382,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Pokaż restart") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Pokaż/ukryj opcję 'Restart'.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Szybkie menu") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_pt_br.h b/intl/msg_hash_pt_br.h index a226b9639a..188d3f8a35 100644 --- a/intl/msg_hash_pt_br.h +++ b/intl/msg_hash_pt_br.h @@ -3404,6 +3404,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Exibir Reiniciar") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Exibir/ocultar a opção 'Reiniciar'.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Menu Rápido") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_pt_pt.h b/intl/msg_hash_pt_pt.h index d93a31af7a..b79ce142cf 100644 --- a/intl/msg_hash_pt_pt.h +++ b/intl/msg_hash_pt_pt.h @@ -3110,6 +3110,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Mostrar 'Reiniciar'") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Mostrar/esconder a opção 'Reiniciar'.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Menu rápido") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_ru.h b/intl/msg_hash_ru.h index cbc2d29876..db1486e1e8 100644 --- a/intl/msg_hash_ru.h +++ b/intl/msg_hash_ru.h @@ -3184,6 +3184,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Показать Перезагрузить") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Показать/скрыть настройку 'Перезагрузить'.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Быстрое меню") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index e354c877ec..8dd0fb6b17 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -3416,6 +3416,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Show Reboot") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Show/hide the 'Reboot' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Quick Menu") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/intl/msg_hash_vn.h b/intl/msg_hash_vn.h index 2a66b87c37..55b8779051 100644 --- a/intl/msg_hash_vn.h +++ b/intl/msg_hash_vn.h @@ -3167,6 +3167,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT, "Show Reboot") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT, "Show/hide the 'Reboot' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + "Show Shutdown") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN, + "Show/hide the 'Shutdown' option.") MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS, "Quick Menu") MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS, diff --git a/menu/cbs/menu_cbs_sublabel.c b/menu/cbs/menu_cbs_sublabel.c index be4e42cb40..45513dfa14 100644 --- a/menu/cbs/menu_cbs_sublabel.c +++ b/menu/cbs/menu_cbs_sublabel.c @@ -361,6 +361,7 @@ default_sublabel_macro(action_bind_sublabel_menu_show_configurations, default_sublabel_macro(action_bind_sublabel_menu_show_help, MENU_ENUM_SUBLABEL_MENU_SHOW_HELP) default_sublabel_macro(action_bind_sublabel_menu_show_quit_retroarch, MENU_ENUM_SUBLABEL_MENU_SHOW_QUIT_RETROARCH) default_sublabel_macro(action_bind_sublabel_menu_show_reboot, MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT) +default_sublabel_macro(action_bind_sublabel_menu_show_shutdown, MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN) default_sublabel_macro(action_bind_sublabel_menu_show_online_updater, MENU_ENUM_SUBLABEL_MENU_SHOW_ONLINE_UPDATER) default_sublabel_macro(action_bind_sublabel_menu_show_core_updater, MENU_ENUM_SUBLABEL_MENU_SHOW_CORE_UPDATER) default_sublabel_macro(action_bind_sublabel_menu_music_tab, MENU_ENUM_SUBLABEL_CONTENT_SHOW_MUSIC) @@ -934,6 +935,9 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs, case MENU_ENUM_LABEL_MENU_SHOW_REBOOT: BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_reboot); break; + case MENU_ENUM_LABEL_MENU_SHOW_SHUTDOWN: + BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_shutdown); + break; case MENU_ENUM_LABEL_MENU_SHOW_ONLINE_UPDATER: BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_online_updater); break; diff --git a/menu/drivers/materialui.c b/menu/drivers/materialui.c index 9e1a326be1..0975837db1 100644 --- a/menu/drivers/materialui.c +++ b/menu/drivers/materialui.c @@ -2153,8 +2153,11 @@ static int materialui_list_push(void *data, void *userdata, menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry); } - entry.enum_idx = MENU_ENUM_LABEL_SHUTDOWN; - menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry); + if (settings->bools.menu_show_shutdown) + { + entry.enum_idx = MENU_ENUM_LABEL_SHUTDOWN; + menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry); + } #endif info->need_push = true; ret = 0; diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index be17eb7407..a648b39e3a 100755 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -5102,8 +5102,12 @@ static int xmb_list_push(void *data, void *userdata, menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry); } - entry.enum_idx = MENU_ENUM_LABEL_SHUTDOWN; - menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry); + if (settings->bools.menu_show_shutdown) + { + entry.enum_idx = MENU_ENUM_LABEL_SHUTDOWN; + menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry); + } + info->need_push = true; ret = 0; } diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index e31d65db27..f4efe1828e 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -5268,6 +5268,10 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data) MENU_ENUM_LABEL_MENU_SHOW_REBOOT, PARSE_ONLY_BOOL, false); + menu_displaylist_parse_settings_enum(menu, info, + MENU_ENUM_LABEL_MENU_SHOW_SHUTDOWN, + PARSE_ONLY_BOOL, false); + menu_displaylist_parse_settings_enum(menu, info, MENU_ENUM_LABEL_CONTENT_SHOW_SETTINGS, PARSE_ONLY_BOOL, false); @@ -6821,9 +6825,10 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data) menu_displaylist_parse_settings_enum(menu, info, MENU_ENUM_LABEL_REBOOT, PARSE_ACTION, false); - menu_displaylist_parse_settings_enum(menu, info, - MENU_ENUM_LABEL_SHUTDOWN, - PARSE_ACTION, false); + if (settings->bools.menu_show_shutdown) + menu_displaylist_parse_settings_enum(menu, info, + MENU_ENUM_LABEL_SHUTDOWN, + PARSE_ACTION, false); info->need_push = true; } break; diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 27d45ffc16..70e7d4a495 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -5937,6 +5937,21 @@ static bool setting_append_list( general_write_handler, general_read_handler, SD_FLAG_NONE); + + CONFIG_BOOL( + list, list_info, + &settings->bools.menu_show_shutdown, + MENU_ENUM_LABEL_MENU_SHOW_SHUTDOWN, + MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN, + menu_show_shutdown, + MENU_ENUM_LABEL_VALUE_OFF, + MENU_ENUM_LABEL_VALUE_ON, + &group_info, + &subgroup_info, + parent_group, + general_write_handler, + general_read_handler, + SD_FLAG_NONE); #endif #ifdef HAVE_XMB diff --git a/msg_hash.h b/msg_hash.h index dee2b31bf7..59cf05d3b6 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -753,6 +753,7 @@ enum msg_hash_enums MENU_LABEL(MENU_SHOW_HELP), MENU_LABEL(MENU_SHOW_QUIT_RETROARCH), MENU_LABEL(MENU_SHOW_REBOOT), + MENU_LABEL(MENU_SHOW_SHUTDOWN), MENU_LABEL(MENU_SHOW_ONLINE_UPDATER), MENU_LABEL(MENU_SHOW_CORE_UPDATER), MENU_LABEL(MENU_ENABLE_KIOSK_MODE),