This commit is contained in:
twinaphex 2018-04-24 14:08:38 +02:00
parent 757d1baa8d
commit f228b26755
2 changed files with 389 additions and 366 deletions

View File

@ -4191,6 +4191,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
{
size_t i;
menu_ctx_displaylist_t disp_list;
unsigned count = 0;
int ret = 0;
core_info_list_t *list = NULL;
menu_handle_t *menu = NULL;
@ -5180,7 +5181,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
MENU_ENUM_LABEL_MENU_SHOW_HELP,
PARSE_ONLY_BOOL, false);
#if defined(HAVE_LAKKA)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_MENU_SHOW_QUIT_RETROARCH,
PARSE_ONLY_BOOL, false);
@ -5188,7 +5188,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_MENU_SHOW_REBOOT,
PARSE_ONLY_BOOL, false);
#endif
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CONTENT_SHOW_SETTINGS,
@ -5202,19 +5201,15 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
MENU_ENUM_LABEL_CONTENT_SHOW_FAVORITES,
PARSE_ONLY_BOOL, false);
#ifdef HAVE_IMAGEVIEWER
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CONTENT_SHOW_IMAGES,
PARSE_ONLY_BOOL, false);
#endif
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CONTENT_SHOW_MUSIC,
PARSE_ONLY_BOOL, false);
#ifdef HAVE_FFMPEG
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CONTENT_SHOW_VIDEO,
PARSE_ONLY_BOOL, false);
#endif
#ifdef HAVE_NETWORKING
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CONTENT_SHOW_NETPLAY,
@ -5223,11 +5218,9 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CONTENT_SHOW_HISTORY,
PARSE_ONLY_BOOL, false);
#ifdef HAVE_LIBRETRODB
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CONTENT_SHOW_ADD,
PARSE_ONLY_BOOL, false);
#endif
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CONTENT_SHOW_PLAYLISTS,
PARSE_ONLY_BOOL, false);
@ -5297,8 +5290,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
info->need_push = true;
break;
case DISPLAYLIST_MENU_SETTINGS_LIST:
{
unsigned count = 0;
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
if (menu_displaylist_parse_settings_enum(menu, info,
@ -5427,7 +5418,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
info->need_refresh = true;
info->need_push = true;
}
break;
case DISPLAYLIST_USER_INTERFACE_SETTINGS_LIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
@ -5517,8 +5507,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
break;
case DISPLAYLIST_UPDATER_SETTINGS_LIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
{
unsigned count = 0;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CORE_UPDATER_BUILDBOT_URL,
PARSE_ONLY_STRING, false) != -1)
@ -5538,7 +5526,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
msg_hash_to_str(MENU_ENUM_LABEL_NO_SETTINGS_FOUND),
MENU_ENUM_LABEL_NO_SETTINGS_FOUND,
0, 0, 0);
}
info->need_refresh = true;
info->need_push = true;
@ -5594,9 +5581,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
break;
case DISPLAYLIST_NETWORK_SETTINGS_LIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
{
unsigned user;
unsigned count = 0;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_NETPLAY_PUBLIC_ANNOUNCE,
@ -5666,6 +5650,9 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
MENU_ENUM_LABEL_NETPLAY_SHARE_ANALOG,
PARSE_ONLY_UINT, false) != -1)
count++;
{
unsigned user;
for (user = 0; user < MAX_USERS; user++)
{
if (menu_displaylist_parse_settings_enum(menu, info,
@ -5673,6 +5660,8 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
PARSE_ONLY_BOOL, false) != -1)
count++;
}
}
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_NETWORK_CMD_ENABLE,
PARSE_ONLY_BOOL, false) != -1)
@ -5691,6 +5680,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
count++;
{
unsigned user;
unsigned max_users = *(input_driver_get_uint(INPUT_ACTION_MAX_USERS));
for(user = 0; user < max_users; user++)
{
@ -5716,24 +5706,33 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
msg_hash_to_str(MENU_ENUM_LABEL_NO_SETTINGS_FOUND),
MENU_ENUM_LABEL_NO_SETTINGS_FOUND,
0, 0, 0);
}
info->need_refresh = true;
info->need_push = true;
break;
case DISPLAYLIST_LAKKA_SERVICES_LIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
menu_displaylist_parse_settings_enum(menu, info,
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_SSH_ENABLE,
PARSE_ONLY_BOOL, false);
PARSE_ONLY_BOOL, false) == 0)
count++;
menu_displaylist_parse_settings_enum(menu, info,
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_SAMBA_ENABLE,
PARSE_ONLY_BOOL, false);
PARSE_ONLY_BOOL, false) == 0)
count++;
menu_displaylist_parse_settings_enum(menu, info,
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_BLUETOOTH_ENABLE,
PARSE_ONLY_BOOL, false);
PARSE_ONLY_BOOL, false) == 0)
count++;
if (count == 0)
menu_entries_append_enum(info->list,
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_SETTINGS_FOUND),
msg_hash_to_str(MENU_ENUM_LABEL_NO_SETTINGS_FOUND),
MENU_ENUM_LABEL_NO_SETTINGS_FOUND,
0, 0, 0);
info->need_refresh = true;
info->need_push = true;
@ -5836,18 +5835,17 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
break;
case DISPLAYLIST_PRIVACY_SETTINGS_LIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
{
bool available = false;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CAMERA_ALLOW,
PARSE_ONLY_BOOL, false) == 0)
available = true;
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_LOCATION_ALLOW,
PARSE_ONLY_BOOL, true) == 0)
available = true;
count++;
if (!available)
if (count == 0)
menu_entries_append_enum(info->list,
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_SETTINGS_FOUND),
msg_hash_to_str(MENU_ENUM_LABEL_NO_SETTINGS_FOUND),
@ -5856,7 +5854,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
info->need_refresh = true;
info->need_push = true;
}
break;
case DISPLAYLIST_VIDEO_SETTINGS_LIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
@ -6046,7 +6043,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_AUDIO_DSP_PLUGIN,
PARSE_ONLY_PATH, false);
#ifdef HAVE_WASAPI
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_AUDIO_WASAPI_EXCLUSIVE_MODE,
PARSE_ONLY_BOOL, false);
@ -6056,7 +6052,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_AUDIO_WASAPI_SH_BUFFER_LENGTH,
PARSE_ONLY_INT, false);
#endif
info->need_refresh = true;
info->need_push = true;
@ -6066,11 +6061,9 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_MAX_USERS,
PARSE_ONLY_UINT, false);
#if TARGET_OS_IPHONE
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_SMALL_KEYBOARD_ENABLE,
PARSE_ONLY_BOOL, false);
#endif
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_UNIFIED_MENU_CONTROLS,
PARSE_ONLY_BOOL, false);
@ -6080,14 +6073,12 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_KEYBOARD_GAMEPAD_MAPPING_TYPE,
PARSE_ONLY_UINT, false);
#ifdef VITA
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_TOUCH_ENABLE,
PARSE_ONLY_BOOL, false);
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_PREFER_FRONT_TOUCH,
PARSE_ONLY_BOOL, false);
#endif
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO, PARSE_ONLY_UINT, false);
ret = menu_displaylist_parse_settings_enum(menu, info,
@ -6131,35 +6122,50 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
break;
case DISPLAYLIST_LATENCY_SETTINGS_LIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
menu_displaylist_parse_settings_enum(menu, info,
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_MAX_SWAPCHAIN_IMAGES,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_UINT, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_HARD_SYNC,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_BOOL, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_HARD_SYNC_FRAMES,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_UINT, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_FRAME_DELAY,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_UINT, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_AUDIO_LATENCY,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_UINT, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_POLL_TYPE_BEHAVIOR,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_UINT, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RUN_AHEAD_ENABLED,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_BOOL, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RUN_AHEAD_FRAMES,
PARSE_ONLY_UINT, false);
#if defined(HAVE_DYNAMIC) && HAVE_DYNAMIC
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_UINT, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RUN_AHEAD_SECONDARY_INSTANCE,
PARSE_ONLY_BOOL, false);
#endif
PARSE_ONLY_BOOL, false) == 0)
count++;
if (count == 0)
menu_entries_append_enum(info->list,
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_SETTINGS_FOUND),
msg_hash_to_str(MENU_ENUM_LABEL_NO_SETTINGS_FOUND),
MENU_ENUM_LABEL_NO_SETTINGS_FOUND,
0, 0, 0);
info->need_refresh = true;
info->need_push = true;
@ -6297,6 +6303,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
msg_hash_to_str(MENU_ENUM_LABEL_GOTO_IMAGES),
MENU_ENUM_LABEL_GOTO_IMAGES,
MENU_SETTING_ACTION, 0, 0);
if (settings->bools.menu_content_show_music)
menu_entries_append_enum(info->list,
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_GOTO_MUSIC),
@ -6419,24 +6426,37 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
break;
case DISPLAYLIST_RECORDING_SETTINGS_LIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
menu_displaylist_parse_settings_enum(menu, info,
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RECORD_ENABLE,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_BOOL, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RECORD_CONFIG,
PARSE_ONLY_PATH, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_PATH, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RECORD_PATH,
PARSE_ONLY_STRING, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_STRING, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RECORD_USE_OUTPUT_DIRECTORY,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_BOOL, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_GPU_RECORD,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
PARSE_ONLY_BOOL, false) == 0)
count++;
if (menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_POST_FILTER_RECORD,
PARSE_ONLY_BOOL, false);
PARSE_ONLY_BOOL, false) == 0)
count++;
if (count == 0)
menu_entries_append_enum(info->list,
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_SETTINGS_FOUND),
msg_hash_to_str(MENU_ENUM_LABEL_NO_SETTINGS_FOUND),
MENU_ENUM_LABEL_NO_SETTINGS_FOUND,
0, 0, 0);
info->need_push = true;
break;

View File

@ -4656,6 +4656,7 @@ static bool setting_append_list(
general_read_handler);
menu_settings_list_current_add_range(list, list_info, 1, 6, 1, true, true);
#ifdef HAVE_DYNAMIC
CONFIG_BOOL(
list, list_info,
&settings->bools.run_ahead_secondary_instance,
@ -4671,6 +4672,7 @@ static bool setting_append_list(
general_read_handler,
SD_FLAG_NONE
);
#endif
CONFIG_BOOL(
list, list_info,
@ -5610,6 +5612,8 @@ static bool setting_append_list(
general_read_handler,
SD_FLAG_LAKKA_ADVANCED);
#ifdef HAVE_LAKKA
CONFIG_BOOL(
list, list_info,
&settings->bools.menu_show_quit_retroarch,
@ -5625,7 +5629,6 @@ static bool setting_append_list(
general_read_handler,
SD_FLAG_NONE);
#ifdef HAVE_LAKKA
CONFIG_BOOL(
list, list_info,
&settings->bools.menu_show_reboot,