Add Latency list under Settings and move relevant functions

This commit is contained in:
Ryunam 2018-04-16 23:21:14 +02:00
parent be7eb4de1c
commit 2cf76a192f
12 changed files with 85 additions and 29 deletions

View File

@ -301,6 +301,8 @@ MSG_HASH(MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST,
"deferred_input_hotkey_binds")
MSG_HASH(MENU_ENUM_LABEL_DEFERRED_INPUT_SETTINGS_LIST,
"deferred_input_settings_list")
MSG_HASH(MENU_ENUM_LABEL_DEFERRED_LATENCY_SETTINGS_LIST,
"deferred_latency_settings_list")
MSG_HASH(MENU_ENUM_LABEL_DEFERRED_LAKKA_LIST,
"deferred_lakka_list")
MSG_HASH(MENU_ENUM_LABEL_DEFERRED_LAKKA_SERVICES_LIST,
@ -529,6 +531,8 @@ MSG_HASH(MENU_ENUM_LABEL_INPUT_SETTINGS,
"input_settings")
MSG_HASH(MENU_ENUM_LABEL_INPUT_SETTINGS_BEGIN,
"input_settings_begin")
MSG_HASH(MENU_ENUM_LABEL_LATENCY_SETTINGS,
"latency_settings")
MSG_HASH(MENU_ENUM_LABEL_INPUT_SMALL_KEYBOARD_ENABLE,
"input_small_keyboard_enable")
MSG_HASH(MENU_ENUM_LABEL_INPUT_TOUCH_ENABLE,

View File

@ -949,6 +949,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_INPUT_TURBO_PERIOD,
"Turbo Period")
MSG_HASH(MENU_ENUM_LABEL_VALUE_INPUT_USER_BINDS,
"Input User %u Binds")
MSG_HASH(MENU_ENUM_LABEL_VALUE_LATENCY_SETTINGS,
"Latency")
MSG_HASH(MENU_ENUM_LABEL_VALUE_INTERNAL_STORAGE_STATUS,
"Internal storage status")
MSG_HASH(MENU_ENUM_LABEL_VALUE_JOYPAD_AUTOCONFIG_DIR,
@ -1979,6 +1981,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_INPUT_SETTINGS,
"Change joypad, keyboard, and mouse settings.")
MSG_HASH(MENU_ENUM_SUBLABEL_INPUT_USER_BINDS,
"Configure controls for this user.")
MSG_HASH(MENU_ENUM_SUBLABEL_LATENCY_SETTINGS,
"Change settings related to video, audio and input latency.")
MSG_HASH(MENU_ENUM_SUBLABEL_LOG_VERBOSITY,
"Enable or disable logging to the terminal.")
MSG_HASH(MENU_ENUM_SUBLABEL_NETPLAY,

View File

@ -155,6 +155,7 @@ generic_deferred_push(deferred_push_directory_settings_list, DISPLAYLIST_
generic_deferred_push(deferred_push_privacy_settings_list, DISPLAYLIST_PRIVACY_SETTINGS_LIST)
generic_deferred_push(deferred_push_audio_settings_list, DISPLAYLIST_AUDIO_SETTINGS_LIST)
generic_deferred_push(deferred_push_input_settings_list, DISPLAYLIST_INPUT_SETTINGS_LIST)
generic_deferred_push(deferred_push_latency_settings_list, DISPLAYLIST_LATENCY_SETTINGS_LIST)
generic_deferred_push(deferred_push_recording_settings_list, DISPLAYLIST_RECORDING_SETTINGS_LIST)
generic_deferred_push(deferred_push_playlist_settings_list, DISPLAYLIST_PLAYLIST_SETTINGS_LIST)
generic_deferred_push(deferred_push_input_hotkey_binds_list, DISPLAYLIST_INPUT_HOTKEY_BINDS_LIST)
@ -808,6 +809,11 @@ static int menu_cbs_init_bind_deferred_push_compare_label(
{
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_audio_settings_list);
}
else if (strstr(label,
msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_LATENCY_SETTINGS_LIST)))
{
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_latency_settings_list);
}
else if (strstr(label,
msg_hash_to_str(MENU_ENUM_LABEL_CORE_INFORMATION)))
{
@ -1158,6 +1164,9 @@ static int menu_cbs_init_bind_deferred_push_compare_label(
case MENU_ENUM_LABEL_DEFERRED_AUDIO_SETTINGS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_audio_settings_list);
break;
case MENU_ENUM_LABEL_DEFERRED_LATENCY_SETTINGS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_latency_settings_list);
break;
case MENU_ENUM_LABEL_DEFERRED_CORE_SETTINGS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_core_settings_list);
break;

