Get rid of GENERIC_DEFERRED_PUSH_CLEAR_GENERAL - do

MENU_ENTRIES_CTL_CLEAR inside menu_displaylist_ctl instead
This commit is contained in:
twinaphex 2021-03-10 09:03:11 +01:00 committed by Autechre
parent a2031608e7
commit 44c69561b7
2 changed files with 39 additions and 32 deletions

View File

@ -65,13 +65,6 @@ static int (name)(menu_displaylist_info_t *info) \
return general_push(info, a, b); \ return general_push(info, a, b); \
} }
#define GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(name, a, b) \
static int (name)(menu_displaylist_info_t *info) \
{ \
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list); \
return general_push(info, a, b); \
}
static int deferred_push_dlist( static int deferred_push_dlist(
menu_displaylist_info_t *info, menu_displaylist_info_t *info,
enum menu_displaylist_ctl_state state) enum menu_displaylist_ctl_state state)
@ -632,29 +625,29 @@ GENERIC_DEFERRED_PUSH_GENERAL(deferred_archive_open, PUSH_ARCHIVE_OPEN, DISPLAYL
GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_default, PUSH_DEFAULT, DISPLAYLIST_DEFAULT) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_default, PUSH_DEFAULT, DISPLAYLIST_DEFAULT)
GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_favorites_list, PUSH_DEFAULT, DISPLAYLIST_FAVORITES) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_favorites_list, PUSH_DEFAULT, DISPLAYLIST_FAVORITES)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_playlist_list, PUSH_DEFAULT, DISPLAYLIST_PLAYLIST) GENERIC_DEFERRED_PUSH_GENERAL(deferred_playlist_list, PUSH_DEFAULT, DISPLAYLIST_PLAYLIST)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_music_history_list, PUSH_DEFAULT, DISPLAYLIST_MUSIC_HISTORY) GENERIC_DEFERRED_PUSH_GENERAL(deferred_music_history_list, PUSH_DEFAULT, DISPLAYLIST_MUSIC_HISTORY)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_image_history_list, PUSH_DEFAULT, DISPLAYLIST_IMAGES_HISTORY) GENERIC_DEFERRED_PUSH_GENERAL(deferred_image_history_list, PUSH_DEFAULT, DISPLAYLIST_IMAGES_HISTORY)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_video_history_list, PUSH_DEFAULT, DISPLAYLIST_VIDEO_HISTORY) GENERIC_DEFERRED_PUSH_GENERAL(deferred_video_history_list, PUSH_DEFAULT, DISPLAYLIST_VIDEO_HISTORY)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_explore_list, PUSH_DEFAULT, DISPLAYLIST_EXPLORE) GENERIC_DEFERRED_PUSH_GENERAL(deferred_explore_list, PUSH_DEFAULT, DISPLAYLIST_EXPLORE)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_special, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_SPECIAL) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_special, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_SPECIAL)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_resolution, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_RESOLUTION) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_resolution, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_RESOLUTION)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_video_shader_num_passes, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_VIDEO_SHADER_NUM_PASSES) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_video_shader_num_passes, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_VIDEO_SHADER_NUM_PASSES)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_shader_parameter, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_VIDEO_SHADER_PARAMETER) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_shader_parameter, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_VIDEO_SHADER_PARAMETER)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_shader_preset_parameter, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_VIDEO_SHADER_PRESET_PARAMETER) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_shader_preset_parameter, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_VIDEO_SHADER_PRESET_PARAMETER)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_playlist_default_core, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_DEFAULT_CORE) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_playlist_default_core, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_DEFAULT_CORE)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_playlist_label_display_mode, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_LABEL_DISPLAY_MODE) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_playlist_label_display_mode, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_LABEL_DISPLAY_MODE)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_playlist_right_thumbnail_mode, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_RIGHT_THUMBNAIL_MODE) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_playlist_right_thumbnail_mode, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_RIGHT_THUMBNAIL_MODE)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_playlist_left_thumbnail_mode, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_LEFT_THUMBNAIL_MODE) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_playlist_left_thumbnail_mode, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_LEFT_THUMBNAIL_MODE)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_playlist_sort_mode, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_SORT_MODE) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_playlist_sort_mode, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_SORT_MODE)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_manual_content_scan_system_name, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_MANUAL_CONTENT_SCAN_SYSTEM_NAME) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_manual_content_scan_system_name, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_MANUAL_CONTENT_SCAN_SYSTEM_NAME)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_manual_content_scan_core_name, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_MANUAL_CONTENT_SCAN_CORE_NAME) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_manual_content_scan_core_name, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_MANUAL_CONTENT_SCAN_CORE_NAME)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_disk_index, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_DISK_INDEX) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_disk_index, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_DISK_INDEX)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_input_device_type, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_INPUT_DEVICE_TYPE) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_input_device_type, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_INPUT_DEVICE_TYPE)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_input_device_index, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_INPUT_DEVICE_INDEX) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_input_device_index, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_INPUT_DEVICE_INDEX)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_input_description, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_INPUT_DESCRIPTION) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_input_description, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_INPUT_DESCRIPTION)
GENERIC_DEFERRED_PUSH_CLEAR_GENERAL(deferred_push_dropdown_box_list_input_description_kbd, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_INPUT_DESCRIPTION_KBD) GENERIC_DEFERRED_PUSH_GENERAL(deferred_push_dropdown_box_list_input_description_kbd, PUSH_DEFAULT, DISPLAYLIST_DROPDOWN_LIST_INPUT_DESCRIPTION_KBD)
static int menu_cbs_init_bind_deferred_push_compare_label( static int menu_cbs_init_bind_deferred_push_compare_label(
menu_file_list_cbs_t *cbs, menu_file_list_cbs_t *cbs,

View File

@ -5810,6 +5810,7 @@ unsigned menu_displaylist_build_list(
count = menu_displaylist_parse_system_info(list); count = menu_displaylist_parse_system_info(list);
break; break;
case DISPLAYLIST_EXPLORE: case DISPLAYLIST_EXPLORE:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list);
#if defined(HAVE_LIBRETRODB) #if defined(HAVE_LIBRETRODB)
count = menu_displaylist_explore(list); count = menu_displaylist_explore(list);
#endif #endif
@ -6641,6 +6642,7 @@ unsigned menu_displaylist_build_list(
#endif #endif
break; break;
case DISPLAYLIST_DROPDOWN_LIST_RESOLUTION: case DISPLAYLIST_DROPDOWN_LIST_RESOLUTION:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list);
{ {
unsigned i, size = 0; unsigned i, size = 0;
struct video_display_config *video_list = (struct video_display_config*) struct video_display_config *video_list = (struct video_display_config*)
@ -6677,6 +6679,7 @@ unsigned menu_displaylist_build_list(
} }
break; break;
case DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_DEFAULT_CORE: case DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_DEFAULT_CORE:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list);
{ {
core_info_list_t *core_info_list = NULL; core_info_list_t *core_info_list = NULL;
playlist_t *playlist = playlist_get_cached(); playlist_t *playlist = playlist_get_cached();
@ -6740,6 +6743,7 @@ unsigned menu_displaylist_build_list(
} }
break; break;
case DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_LABEL_DISPLAY_MODE: case DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_LABEL_DISPLAY_MODE:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list);
{ {
playlist_t *playlist = playlist_get_cached(); playlist_t *playlist = playlist_get_cached();
@ -6801,12 +6805,15 @@ unsigned menu_displaylist_build_list(
} }
break; break;
case DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_RIGHT_THUMBNAIL_MODE: case DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_RIGHT_THUMBNAIL_MODE:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list);
count = populate_playlist_thumbnail_mode_dropdown_list(list, PLAYLIST_THUMBNAIL_RIGHT); count = populate_playlist_thumbnail_mode_dropdown_list(list, PLAYLIST_THUMBNAIL_RIGHT);
break; break;
case DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_LEFT_THUMBNAIL_MODE: case DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_LEFT_THUMBNAIL_MODE:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list);
count = populate_playlist_thumbnail_mode_dropdown_list(list, PLAYLIST_THUMBNAIL_LEFT); count = populate_playlist_thumbnail_mode_dropdown_list(list, PLAYLIST_THUMBNAIL_LEFT);
break; break;
case DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_SORT_MODE: case DISPLAYLIST_DROPDOWN_LIST_PLAYLIST_SORT_MODE:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list);
{ {
playlist_t *playlist = playlist_get_cached(); playlist_t *playlist = playlist_get_cached();
@ -6861,6 +6868,7 @@ unsigned menu_displaylist_build_list(
} }
break; break;
case DISPLAYLIST_DROPDOWN_LIST_MANUAL_CONTENT_SCAN_SYSTEM_NAME: case DISPLAYLIST_DROPDOWN_LIST_MANUAL_CONTENT_SCAN_SYSTEM_NAME:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list);
/* Get system name list */ /* Get system name list */
{ {
settings_t *settings = config_get_ptr(); settings_t *settings = config_get_ptr();
@ -6917,6 +6925,7 @@ unsigned menu_displaylist_build_list(
} }
break; break;
case DISPLAYLIST_DROPDOWN_LIST_MANUAL_CONTENT_SCAN_CORE_NAME: case DISPLAYLIST_DROPDOWN_LIST_MANUAL_CONTENT_SCAN_CORE_NAME:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list);
{ {
/* Get core name list */ /* Get core name list */
struct string_list *core_name_list = struct string_list *core_name_list =
@ -6962,6 +6971,7 @@ unsigned menu_displaylist_build_list(
} }
break; break;
case DISPLAYLIST_DROPDOWN_LIST_DISK_INDEX: case DISPLAYLIST_DROPDOWN_LIST_DISK_INDEX:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, list);
{ {
rarch_system_info_t *sys_info = runloop_get_system_info(); rarch_system_info_t *sys_info = runloop_get_system_info();
@ -10807,6 +10817,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
} }
break; break;
case DISPLAYLIST_MUSIC_HISTORY: case DISPLAYLIST_MUSIC_HISTORY:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
{ {
settings_t *settings = config_get_ptr(); settings_t *settings = config_get_ptr();
const char * const char *
@ -10849,6 +10860,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
} }
break; break;
case DISPLAYLIST_VIDEO_HISTORY: case DISPLAYLIST_VIDEO_HISTORY:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
info->count = 0; info->count = 0;
#if defined(HAVE_FFMPEG) || defined(HAVE_MPV) #if defined(HAVE_FFMPEG) || defined(HAVE_MPV)
{ {
@ -12238,6 +12250,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
use_filebrowser = true; use_filebrowser = true;
break; break;
case DISPLAYLIST_PLAYLIST: case DISPLAYLIST_PLAYLIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
menu_displaylist_parse_playlist_generic(menu, info, menu_displaylist_parse_playlist_generic(menu, info,
path_basename(info->path), path_basename(info->path),
info->path, info->path,
@ -12257,6 +12270,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
} }
break; break;
case DISPLAYLIST_IMAGES_HISTORY: case DISPLAYLIST_IMAGES_HISTORY:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
info->count = 0; info->count = 0;
#ifdef HAVE_IMAGEVIEWER #ifdef HAVE_IMAGEVIEWER
{ {
@ -12487,9 +12501,8 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
info->need_push = true; info->need_push = true;
break; break;
case DISPLAYLIST_DROPDOWN_LIST: case DISPLAYLIST_DROPDOWN_LIST:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
{ {
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
if (string_starts_with_size(info->path, "core_option_", if (string_starts_with_size(info->path, "core_option_",
STRLEN_CONST("core_option_"))) STRLEN_CONST("core_option_")))
{ {
@ -12911,6 +12924,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
} }
break; break;
case DISPLAYLIST_DROPDOWN_LIST_VIDEO_SHADER_NUM_PASSES: case DISPLAYLIST_DROPDOWN_LIST_VIDEO_SHADER_NUM_PASSES:
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
#if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL) #if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL)
{ {
unsigned i; unsigned i;