diff --git a/menu/menu_driver.c b/menu/menu_driver.c index 600069f04e..e006f292bd 100644 --- a/menu/menu_driver.c +++ b/menu/menu_driver.c @@ -276,7 +276,7 @@ int menu_driver_iterate(enum menu_action action) return -1; } -void menu_driver_toggle(bool latch) +static void menu_driver_toggle(bool latch) { const menu_ctx_driver_t *menu_driver = menu_ctx_driver_get_ptr(); settings_t *settings = config_get_ptr(); @@ -375,6 +375,12 @@ bool menu_driver_ctl(enum rarch_menu_ctl_state state, void *data) switch (state) { + case RARCH_MENU_CTL_SET_TOGGLE: + menu_driver_toggle(true); + break; + case RARCH_MENU_CTL_UNSET_TOGGLE: + menu_driver_toggle(false); + break; case RARCH_MENU_CTL_SET_ALIVE: menu_driver_alive = true; break; diff --git a/menu/menu_driver.h b/menu/menu_driver.h index 36ce784fa8..3ca119de6c 100644 --- a/menu/menu_driver.h +++ b/menu/menu_driver.h @@ -66,6 +66,8 @@ enum rarch_menu_ctl_state { RARCH_MENU_CTL_NONE = 0, RARCH_MENU_CTL_DEINIT, + RARCH_MENU_CTL_SET_TOGGLE, + RARCH_MENU_CTL_UNSET_TOGGLE, RARCH_MENU_CTL_SET_ALIVE, RARCH_MENU_CTL_UNSET_ALIVE, RARCH_MENU_CTL_IS_ALIVE, @@ -208,8 +210,6 @@ void menu_driver_context_reset(void); void menu_driver_free(menu_handle_t *menu); -void menu_driver_toggle(bool latch); - bool menu_driver_load_image(void *data, menu_image_type_t type); void menu_driver_list_cache(menu_list_type_t type, unsigned action); diff --git a/retroarch.c b/retroarch.c index e4000ec2e1..fd471715ea 100644 --- a/retroarch.c +++ b/retroarch.c @@ -1394,7 +1394,7 @@ bool rarch_ctl(enum rarch_ctl_state state, void *data) return true; case RARCH_CTL_MENU_RUNNING: #ifdef HAVE_MENU - menu_driver_toggle(true); + menu_driver_ctl(RARCH_MENU_CTL_SET_TOGGLE, NULL); #endif #ifdef HAVE_OVERLAY if (settings->input.overlay_hide_in_menu) @@ -1429,7 +1429,7 @@ bool rarch_ctl(enum rarch_ctl_state state, void *data) break; case RARCH_CTL_MENU_RUNNING_FINISHED: #ifdef HAVE_MENU - menu_driver_toggle(false); + menu_driver_ctl(RARCH_MENU_CTL_UNSET_TOGGLE, NULL); #endif video_driver_set_texture_enable(false, false); #ifdef HAVE_OVERLAY