diff --git a/Makefile.common b/Makefile.common index 81a2735006..db933d9c46 100644 --- a/Makefile.common +++ b/Makefile.common @@ -316,6 +316,7 @@ ifeq ($(HAVE_MENU_COMMON), 1) menu/menu_entries_cbs_cancel.o \ menu/menu_entries_cbs_start.o \ menu/menu_entries_cbs_select.o \ + menu/menu_entries_cbs_refresh.o \ menu/menu_entries_cbs_toggle.o \ menu/menu_entries_cbs_deferred_push.o \ menu/menu_entries_cbs_representation.o \ diff --git a/griffin/griffin.c b/griffin/griffin.c index b6e29dd84e..eba2c043ee 100644 --- a/griffin/griffin.c +++ b/griffin/griffin.c @@ -683,6 +683,7 @@ MENU #include "../menu/menu_entries_cbs_cancel.c" #include "../menu/menu_entries_cbs_start.c" #include "../menu/menu_entries_cbs_select.c" +#include "../menu/menu_entries_cbs_refresh.c" #include "../menu/menu_entries_cbs_toggle.c" #include "../menu/menu_entries_cbs_deferred_push.c" #include "../menu/menu_entries_cbs_representation.c" diff --git a/menu/menu_entries_cbs.c b/menu/menu_entries_cbs.c index 0057186249..78a9d0608d 100644 --- a/menu/menu_entries_cbs.c +++ b/menu/menu_entries_cbs.c @@ -152,21 +152,6 @@ int cb_core_updater_download(void *data_, size_t len) } #endif - -static int action_refresh_default(file_list_t *list, file_list_t *menu_list) -{ - int ret = 0; - menu_handle_t *menu = menu_driver_resolve(); - if (!menu) - return -1; - - ret = menu_entries_deferred_push(list, menu_list); - - menu->need_refresh = false; - - return ret; -} - static void menu_entries_cbs_init_bind_content_list_switch(menu_file_list_cbs_t *cbs, const char *path, const char *label, unsigned type, size_t idx, const char *elem0, const char *elem1) @@ -201,14 +186,6 @@ int menu_entries_common_is_settings_entry(const char *label) !strcmp(label, "Privacy Settings")); } -static void menu_entries_cbs_init_bind_refresh(menu_file_list_cbs_t *cbs, - const char *path, const char *label, unsigned type, size_t idx, - const char *elem0, const char *elem1) -{ - if (cbs) - cbs->action_refresh = action_refresh_default; -} - void menu_entries_cbs_init(void *data, const char *path, const char *label, unsigned type, size_t idx) diff --git a/menu/menu_entries_cbs.h b/menu/menu_entries_cbs.h index 057e4a3917..ebec72578a 100644 --- a/menu/menu_entries_cbs.h +++ b/menu/menu_entries_cbs.h @@ -34,6 +34,10 @@ void menu_entries_common_load_content(bool persist); int menu_entries_common_is_settings_entry(const char *label); +void menu_entries_cbs_init_bind_refresh(menu_file_list_cbs_t *cbs, + const char *path, const char *label, unsigned type, size_t idx, + const char *elem0, const char *elem1); + void menu_entries_cbs_init_bind_get_string_representation(menu_file_list_cbs_t *cbs, const char *path, const char *label, unsigned type, size_t idx, const char *elem0, const char *elem1); diff --git a/menu/menu_entries_cbs_refresh.c b/menu/menu_entries_cbs_refresh.c new file mode 100644 index 0000000000..6575d96f94 --- /dev/null +++ b/menu/menu_entries_cbs_refresh.c @@ -0,0 +1,68 @@ +/* RetroArch - A frontend for libretro. + * Copyright (C) 2011-2015 - Daniel De Matteis + * + * RetroArch is free software: you can redistribute it and/or modify it under the terms + * of the GNU General Public License as published by the Free Software Found- + * ation, either version 3 of the License, or (at your option) any later version. + * + * RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; + * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with RetroArch. + * If not, see . + */ + +#include +#include "menu.h" +#include "menu_entries_cbs.h" +#include "menu_setting.h" +#include "menu_input.h" +#include "menu_entries.h" +#include "menu_shader.h" +#include "menu_navigation.h" + +#include "../file_ext.h" +#include "../file_extract.h" +#include "../file_ops.h" +#include "../config.def.h" +#include "../cheats.h" +#include "../retroarch.h" +#include "../performance.h" + +#ifdef HAVE_NETWORKING +#include "../net_http.h" +#endif + +#ifdef HAVE_LIBRETRODB +#include "../database_info.h" +#endif + +#include "menu_database.h" + +#include "../input/input_autodetect.h" +#include "../input/input_remapping.h" + +#include "../gfx/video_viewport.h" + +static int action_refresh_default(file_list_t *list, file_list_t *menu_list) +{ + int ret = 0; + menu_handle_t *menu = menu_driver_resolve(); + if (!menu) + return -1; + + ret = menu_entries_deferred_push(list, menu_list); + + menu->need_refresh = false; + + return ret; +} + +void menu_entries_cbs_init_bind_refresh(menu_file_list_cbs_t *cbs, + const char *path, const char *label, unsigned type, size_t idx, + const char *elem0, const char *elem1) +{ + if (cbs) + cbs->action_refresh = action_refresh_default; +}