mirror of
https://github.com/libretro/RetroArch
synced 2025-02-07 03:40:24 +00:00
Cut down on config_get_ptr calls in menu_displaylist_ctl
This commit is contained in:
parent
d8d034bacb
commit
8b2eb8ed37
@ -50,7 +50,8 @@ enum
|
||||
#define GENERIC_DEFERRED_PUSH(name, type) \
|
||||
static int (name)(menu_displaylist_info_t *info) \
|
||||
{ \
|
||||
return deferred_push_dlist(info, type); \
|
||||
settings_t *settings = config_get_ptr(); \
|
||||
return deferred_push_dlist(info, type, settings); \
|
||||
}
|
||||
|
||||
#define GENERIC_DEFERRED_CURSOR_MANAGER(name, type) \
|
||||
@ -67,9 +68,10 @@ static int (name)(menu_displaylist_info_t *info) \
|
||||
|
||||
static int deferred_push_dlist(
|
||||
menu_displaylist_info_t *info,
|
||||
enum menu_displaylist_ctl_state state)
|
||||
enum menu_displaylist_ctl_state state,
|
||||
settings_t *settings)
|
||||
{
|
||||
if (!menu_displaylist_ctl(state, info))
|
||||
if (!menu_displaylist_ctl(state, info, settings))
|
||||
return menu_cbs_exit();
|
||||
menu_displaylist_process(info);
|
||||
return 0;
|
||||
@ -78,6 +80,7 @@ static int deferred_push_dlist(
|
||||
static int deferred_push_database_manager_list_deferred(
|
||||
menu_displaylist_info_t *info)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
if (!string_is_empty(info->path_b))
|
||||
free(info->path_b);
|
||||
if (!string_is_empty(info->path_c))
|
||||
@ -86,7 +89,7 @@ static int deferred_push_database_manager_list_deferred(
|
||||
info->path_b = strdup(info->path);
|
||||
info->path_c = NULL;
|
||||
|
||||
return deferred_push_dlist(info, DISPLAYLIST_DATABASE_QUERY);
|
||||
return deferred_push_dlist(info, DISPLAYLIST_DATABASE_QUERY, settings);
|
||||
}
|
||||
|
||||
GENERIC_DEFERRED_PUSH(deferred_push_remappings_port, DISPLAYLIST_OPTIONS_REMAPPINGS_PORT)
|
||||
@ -306,7 +309,7 @@ static int deferred_push_cursor_manager_list_deferred(
|
||||
info->path_c = strdup(query_entry->value);
|
||||
info->path = strdup(rdb_path);
|
||||
|
||||
return deferred_push_dlist(info, DISPLAYLIST_DATABASE_QUERY);
|
||||
return deferred_push_dlist(info, DISPLAYLIST_DATABASE_QUERY, settings);
|
||||
}
|
||||
|
||||
#ifdef HAVE_LIBRETRODB
|
||||
@ -317,6 +320,7 @@ static int deferred_push_cursor_manager_list_generic(
|
||||
int ret = -1;
|
||||
const char *path = info->path;
|
||||
struct string_list str_list = {0};
|
||||
settings_t *settings = config_get_ptr();
|
||||
|
||||
if (!path)
|
||||
goto end;
|
||||
@ -343,7 +347,7 @@ static int deferred_push_cursor_manager_list_generic(
|
||||
info->path_b = strdup(str_list.elems[0].data);
|
||||
info->path_c = strdup(query);
|
||||
|
||||
ret = deferred_push_dlist(info, DISPLAYLIST_DATABASE_QUERY);
|
||||
ret = deferred_push_dlist(info, DISPLAYLIST_DATABASE_QUERY, settings);
|
||||
|
||||
end:
|
||||
string_list_deinitialize(&str_list);
|
||||
@ -612,7 +616,7 @@ static int general_push(menu_displaylist_info_t *info,
|
||||
info->exts = strdup(newstring2);
|
||||
}
|
||||
|
||||
return deferred_push_dlist(info, state);
|
||||
return deferred_push_dlist(info, state, settings);
|
||||
}
|
||||
|
||||
GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_detect_core_list, PUSH_DETECT_CORE_LIST, DISPLAYLIST_CORES_DETECTED)
|
||||
|
@ -34,8 +34,8 @@ static int action_info_default(unsigned type, const char *label)
|
||||
menu_displaylist_info_t info;
|
||||
file_list_t *menu_stack = menu_entries_get_menu_stack_ptr(0);
|
||||
size_t selection = menu_navigation_get_selection();
|
||||
#ifdef HAVE_AUDIOMIXER
|
||||
settings_t *settings = config_get_ptr();
|
||||
#ifdef HAVE_AUDIOMIXER
|
||||
bool audio_enable_menu = settings->bools.audio_enable_menu;
|
||||
bool audio_enable_menu_notice = settings->bools.audio_enable_menu_notice;
|
||||
#endif
|
||||
@ -48,7 +48,7 @@ static int action_info_default(unsigned type, const char *label)
|
||||
info.label = strdup(
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_INFO_SCREEN));
|
||||
|
||||
if (!menu_displaylist_ctl(DISPLAYLIST_HELP, &info))
|
||||
if (!menu_displaylist_ctl(DISPLAYLIST_HELP, &info, settings))
|
||||
goto error;
|
||||
|
||||
#ifdef HAVE_AUDIOMIXER
|
||||
|
@ -1535,7 +1535,7 @@ int generic_action_ok_displaylist_push(const char *path,
|
||||
if (info_path)
|
||||
info.path = strdup(info_path);
|
||||
|
||||
if (menu_displaylist_ctl(dl_type, &info))
|
||||
if (menu_displaylist_ctl(dl_type, &info, settings))
|
||||
{
|
||||
if (menu_displaylist_process(&info))
|
||||
{
|
||||
|
@ -3415,6 +3415,7 @@ static bool ozone_menu_init_list(void *data)
|
||||
{
|
||||
menu_displaylist_info_t info;
|
||||
|
||||
settings_t *settings = config_get_ptr();
|
||||
file_list_t *menu_stack = menu_entries_get_menu_stack_ptr(0);
|
||||
file_list_t *selection_buf = menu_entries_get_selection_buf_ptr(0);
|
||||
|
||||
@ -3433,7 +3434,7 @@ static bool ozone_menu_init_list(void *data)
|
||||
|
||||
info.list = selection_buf;
|
||||
|
||||
if (!menu_displaylist_ctl(DISPLAYLIST_MAIN_MENU, &info))
|
||||
if (!menu_displaylist_ctl(DISPLAYLIST_MAIN_MENU, &info, settings))
|
||||
goto error;
|
||||
|
||||
info.need_push = true;
|
||||
@ -3649,8 +3650,9 @@ static void ozone_messagebox(void *data, const char *message)
|
||||
|
||||
static int ozone_deferred_push_content_actions(menu_displaylist_info_t *info)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
if (!menu_displaylist_ctl(
|
||||
DISPLAYLIST_HORIZONTAL_CONTENT_ACTIONS, info))
|
||||
DISPLAYLIST_HORIZONTAL_CONTENT_ACTIONS, info, settings))
|
||||
return -1;
|
||||
menu_displaylist_process(info);
|
||||
menu_displaylist_info_free(info);
|
||||
|
@ -801,7 +801,8 @@ void ozone_init_horizontal_list(ozone_handle_t *ozone,
|
||||
|
||||
if (menu_content_show_playlists && !string_is_empty(info.path))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_DATABASE_PLAYLISTS_HORIZONTAL, &info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_DATABASE_PLAYLISTS_HORIZONTAL,
|
||||
&info, settings))
|
||||
menu_displaylist_process(&info);
|
||||
}
|
||||
|
||||
|
@ -1776,7 +1776,8 @@ static void stripes_init_horizontal_list(stripes_handle_t *stripes)
|
||||
|
||||
if (!string_is_empty(info.path))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_DATABASE_PLAYLISTS_HORIZONTAL, &info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_DATABASE_PLAYLISTS_HORIZONTAL, &info,
|
||||
settings))
|
||||
{
|
||||
size_t i;
|
||||
for (i = 0; i < stripes->horizontal_list.size; i++)
|
||||
@ -4083,8 +4084,9 @@ static void stripes_toggle(void *userdata, bool menu_on)
|
||||
|
||||
static int stripes_deferred_push_content_actions(menu_displaylist_info_t *info)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
if (!menu_displaylist_ctl(
|
||||
DISPLAYLIST_HORIZONTAL_CONTENT_ACTIONS, info))
|
||||
DISPLAYLIST_HORIZONTAL_CONTENT_ACTIONS, info, settings))
|
||||
return -1;
|
||||
menu_displaylist_process(info);
|
||||
menu_displaylist_info_free(info);
|
||||
@ -4351,6 +4353,7 @@ static int stripes_list_push(void *data, void *userdata,
|
||||
static bool stripes_menu_init_list(void *data)
|
||||
{
|
||||
menu_displaylist_info_t info;
|
||||
settings_t *settings = config_get_ptr();
|
||||
|
||||
file_list_t *menu_stack = menu_entries_get_menu_stack_ptr(0);
|
||||
file_list_t *selection_buf = menu_entries_get_selection_buf_ptr(0);
|
||||
@ -4370,7 +4373,7 @@ static bool stripes_menu_init_list(void *data)
|
||||
|
||||
info.list = selection_buf;
|
||||
|
||||
if (!menu_displaylist_ctl(DISPLAYLIST_MAIN_MENU, &info))
|
||||
if (!menu_displaylist_ctl(DISPLAYLIST_MAIN_MENU, &info, settings))
|
||||
goto error;
|
||||
|
||||
info.need_push = true;
|
||||
|
@ -2119,7 +2119,8 @@ static void xmb_init_horizontal_list(xmb_handle_t *xmb)
|
||||
|
||||
if (menu_content_show_playlists && !string_is_empty(info.path))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_DATABASE_PLAYLISTS_HORIZONTAL, &info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_DATABASE_PLAYLISTS_HORIZONTAL, &info,
|
||||
settings))
|
||||
{
|
||||
size_t i;
|
||||
for (i = 0; i < xmb->horizontal_list.size; i++)
|
||||
@ -6656,8 +6657,9 @@ static void xmb_toggle(void *userdata, bool menu_on)
|
||||
|
||||
static int xmb_deferred_push_content_actions(menu_displaylist_info_t *info)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
if (!menu_displaylist_ctl(
|
||||
DISPLAYLIST_HORIZONTAL_CONTENT_ACTIONS, info))
|
||||
DISPLAYLIST_HORIZONTAL_CONTENT_ACTIONS, info, settings))
|
||||
return -1;
|
||||
menu_displaylist_process(info);
|
||||
menu_displaylist_info_free(info);
|
||||
@ -6981,6 +6983,7 @@ static bool xmb_menu_init_list(void *data)
|
||||
{
|
||||
menu_displaylist_info_t info;
|
||||
|
||||
settings_t *settings = config_get_ptr();
|
||||
file_list_t *menu_stack = menu_entries_get_menu_stack_ptr(0);
|
||||
file_list_t *selection_buf = menu_entries_get_selection_buf_ptr(0);
|
||||
|
||||
@ -6999,7 +7002,7 @@ static bool xmb_menu_init_list(void *data)
|
||||
|
||||
info.list = selection_buf;
|
||||
|
||||
if (!menu_displaylist_ctl(DISPLAYLIST_MAIN_MENU, &info))
|
||||
if (!menu_displaylist_ctl(DISPLAYLIST_MAIN_MENU, &info, settings))
|
||||
goto error;
|
||||
|
||||
info.need_push = true;
|
||||
|
@ -9234,7 +9234,8 @@ bool menu_displaylist_has_subsystems(void)
|
||||
}
|
||||
|
||||
bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
menu_displaylist_info_t *info)
|
||||
menu_displaylist_info_t *info,
|
||||
settings_t *settings)
|
||||
{
|
||||
size_t i;
|
||||
menu_ctx_displaylist_t disp_list;
|
||||
@ -9257,7 +9258,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
#ifdef HAVE_NETWORKING
|
||||
{
|
||||
bool include_everything = false;
|
||||
settings_t *settings = config_get_ptr();
|
||||
file_list_t *list = info->list;
|
||||
menu_displaylist_build_info_selective_t build_list[] = {
|
||||
{MENU_ENUM_LABEL_NETPLAY_TCP_UDP_PORT, PARSE_ONLY_UINT, true},
|
||||
@ -9322,7 +9322,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_OPTIONS_REMAPPINGS_PORT:
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
unsigned max_users = *(input_driver_get_uint(INPUT_ACTION_MAX_USERS));
|
||||
const char *menu_driver = menu_driver_ident();
|
||||
bool is_rgui = string_is_equal(menu_driver, "rgui");
|
||||
@ -9883,7 +9882,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
|
||||
#if defined(HAVE_FFMPEG) || defined(HAVE_MPV)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
bool multimedia_builtin_mediaplayer_enable = settings->bools.multimedia_builtin_mediaplayer_enable;
|
||||
if (multimedia_builtin_mediaplayer_enable)
|
||||
{
|
||||
@ -10000,11 +9998,8 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_INFORMATION:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_parse_content_information(menu,
|
||||
settings, info);
|
||||
}
|
||||
count = menu_displaylist_parse_content_information(menu,
|
||||
settings, info);
|
||||
|
||||
if (count == 0)
|
||||
menu_entries_append_enum(info->list,
|
||||
@ -10019,7 +10014,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_DATABASE_ENTRY:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
#ifdef HAVE_LIBRETRODB
|
||||
bool parse_database = false;
|
||||
#endif
|
||||
@ -10114,7 +10108,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
unsigned i;
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
unsigned pass_count = shader ? shader->passes : 0;
|
||||
settings_t *settings = config_get_ptr();
|
||||
bool video_shader_enable = settings->bools.video_shader_enable;
|
||||
|
||||
if (MENU_DISPLAYLIST_PARSE_SETTINGS_ENUM(info->list,
|
||||
@ -10284,7 +10277,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
{
|
||||
#ifdef HAVE_NETWORKING
|
||||
char new_label[PATH_MAX_LENGTH];
|
||||
settings_t *settings = config_get_ptr();
|
||||
const char *
|
||||
network_buildbot_assets_url = settings->paths.network_buildbot_assets_url;
|
||||
|
||||
@ -10316,7 +10308,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
{
|
||||
core_updater_list_t *core_list = core_updater_list_get_cached();
|
||||
struct string_list *search_terms = menu_driver_search_get_terms();
|
||||
settings_t *settings = config_get_ptr();
|
||||
bool show_experimental_cores = settings->bools.network_buildbot_show_experimental_cores;
|
||||
size_t selection = menu_navigation_get_selection();
|
||||
|
||||
@ -10417,11 +10408,8 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_PL_THUMBNAILS_UPDATER:
|
||||
#ifdef HAVE_NETWORKING
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_parse_pl_thumbnail_download_list(info,
|
||||
settings);
|
||||
}
|
||||
count = menu_displaylist_parse_pl_thumbnail_download_list(info,
|
||||
settings);
|
||||
|
||||
if (count == 0)
|
||||
menu_entries_append_enum(info->list,
|
||||
@ -10465,7 +10453,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
if (string_is_equal(info->path,
|
||||
FILE_PATH_CONTENT_HISTORY))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_HISTORY, info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_HISTORY, info, settings))
|
||||
return menu_displaylist_process(info);
|
||||
return false;
|
||||
}
|
||||
@ -10473,7 +10461,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
if (string_is_equal(info->path,
|
||||
FILE_PATH_CONTENT_FAVORITES))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_FAVORITES, info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_FAVORITES, info, settings))
|
||||
return menu_displaylist_process(info);
|
||||
return false;
|
||||
}
|
||||
@ -10482,7 +10470,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
{
|
||||
char path_playlist[PATH_MAX_LENGTH];
|
||||
playlist_t *playlist = NULL;
|
||||
settings_t *settings = config_get_ptr();
|
||||
const char *dir_playlist = settings->paths.directory_playlist;
|
||||
|
||||
path_playlist[0] = '\0';
|
||||
@ -10519,7 +10506,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_HISTORY:
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
bool history_list_enable = settings->bools.history_list_enable;
|
||||
const char *path_content_history = settings->paths.path_content_history;
|
||||
|
||||
@ -10553,7 +10539,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_FAVORITES:
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
const char *path_content_favorites = settings->paths.path_content_favorites;
|
||||
|
||||
info->count = 0;
|
||||
@ -10590,7 +10575,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_MUSIC_HISTORY:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
const char *
|
||||
path_content_music_history = settings->paths.path_content_music_history;
|
||||
info->count = 0;
|
||||
@ -10634,7 +10618,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
info->count = 0;
|
||||
#if defined(HAVE_FFMPEG) || defined(HAVE_MPV)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
bool history_list_enable = settings->bools.history_list_enable;
|
||||
const char *
|
||||
path_content_video_history = settings->paths.path_content_video_history;
|
||||
@ -10920,7 +10903,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
* number of menu entries - if not, we reset the
|
||||
* navigation pointer */
|
||||
size_t selection = menu_navigation_get_selection();
|
||||
settings_t *settings = config_get_ptr();
|
||||
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
count = menu_displaylist_parse_core_info(info, settings);
|
||||
@ -10936,7 +10918,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_CORE_RESTORE_BACKUP_LIST:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_parse_core_backup_list(
|
||||
info, settings, true);
|
||||
}
|
||||
@ -10946,7 +10927,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_CORE_DELETE_BACKUP_LIST:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_parse_core_backup_list(
|
||||
info, settings, false);
|
||||
}
|
||||
@ -10962,7 +10942,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
* the navigation pointer if the current size is
|
||||
* different */
|
||||
static size_t prev_count = 0;
|
||||
settings_t *settings = config_get_ptr();
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
count = menu_displaylist_parse_core_manager_list(info,
|
||||
settings);
|
||||
@ -11002,7 +10981,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
if (rarch_ctl(RARCH_CTL_HAS_CORE_OPTIONS, NULL))
|
||||
{
|
||||
size_t num_opts = 0;
|
||||
settings_t *settings = config_get_ptr();
|
||||
bool game_specific_options = settings->bools.game_specific_options;
|
||||
|
||||
rarch_ctl(RARCH_CTL_GET_CORE_OPTION_SIZE, &num_opts);
|
||||
@ -11113,10 +11091,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
|
||||
case DISPLAYLIST_PLAYLIST_MANAGER_LIST:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_parse_playlist_manager_list(info, settings);
|
||||
}
|
||||
count = menu_displaylist_parse_playlist_manager_list(info, settings);
|
||||
|
||||
if (count == 0)
|
||||
menu_entries_append_enum(info->list,
|
||||
@ -11130,17 +11105,14 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_PLAYLIST_MANAGER_SETTINGS:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
if (!menu_displaylist_parse_playlist_manager_settings(menu,
|
||||
settings,
|
||||
info, info->path))
|
||||
menu_entries_append_enum(info->list,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_ENTRIES_TO_DISPLAY),
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_NO_ENTRIES_TO_DISPLAY),
|
||||
MENU_ENUM_LABEL_NO_ENTRIES_TO_DISPLAY,
|
||||
FILE_TYPE_NONE, 0, 0);
|
||||
}
|
||||
if (!menu_displaylist_parse_playlist_manager_settings(menu,
|
||||
settings,
|
||||
info, info->path))
|
||||
menu_entries_append_enum(info->list,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_ENTRIES_TO_DISPLAY),
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_NO_ENTRIES_TO_DISPLAY),
|
||||
MENU_ENUM_LABEL_NO_ENTRIES_TO_DISPLAY,
|
||||
FILE_TYPE_NONE, 0, 0);
|
||||
|
||||
info->need_push = true;
|
||||
|
||||
@ -11168,37 +11140,25 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_DROPDOWN_LIST_INPUT_DEVICE_TYPE:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_parse_input_device_type_list(info, settings);
|
||||
}
|
||||
count = menu_displaylist_parse_input_device_type_list(info, settings);
|
||||
info->need_refresh = true;
|
||||
info->need_push = true;
|
||||
break;
|
||||
case DISPLAYLIST_DROPDOWN_LIST_INPUT_DEVICE_INDEX:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_parse_input_device_index_list(info, settings);
|
||||
}
|
||||
count = menu_displaylist_parse_input_device_index_list(info, settings);
|
||||
info->need_refresh = true;
|
||||
info->need_push = true;
|
||||
break;
|
||||
case DISPLAYLIST_DROPDOWN_LIST_INPUT_DESCRIPTION:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_parse_input_description_list(info, settings);
|
||||
}
|
||||
count = menu_displaylist_parse_input_description_list(info, settings);
|
||||
info->need_refresh = true;
|
||||
info->need_push = true;
|
||||
break;
|
||||
case DISPLAYLIST_DROPDOWN_LIST_INPUT_DESCRIPTION_KBD:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_parse_input_description_kbd_list(info, settings);
|
||||
}
|
||||
count = menu_displaylist_parse_input_description_kbd_list(info, settings);
|
||||
info->need_refresh = true;
|
||||
info->need_push = true;
|
||||
break;
|
||||
@ -11299,10 +11259,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_PLAYLIST_SETTINGS_LIST:
|
||||
case DISPLAYLIST_SUBSYSTEM_SETTINGS_LIST:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_build_list(info->list, settings, type, false);
|
||||
}
|
||||
count = menu_displaylist_build_list(info->list, settings, type, false);
|
||||
|
||||
if (count == 0)
|
||||
{
|
||||
@ -11386,10 +11343,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_HORIZONTAL:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
ret = menu_displaylist_parse_horizontal_list(menu, settings, info);
|
||||
}
|
||||
ret = menu_displaylist_parse_horizontal_list(menu, settings, info);
|
||||
|
||||
/* Playlists themselves are sorted
|
||||
* > Display lists generated from playlists
|
||||
@ -11400,11 +11354,8 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_HORIZONTAL_CONTENT_ACTIONS:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
ret = menu_displaylist_parse_horizontal_content_actions(menu,
|
||||
settings, info);
|
||||
}
|
||||
ret = menu_displaylist_parse_horizontal_content_actions(menu,
|
||||
settings, info);
|
||||
info->need_refresh = true;
|
||||
info->need_push = true;
|
||||
|
||||
@ -11418,10 +11369,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_OPTIONS:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
#ifdef HAVE_NETWORKING
|
||||
settings_t *settings = config_get_ptr();
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_LAKKA
|
||||
if (menu_entries_append_enum(info->list,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_UPDATE_LAKKA),
|
||||
@ -11630,43 +11577,40 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_OPTIONS_OVERRIDES:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
|
||||
if (settings->bools.quick_menu_show_save_core_overrides
|
||||
&& !settings->bools.kiosk_mode_enable)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
if (settings->bools.quick_menu_show_save_core_overrides
|
||||
&& !settings->bools.kiosk_mode_enable)
|
||||
{
|
||||
if (menu_entries_append_enum(info->list,
|
||||
if (menu_entries_append_enum(info->list,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVE_CURRENT_CONFIG_OVERRIDE_CORE),
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CORE),
|
||||
MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CORE,
|
||||
MENU_SETTING_ACTION, 0, 0))
|
||||
count++;
|
||||
}
|
||||
count++;
|
||||
}
|
||||
|
||||
if (settings->bools.quick_menu_show_save_content_dir_overrides
|
||||
&& !settings->bools.kiosk_mode_enable)
|
||||
{
|
||||
if (menu_entries_append_enum(info->list,
|
||||
if (settings->bools.quick_menu_show_save_content_dir_overrides
|
||||
&& !settings->bools.kiosk_mode_enable)
|
||||
{
|
||||
if (menu_entries_append_enum(info->list,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR),
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR),
|
||||
MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR,
|
||||
MENU_SETTING_ACTION, 0, 0))
|
||||
count++;
|
||||
}
|
||||
count++;
|
||||
}
|
||||
|
||||
if (settings->bools.quick_menu_show_save_game_overrides
|
||||
&& !settings->bools.kiosk_mode_enable)
|
||||
{
|
||||
if (menu_entries_append_enum(info->list,
|
||||
if (settings->bools.quick_menu_show_save_game_overrides
|
||||
&& !settings->bools.kiosk_mode_enable)
|
||||
{
|
||||
if (menu_entries_append_enum(info->list,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVE_CURRENT_CONFIG_OVERRIDE_GAME),
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_GAME),
|
||||
MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_GAME,
|
||||
MENU_SETTING_ACTION, 0, 0))
|
||||
count++;
|
||||
}
|
||||
|
||||
count++;
|
||||
}
|
||||
|
||||
|
||||
if (count == 0)
|
||||
menu_entries_append_enum(info->list,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_SETTINGS_FOUND),
|
||||
@ -11715,7 +11659,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_MAIN_MENU:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
rarch_system_info_t *sys_info = runloop_get_system_info();
|
||||
bool show_add_content = false;
|
||||
#if defined(HAVE_RGUI) || defined(HAVE_MATERIALUI) || defined(HAVE_OZONE) || defined(HAVE_XMB)
|
||||
@ -11940,7 +11883,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_DATABASES:
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
filebrowser_clear_type();
|
||||
if (!string_is_empty(info->exts))
|
||||
@ -11957,7 +11899,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
break;
|
||||
case DISPLAYLIST_DATABASE_CURSORS:
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
filebrowser_clear_type();
|
||||
if (!string_is_empty(info->exts))
|
||||
@ -12062,7 +12003,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_PLAYLIST:
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
menu_displaylist_parse_playlist_generic(menu, info,
|
||||
settings,
|
||||
path_basename(info->path),
|
||||
@ -12088,7 +12028,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
info->count = 0;
|
||||
#ifdef HAVE_IMAGEVIEWER
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
bool history_list_enable = settings->bools.history_list_enable;
|
||||
const char *path_content_image_history = settings->paths.path_content_image_history;
|
||||
|
||||
@ -12244,7 +12183,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
case DISPLAYLIST_DATABASE_PLAYLISTS:
|
||||
case DISPLAYLIST_DATABASE_PLAYLISTS_HORIZONTAL:
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
bool is_horizontal =
|
||||
(type == DISPLAYLIST_DATABASE_PLAYLISTS_HORIZONTAL);
|
||||
|
||||
@ -12281,10 +12219,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
count = menu_displaylist_parse_cores(menu, settings, info);
|
||||
}
|
||||
count = menu_displaylist_parse_cores(menu, settings, info);
|
||||
|
||||
if (count == 0)
|
||||
menu_entries_append_enum(info->list,
|
||||
@ -12349,7 +12284,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
struct core_option *option = NULL;
|
||||
bool checked_found = false;
|
||||
unsigned checked = 0;
|
||||
settings_t *settings = config_get_ptr();
|
||||
bool game_specific_options = settings->bools.game_specific_options;
|
||||
|
||||
/* Note: Although we display value labels here,
|
||||
@ -13198,7 +13132,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
||||
}
|
||||
else
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
const char *pending_selection = menu_driver_get_pending_selection();
|
||||
bool show_hidden_files = settings->bools.show_hidden_files;
|
||||
bool multimedia_builtin_mediaplayer_enable = settings->bools.multimedia_builtin_mediaplayer_enable;
|
||||
|
@ -321,7 +321,7 @@ unsigned menu_displaylist_build_list(
|
||||
|
||||
void menu_displaylist_info_init(menu_displaylist_info_t *info);
|
||||
|
||||
bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, menu_displaylist_info_t *info);
|
||||
bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, menu_displaylist_info_t *info, settings_t *settings);
|
||||
|
||||
#ifdef HAVE_NETWORKING
|
||||
unsigned menu_displaylist_netplay_refresh_rooms(file_list_t *list);
|
||||
|
@ -1176,7 +1176,8 @@ SKIP_ENTRY:;
|
||||
strlcpy(menu->deferred_path,
|
||||
pl_entry->path, sizeof(menu->deferred_path));
|
||||
info.list = list;
|
||||
menu_displaylist_ctl(DISPLAYLIST_HORIZONTAL_CONTENT_ACTIONS, &info);
|
||||
menu_displaylist_ctl(DISPLAYLIST_HORIZONTAL_CONTENT_ACTIONS, &info,
|
||||
config_get_ptr());
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -6518,6 +6518,7 @@ int menu_action_handle_setting(rarch_setting_t *setting,
|
||||
if (action == MENU_ACTION_OK)
|
||||
{
|
||||
menu_displaylist_info_t info;
|
||||
settings_t *settings = config_get_ptr();
|
||||
file_list_t *menu_stack = menu_entries_get_menu_stack_ptr(0);
|
||||
const char *name = setting->name;
|
||||
size_t selection = menu_navigation_get_selection();
|
||||
@ -6530,7 +6531,7 @@ int menu_action_handle_setting(rarch_setting_t *setting,
|
||||
info.directory_ptr = selection;
|
||||
info.list = menu_stack;
|
||||
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_GENERIC, &info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_GENERIC, &info, settings))
|
||||
menu_displaylist_process(&info);
|
||||
|
||||
menu_displaylist_info_free(&info);
|
||||
@ -7191,7 +7192,7 @@ static void general_write_handler(rarch_setting_t *setting)
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_HELP));
|
||||
info.list = menu_stack;
|
||||
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_GENERIC, &info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_GENERIC, &info, settings))
|
||||
menu_displaylist_process(&info);
|
||||
menu_displaylist_info_free(&info);
|
||||
setting_set_with_string_representation(setting, "false");
|
||||
|
51
retroarch.c
51
retroarch.c
@ -906,6 +906,7 @@ static int menu_input_key_bind_set_mode_common(
|
||||
menu_displaylist_info_t info;
|
||||
unsigned bind_type = 0;
|
||||
struct retro_keybind *keybind = NULL;
|
||||
settings_t *settings = config_get_ptr();
|
||||
unsigned index_offset = setting->index_offset;
|
||||
menu_list_t *menu_list = menu_st->entries.list;
|
||||
file_list_t *menu_stack = menu_list ? MENU_LIST_GET(menu_list, (unsigned)0) : NULL;
|
||||
@ -954,7 +955,7 @@ static int menu_input_key_bind_set_mode_common(
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_INFO, &info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_INFO, &info, settings))
|
||||
menu_displaylist_process(&info);
|
||||
menu_displaylist_info_free(&info);
|
||||
|
||||
@ -1820,6 +1821,7 @@ static void menu_input_set_pointer_visibility(
|
||||
**/
|
||||
static int generic_menu_iterate(
|
||||
struct rarch_state *p_rarch,
|
||||
settings_t *settings,
|
||||
menu_handle_t *menu,
|
||||
void *userdata, enum menu_action action,
|
||||
retro_time_t current_time)
|
||||
@ -2128,7 +2130,7 @@ static int generic_menu_iterate(
|
||||
if (label)
|
||||
info.label = strdup(label);
|
||||
|
||||
menu_displaylist_ctl(DISPLAYLIST_HELP, &info);
|
||||
menu_displaylist_ctl(DISPLAYLIST_HELP, &info, settings);
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -2176,27 +2178,28 @@ static int generic_menu_iterate(
|
||||
|
||||
static bool menu_driver_displaylist_push_internal(
|
||||
const char *label,
|
||||
menu_displaylist_info_t *info)
|
||||
menu_displaylist_info_t *info,
|
||||
settings_t *settings)
|
||||
{
|
||||
if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_HISTORY_TAB)))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_HISTORY, info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_HISTORY, info, settings))
|
||||
return true;
|
||||
}
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_FAVORITES_TAB)))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_FAVORITES, info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_FAVORITES, info, settings))
|
||||
return true;
|
||||
}
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_SETTINGS_TAB)))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_SETTINGS_ALL, info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_SETTINGS_ALL, info, settings))
|
||||
return true;
|
||||
}
|
||||
#ifdef HAVE_CHEATS
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_CHEAT_SEARCH_SETTINGS)))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_CHEAT_SEARCH_SETTINGS_LIST, info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_CHEAT_SEARCH_SETTINGS_LIST, info, settings))
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
@ -2215,7 +2218,7 @@ static bool menu_driver_displaylist_push_internal(
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_PLAYLISTS_TAB));
|
||||
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
menu_displaylist_ctl(DISPLAYLIST_MUSIC_HISTORY, info);
|
||||
menu_displaylist_ctl(DISPLAYLIST_MUSIC_HISTORY, info, settings);
|
||||
return true;
|
||||
}
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_VIDEO_TAB)))
|
||||
@ -2233,7 +2236,7 @@ static bool menu_driver_displaylist_push_internal(
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_PLAYLISTS_TAB));
|
||||
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||
menu_displaylist_ctl(DISPLAYLIST_VIDEO_HISTORY, info);
|
||||
menu_displaylist_ctl(DISPLAYLIST_VIDEO_HISTORY, info, settings);
|
||||
return true;
|
||||
}
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_IMAGES_TAB)))
|
||||
@ -2264,7 +2267,7 @@ static bool menu_driver_displaylist_push_internal(
|
||||
info->need_push_no_playlist_entries = true;
|
||||
#endif
|
||||
#endif
|
||||
menu_displaylist_ctl(DISPLAYLIST_IMAGES_HISTORY, info);
|
||||
menu_displaylist_ctl(DISPLAYLIST_IMAGES_HISTORY, info, settings);
|
||||
return true;
|
||||
}
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_PLAYLISTS_TAB)))
|
||||
@ -2301,29 +2304,29 @@ static bool menu_driver_displaylist_push_internal(
|
||||
info->path = strdup(dir_playlist);
|
||||
|
||||
if (menu_displaylist_ctl(
|
||||
DISPLAYLIST_DATABASE_PLAYLISTS, info))
|
||||
DISPLAYLIST_DATABASE_PLAYLISTS, info, settings))
|
||||
return true;
|
||||
}
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_ADD_TAB)))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_SCAN_DIRECTORY_LIST, info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_SCAN_DIRECTORY_LIST, info, settings))
|
||||
return true;
|
||||
}
|
||||
#if defined(HAVE_LIBRETRODB)
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_EXPLORE_TAB)))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_EXPLORE, info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_EXPLORE, info, settings))
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_NETPLAY_TAB)))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_NETPLAY_ROOM_LIST, info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_NETPLAY_ROOM_LIST, info, settings))
|
||||
return true;
|
||||
}
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_HORIZONTAL_MENU)))
|
||||
{
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_HORIZONTAL, info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_HORIZONTAL, info, settings))
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -2333,6 +2336,7 @@ static bool menu_driver_displaylist_push_internal(
|
||||
static bool menu_driver_displaylist_push(
|
||||
struct rarch_state *p_rarch,
|
||||
struct menu_state *menu_st,
|
||||
settings_t *settings,
|
||||
file_list_t *entry_list,
|
||||
file_list_t *entry_stack)
|
||||
{
|
||||
@ -2368,7 +2372,7 @@ static bool menu_driver_displaylist_push(
|
||||
if (!info.list)
|
||||
goto error;
|
||||
|
||||
if (menu_driver_displaylist_push_internal(label, &info))
|
||||
if (menu_driver_displaylist_push_internal(label, &info, settings))
|
||||
{
|
||||
ret = menu_displaylist_process(&info);
|
||||
goto end;
|
||||
@ -2562,6 +2566,7 @@ int generic_menu_entry_action(
|
||||
menu_driver_displaylist_push(
|
||||
p_rarch,
|
||||
menu_st,
|
||||
settings,
|
||||
selection_buf,
|
||||
menu_stack);
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_UNSET_REFRESH, &refresh);
|
||||
@ -4327,12 +4332,14 @@ void menu_display_powerstate(gfx_display_ctx_powerstate_t *powerstate)
|
||||
/* Iterate the menu driver for one frame. */
|
||||
static bool menu_driver_iterate(
|
||||
struct rarch_state *p_rarch,
|
||||
settings_t *settings,
|
||||
enum menu_action action,
|
||||
retro_time_t current_time)
|
||||
{
|
||||
return (p_rarch->menu_driver_data &&
|
||||
generic_menu_iterate(
|
||||
p_rarch,
|
||||
settings,
|
||||
p_rarch->menu_driver_data,
|
||||
p_rarch->menu_userdata, action,
|
||||
current_time) != -1);
|
||||
@ -4340,6 +4347,7 @@ static bool menu_driver_iterate(
|
||||
|
||||
int menu_driver_deferred_push_content_list(file_list_t *list)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
struct rarch_state *p_rarch = &rarch_st;
|
||||
struct menu_state *menu_st = &p_rarch->menu_driver_state;
|
||||
menu_handle_t *menu_data = p_rarch->menu_driver_data;
|
||||
@ -4361,6 +4369,7 @@ int menu_driver_deferred_push_content_list(file_list_t *list)
|
||||
if (!menu_driver_displaylist_push(
|
||||
p_rarch,
|
||||
menu_st,
|
||||
settings,
|
||||
list,
|
||||
selection_buf))
|
||||
return -1;
|
||||
@ -4396,7 +4405,8 @@ static enum menu_driver_id_type menu_driver_set_id(const char *driver_name)
|
||||
return MENU_DRIVER_ID_UNKNOWN;
|
||||
}
|
||||
|
||||
static bool generic_menu_init_list(struct menu_state *menu_st)
|
||||
static bool generic_menu_init_list(struct menu_state *menu_st,
|
||||
settings_t *settings)
|
||||
{
|
||||
menu_displaylist_info_t info;
|
||||
menu_list_t *menu_list = menu_st->entries.list;
|
||||
@ -4423,7 +4433,7 @@ static bool generic_menu_init_list(struct menu_state *menu_st)
|
||||
|
||||
info.list = selection_buf;
|
||||
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_MAIN_MENU, &info))
|
||||
if (menu_displaylist_ctl(DISPLAYLIST_MAIN_MENU, &info, settings))
|
||||
menu_displaylist_process(&info);
|
||||
|
||||
menu_displaylist_info_free(&info);
|
||||
@ -4480,7 +4490,7 @@ static bool menu_driver_init_internal(
|
||||
return false;
|
||||
}
|
||||
else
|
||||
generic_menu_init_list(&p_rarch->menu_driver_state);
|
||||
generic_menu_init_list(&p_rarch->menu_driver_state, settings);
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -37293,7 +37303,8 @@ static enum runloop_state runloop_check_state(
|
||||
menu_st->selection_ptr = 0;
|
||||
menu_st->pending_quick_menu = false;
|
||||
}
|
||||
else if (!menu_driver_iterate(p_rarch, action, current_time))
|
||||
else if (!menu_driver_iterate(p_rarch, settings,
|
||||
action, current_time))
|
||||
{
|
||||
if (p_rarch->rarch_error_on_init)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user