View File

@ -251,6 +251,8 @@ static enum msg_hash_enums action_ok_dl_to_enum(unsigned lbl)
return MENU_ENUM_LABEL_DEFERRED_ACCOUNTS_LIST;
case ACTION_OK_DL_INPUT_SETTINGS_LIST:
return MENU_ENUM_LABEL_DEFERRED_INPUT_SETTINGS_LIST;
case ACTION_OK_DL_LATENCY_SETTINGS_LIST:
return MENU_ENUM_LABEL_DEFERRED_LATENCY_SETTINGS_LIST;
case ACTION_OK_DL_DRIVER_SETTINGS_LIST:
return MENU_ENUM_LABEL_DEFERRED_DRIVER_SETTINGS_LIST;
case ACTION_OK_DL_CORE_SETTINGS_LIST:
@ -798,6 +800,7 @@ int generic_action_ok_displaylist_push(const char *path,
break;
case ACTION_OK_DL_ACCOUNTS_LIST:
case ACTION_OK_DL_INPUT_SETTINGS_LIST:
case ACTION_OK_DL_LATENCY_SETTINGS_LIST:
case ACTION_OK_DL_DRIVER_SETTINGS_LIST:
case ACTION_OK_DL_CORE_SETTINGS_LIST:
case ACTION_OK_DL_VIDEO_SETTINGS_LIST:
@ -3219,6 +3222,7 @@ default_action_ok_func(action_ok_push_configuration_settings_list, ACTION_OK_DL_
default_action_ok_func(action_ok_push_core_settings_list, ACTION_OK_DL_CORE_SETTINGS_LIST)
default_action_ok_func(action_ok_push_audio_settings_list, ACTION_OK_DL_AUDIO_SETTINGS_LIST)
default_action_ok_func(action_ok_push_input_settings_list, ACTION_OK_DL_INPUT_SETTINGS_LIST)
default_action_ok_func(action_ok_push_latency_settings_list, ACTION_OK_DL_LATENCY_SETTINGS_LIST)
default_action_ok_func(action_ok_push_recording_settings_list, ACTION_OK_DL_RECORDING_SETTINGS_LIST)
default_action_ok_func(action_ok_push_playlist_settings_list, ACTION_OK_DL_PLAYLIST_SETTINGS_LIST)
default_action_ok_func(action_ok_push_input_hotkey_binds_list, ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST)
@ -4218,6 +4222,9 @@ static int menu_cbs_init_bind_ok_compare_label(menu_file_list_cbs_t *cbs,
case MENU_ENUM_LABEL_AUDIO_SETTINGS:
BIND_ACTION_OK(cbs, action_ok_push_audio_settings_list);
break;
case MENU_ENUM_LABEL_LATENCY_SETTINGS:
BIND_ACTION_OK(cbs, action_ok_push_latency_settings_list);
break;
case MENU_ENUM_LABEL_CORE_SETTINGS:
BIND_ACTION_OK(cbs, action_ok_push_core_settings_list);
break;

View File

@ -79,6 +79,7 @@ default_sublabel_macro(action_bind_sublabel_suspend_screensaver_enable, MENU_
default_sublabel_macro(action_bind_sublabel_video_window_scale, MENU_ENUM_SUBLABEL_VIDEO_WINDOW_SCALE)
default_sublabel_macro(action_bind_sublabel_audio_settings_list, MENU_ENUM_SUBLABEL_AUDIO_SETTINGS)
default_sublabel_macro(action_bind_sublabel_input_settings_list, MENU_ENUM_SUBLABEL_INPUT_SETTINGS)
default_sublabel_macro(action_bind_sublabel_latency_settings_list, MENU_ENUM_SUBLABEL_LATENCY_SETTINGS)
default_sublabel_macro(action_bind_sublabel_wifi_settings_list, MENU_ENUM_SUBLABEL_WIFI_SETTINGS)
default_sublabel_macro(action_bind_sublabel_netplay_lan_scan_settings_list,MENU_ENUM_SUBLABEL_NETPLAY_LAN_SCAN_SETTINGS)
default_sublabel_macro(action_bind_sublabel_help_list, MENU_ENUM_SUBLABEL_HELP_LIST)
@ -1501,6 +1502,9 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs,
case MENU_ENUM_LABEL_AUDIO_SETTINGS:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_audio_settings_list);
break;
case MENU_ENUM_LABEL_LATENCY_SETTINGS:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_latency_settings_list);
break;
case MENU_ENUM_LABEL_RECORDING_SETTINGS:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_recording_settings_list);
break;

View File

@ -125,6 +125,7 @@ default_title_macro(action_get_privacy_settings_list, MENU_ENUM_LABEL_
default_title_macro(action_get_updater_settings_list, MENU_ENUM_LABEL_VALUE_UPDATER_SETTINGS)
default_title_macro(action_get_audio_settings_list, MENU_ENUM_LABEL_VALUE_AUDIO_SETTINGS)
default_title_macro(action_get_input_settings_list, MENU_ENUM_LABEL_VALUE_INPUT_SETTINGS)
default_title_macro(action_get_latency_settings_list, MENU_ENUM_LABEL_VALUE_LATENCY_SETTINGS)
default_title_macro(action_get_core_cheat_options_list, MENU_ENUM_LABEL_VALUE_CORE_CHEAT_OPTIONS)
default_title_macro(action_get_load_content_list, MENU_ENUM_LABEL_VALUE_LOAD_CONTENT_LIST)
default_title_macro(action_get_load_content_special, MENU_ENUM_LABEL_VALUE_LOAD_CONTENT_SPECIAL)
@ -475,6 +476,11 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs,
BIND_ACTION_GET_TITLE(cbs, action_get_audio_settings_list);
return 0;
}
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_LATENCY_SETTINGS_LIST)))
{
BIND_ACTION_GET_TITLE(cbs, action_get_latency_settings_list);
return 0;
}
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_SYSTEM_INFORMATION)))
{
BIND_ACTION_GET_TITLE(cbs, action_get_system_information_list);

View File

@ -2728,6 +2728,8 @@ static void materialui_list_insert(void *userdata,
||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_INPUT_SETTINGS))
||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_LATENCY_SETTINGS))
||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS))
||
string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_CORE_SETTINGS))

