diff --git a/config.def.h b/config.def.h index a8134cf740..cee950639b 100644 --- a/config.def.h +++ b/config.def.h @@ -240,6 +240,7 @@ static bool menu_show_online_updater = true; static bool menu_show_load_core = true; static bool menu_show_load_content = true; static bool menu_show_information = true; +static bool menu_show_configurations = true; #if defined(HAVE_LAKKA) || defined(VITA) static bool menu_show_core_updater = false; diff --git a/configuration.c b/configuration.c index d74681b7bb..02118fa972 100644 --- a/configuration.c +++ b/configuration.c @@ -1205,6 +1205,7 @@ static struct config_bool_setting *populate_settings_bool(settings_t *settings, SETTING_BOOL("menu_show_load_core", &settings->bools.menu_show_load_core, true, menu_show_load_core, false); SETTING_BOOL("menu_show_load_content", &settings->bools.menu_show_load_content, true, menu_show_load_content, false); SETTING_BOOL("menu_show_information", &settings->bools.menu_show_information, true, menu_show_information, false); + SETTING_BOOL("menu_show_configurations", &settings->bools.menu_show_configurations, true, menu_show_configurations, 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); #ifdef HAVE_FFMPEG diff --git a/configuration.h b/configuration.h index af6bf1196e..e6271e0b87 100644 --- a/configuration.h +++ b/configuration.h @@ -130,6 +130,7 @@ typedef struct settings bool menu_show_load_core; bool menu_show_load_content; bool menu_show_information; + bool menu_show_configurations; bool menu_materialui_icons_enable; bool menu_xmb_shadows_enable; bool menu_xmb_show_settings; diff --git a/intl/msg_hash_chs.h b/intl/msg_hash_chs.h index 5ed0503e9a..f0db79df23 100644 --- a/intl/msg_hash_chs.h +++ b/intl/msg_hash_chs.h @@ -3075,3 +3075,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_cht.h b/intl/msg_hash_cht.h index e1d65640c7..ce965f00f3 100644 --- a/intl/msg_hash_cht.h +++ b/intl/msg_hash_cht.h @@ -3075,3 +3075,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_de.h b/intl/msg_hash_de.h index 54d30cea4d..4bc8bf2cfe 100644 --- a/intl/msg_hash_de.h +++ b/intl/msg_hash_de.h @@ -3069,3 +3069,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_eo.h b/intl/msg_hash_eo.h index 0fb01a7c76..f4611f33c3 100644 --- a/intl/msg_hash_eo.h +++ b/intl/msg_hash_eo.h @@ -2938,3 +2938,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_fr.h b/intl/msg_hash_fr.h index 576da72d2f..55bd99ea6b 100644 --- a/intl/msg_hash_fr.h +++ b/intl/msg_hash_fr.h @@ -3107,3 +3107,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_it.h b/intl/msg_hash_it.h index 4f0fe73486..161a6f94df 100644 --- a/intl/msg_hash_it.h +++ b/intl/msg_hash_it.h @@ -3161,3 +3161,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_ja.h b/intl/msg_hash_ja.h index 1a4a76ef08..91eac0202a 100644 --- a/intl/msg_hash_ja.h +++ b/intl/msg_hash_ja.h @@ -3077,3 +3077,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_ko.h b/intl/msg_hash_ko.h index 7e543738f4..32eeb85525 100644 --- a/intl/msg_hash_ko.h +++ b/intl/msg_hash_ko.h @@ -3070,3 +3070,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_lbl.h b/intl/msg_hash_lbl.h index 3b8509ccc2..4830eeb8ab 100644 --- a/intl/msg_hash_lbl.h +++ b/intl/msg_hash_lbl.h @@ -1311,3 +1311,5 @@ MSG_HASH(MENU_ENUM_LABEL_MENU_SHOW_LOAD_CONTENT, "menu_show_load_content") MSG_HASH(MENU_ENUM_LABEL_MENU_SHOW_INFORMATION, "menu_show_information") +MSG_HASH(MENU_ENUM_LABEL_MENU_SHOW_CONFIGURATIONS, + "menu_show_configurations") diff --git a/intl/msg_hash_nl.h b/intl/msg_hash_nl.h index 532b8b3049..46efe1600d 100644 --- a/intl/msg_hash_nl.h +++ b/intl/msg_hash_nl.h @@ -2938,3 +2938,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_pt_br.h b/intl/msg_hash_pt_br.h index de0c5ef025..df35ab7ae5 100644 --- a/intl/msg_hash_pt_br.h +++ b/intl/msg_hash_pt_br.h @@ -4006,3 +4006,9 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option." ) +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations" + ) +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option." + ) diff --git a/intl/msg_hash_pt_pt.h b/intl/msg_hash_pt_pt.h index a38b9fcf05..1258b9e630 100644 --- a/intl/msg_hash_pt_pt.h +++ b/intl/msg_hash_pt_pt.h @@ -3045,3 +3045,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_ru.h b/intl/msg_hash_ru.h index 8b90ffeb65..ad137e2b13 100644 --- a/intl/msg_hash_ru.h +++ b/intl/msg_hash_ru.h @@ -3128,3 +3128,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index 3e8c0d28a7..cecfeb67a0 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -3163,3 +3163,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/intl/msg_hash_vn.h b/intl/msg_hash_vn.h index 23db161931..268e94d5a4 100644 --- a/intl/msg_hash_vn.h +++ b/intl/msg_hash_vn.h @@ -3099,3 +3099,7 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_INFORMATION, "Show Information") MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION, "Show/hide the 'Information' option.") +MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + "Show Configurations") +MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS, + "Show/hide the 'Configurations' option.") diff --git a/menu/cbs/menu_cbs_sublabel.c b/menu/cbs/menu_cbs_sublabel.c index 3af26d5996..609427f86d 100644 --- a/menu/cbs/menu_cbs_sublabel.c +++ b/menu/cbs/menu_cbs_sublabel.c @@ -286,16 +286,17 @@ default_sublabel_macro(action_bind_sublabel_xmb_icon_theme, default_sublabel_macro(action_bind_sublabel_xmb_shadows_enable, MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE) default_sublabel_macro(action_bind_sublabel_menu_color_theme, MENU_ENUM_SUBLABEL_MATERIALUI_MENU_COLOR_THEME) default_sublabel_macro(action_bind_sublabel_menu_wallpaper_opacity, MENU_ENUM_SUBLABEL_MENU_WALLPAPER_OPACITY) -default_sublabel_macro(action_bind_sublabel_menu_framebuffer_opacity, MENU_ENUM_SUBLABEL_MENU_FRAMEBUFFER_OPACITY) +default_sublabel_macro(action_bind_sublabel_menu_framebuffer_opacity, MENU_ENUM_SUBLABEL_MENU_FRAMEBUFFER_OPACITY) default_sublabel_macro(action_bind_sublabel_menu_ribbon_enable, MENU_ENUM_SUBLABEL_XMB_RIBBON_ENABLE) default_sublabel_macro(action_bind_sublabel_menu_font, MENU_ENUM_SUBLABEL_XMB_FONT) default_sublabel_macro(action_bind_sublabel_menu_favorites_tab, MENU_ENUM_SUBLABEL_XMB_SHOW_FAVORITES) default_sublabel_macro(action_bind_sublabel_menu_images_tab, MENU_ENUM_SUBLABEL_XMB_SHOW_IMAGES) default_sublabel_macro(action_bind_sublabel_menu_show_load_core, MENU_ENUM_SUBLABEL_MENU_SHOW_LOAD_CORE) default_sublabel_macro(action_bind_sublabel_menu_show_load_content, MENU_ENUM_SUBLABEL_MENU_SHOW_LOAD_CONTENT) -default_sublabel_macro(action_bind_sublabel_menu_show_information , MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION) +default_sublabel_macro(action_bind_sublabel_menu_show_information, MENU_ENUM_SUBLABEL_MENU_SHOW_INFORMATION) +default_sublabel_macro(action_bind_sublabel_menu_show_configurations, MENU_ENUM_SUBLABEL_MENU_SHOW_CONFIGURATIONS) 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_show_core_updater, MENU_ENUM_SUBLABEL_MENU_SHOW_CORE_UPDATER) default_sublabel_macro(action_bind_sublabel_menu_music_tab, MENU_ENUM_SUBLABEL_XMB_SHOW_MUSIC) default_sublabel_macro(action_bind_sublabel_menu_video_tab, MENU_ENUM_SUBLABEL_XMB_SHOW_VIDEO) default_sublabel_macro(action_bind_sublabel_menu_netplay_tab, MENU_ENUM_SUBLABEL_XMB_SHOW_NETPLAY) @@ -612,6 +613,9 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs, case MENU_ENUM_LABEL_MENU_SHOW_INFORMATION: BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_information); break; + case MENU_ENUM_LABEL_MENU_SHOW_CONFIGURATIONS: + BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_configurations); + 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/xmb.c b/menu/drivers/xmb.c index 0d840fb12d..e9afd587e5 100755 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -4363,8 +4363,12 @@ static int xmb_list_push(void *data, void *userdata, entry.enum_idx = MENU_ENUM_LABEL_RESTART_RETROARCH; menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry); #endif - entry.enum_idx = MENU_ENUM_LABEL_CONFIGURATIONS_LIST; - menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry); + + if (settings->bools.menu_show_configurations) + { + entry.enum_idx = MENU_ENUM_LABEL_CONFIGURATIONS_LIST; + menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry); + } entry.enum_idx = MENU_ENUM_LABEL_HELP_LIST; menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry); diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index c3c7e61208..ac097ece22 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -5299,6 +5299,10 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data) MENU_ENUM_LABEL_MENU_SHOW_INFORMATION, PARSE_ONLY_BOOL, false); + menu_displaylist_parse_settings_enum(menu, info, + MENU_ENUM_LABEL_MENU_SHOW_CONFIGURATIONS, + PARSE_ONLY_BOOL, false); + menu_displaylist_parse_settings_enum(menu, info, MENU_ENUM_LABEL_XMB_SHOW_SETTINGS, PARSE_ONLY_BOOL, false); diff --git a/menu/menu_setting.c b/menu/menu_setting.c index f70fd4c03c..6c328c5093 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -5424,6 +5424,21 @@ static bool setting_append_list( general_read_handler, SD_FLAG_NONE); + CONFIG_BOOL( + list, list_info, + &settings->bools.menu_show_configurations, + MENU_ENUM_LABEL_MENU_SHOW_CONFIGURATIONS, + MENU_ENUM_LABEL_VALUE_MENU_SHOW_CONFIGURATIONS, + menu_show_configurations, + MENU_ENUM_LABEL_VALUE_OFF, + MENU_ENUM_LABEL_VALUE_ON, + &group_info, + &subgroup_info, + parent_group, + general_write_handler, + general_read_handler, + SD_FLAG_LAKKA_ADVANCED); + CONFIG_BOOL( list, list_info, &settings->bools.menu_xmb_show_settings, diff --git a/msg_hash.h b/msg_hash.h index 9e564d5d72..7b7f484bc5 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -675,6 +675,7 @@ enum msg_hash_enums MENU_LABEL(MENU_SHOW_LOAD_CORE), MENU_LABEL(MENU_SHOW_LOAD_CONTENT), MENU_LABEL(MENU_SHOW_INFORMATION), + MENU_LABEL(MENU_SHOW_CONFIGURATIONS), MENU_LABEL(MENU_SHOW_ONLINE_UPDATER), MENU_LABEL(MENU_SHOW_CORE_UPDATER), MENU_LABEL(RUN_MUSIC),