View File

@ -68,6 +68,7 @@ enum
ACTION_OK_DL_DRIVER_SETTINGS_LIST,
ACTION_OK_DL_VIDEO_SETTINGS_LIST,
ACTION_OK_DL_AUDIO_SETTINGS_LIST,
ACTION_OK_DL_LATENCY_SETTINGS_LIST,
ACTION_OK_DL_CONFIGURATION_SETTINGS_LIST,
ACTION_OK_DL_SAVING_SETTINGS_LIST,
ACTION_OK_DL_LOGGING_SETTINGS_LIST,

View File

@ -5005,17 +5005,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_SLOWMOTION_RATIO,
PARSE_ONLY_FLOAT, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RUN_AHEAD_ENABLED,
PARSE_ONLY_BOOL, false);
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,
MENU_ENUM_LABEL_RUN_AHEAD_SECONDARY_INSTANCE,
PARSE_ONLY_BOOL, false);
#endif
if (settings->bools.menu_show_advanced_settings)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_MENU_THROTTLE_FRAMERATE,
@ -5932,18 +5921,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_SWAP_INTERVAL,
PARSE_ONLY_UINT, false);
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,
MENU_ENUM_LABEL_VIDEO_HARD_SYNC,
PARSE_ONLY_BOOL, false);
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,
MENU_ENUM_LABEL_VIDEO_FRAME_DELAY,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_BLACK_FRAME_INSERTION,
PARSE_ONLY_BOOL, false);
@ -6004,9 +5981,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_AUDIO_SYNC,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_AUDIO_LATENCY,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_AUDIO_RESAMPLER_QUALITY,
PARSE_ONLY_UINT, false);
@ -6056,9 +6030,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_UNIFIED_MENU_CONTROLS,
PARSE_ONLY_BOOL, false);
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_POLL_TYPE_BEHAVIOR,
PARSE_ONLY_UINT, false);
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_ICADE_ENABLE,
PARSE_ONLY_BOOL, false);
@ -6111,6 +6082,41 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
}
}
info->need_refresh = true;
info->need_push = true;
break;
case DISPLAYLIST_LATENCY_SETTINGS_LIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
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,
MENU_ENUM_LABEL_VIDEO_HARD_SYNC,
PARSE_ONLY_BOOL, false);
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,
MENU_ENUM_LABEL_VIDEO_FRAME_DELAY,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_AUDIO_LATENCY,
PARSE_ONLY_UINT, false);
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,
MENU_ENUM_LABEL_RUN_AHEAD_ENABLED,
PARSE_ONLY_BOOL, false);
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,
MENU_ENUM_LABEL_RUN_AHEAD_SECONDARY_INSTANCE,
PARSE_ONLY_BOOL, false);
#endif
info->need_refresh = true;
info->need_push = true;
break;
@ -6124,6 +6130,8 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
MENU_ENUM_LABEL_AUDIO_SETTINGS, PARSE_ACTION, false);
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_INPUT_SETTINGS, PARSE_ACTION, false);
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_LATENCY_SETTINGS, PARSE_ACTION, false);
ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CORE_SETTINGS, PARSE_ACTION, false);
ret = menu_displaylist_parse_settings_enum(menu, info,

View File

@ -120,6 +120,7 @@ enum menu_displaylist_ctl_state
DISPLAYLIST_AUDIO_SETTINGS_LIST,
DISPLAYLIST_CORE_SETTINGS_LIST,
DISPLAYLIST_INPUT_SETTINGS_LIST,
DISPLAYLIST_LATENCY_SETTINGS_LIST,
DISPLAYLIST_INPUT_HOTKEY_BINDS_LIST,
DISPLAYLIST_ONSCREEN_OVERLAY_SETTINGS_LIST,
DISPLAYLIST_ONSCREEN_DISPLAY_SETTINGS_LIST,

View File

@ -2251,6 +2251,14 @@ static bool setting_append_list(
&subgroup_info,
parent_group);
CONFIG_ACTION(
list, list_info,
MENU_ENUM_LABEL_LATENCY_SETTINGS,
MENU_ENUM_LABEL_VALUE_LATENCY_SETTINGS,
&group_info,
&subgroup_info,
parent_group);
CONFIG_ACTION(
list, list_info,
MENU_ENUM_LABEL_CORE_SETTINGS,

View File

@ -976,6 +976,7 @@ enum msg_hash_enums
MENU_ENUM_LABEL_DEFERRED_RECORDING_SETTINGS_LIST,
MENU_ENUM_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST,
MENU_ENUM_LABEL_DEFERRED_INPUT_SETTINGS_LIST,
MENU_ENUM_LABEL_DEFERRED_LATENCY_SETTINGS_LIST,
MENU_ENUM_LABEL_DEFERRED_DRIVER_SETTINGS_LIST,
MENU_ENUM_LABEL_DEFERRED_VIDEO_SETTINGS_LIST,
MENU_ENUM_LABEL_DEFERRED_CONFIGURATION_SETTINGS_LIST,
@ -1477,6 +1478,7 @@ enum msg_hash_enums
MENU_LABEL(DRIVER_SETTINGS),
MENU_LABEL(VIDEO_SETTINGS),
MENU_LABEL(AUDIO_SETTINGS),
MENU_LABEL(LATENCY_SETTINGS),
MENU_LABEL(CORE_SETTINGS),
MENU_LABEL(CONFIGURATION_SETTINGS),
MENU_LABEL(LOGGING_SETTINGS),