mirror of
https://github.com/libretro/RetroArch
synced 2025-02-02 14:54:10 +00:00
commit
db7e64c118
@ -45,10 +45,11 @@ static int rgui_entry_iterate(unsigned action)
|
|||||||
if (!menu->menu_list)
|
if (!menu->menu_list)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (action != MENU_ACTION_NOOP || menu->need_refresh)
|
if (action != MENU_ACTION_NOOP || menu->need_refresh ||
|
||||||
|
g_runloop.frames.video.current.menu.label.is_updated ||
|
||||||
|
g_runloop.frames.video.current.menu.animation.is_active)
|
||||||
{
|
{
|
||||||
g_runloop.frames.video.current.menu.framebuf.dirty = true;
|
g_runloop.frames.video.current.menu.framebuf.dirty = true;
|
||||||
g_runloop.frames.video.current.menu.label.is_updated = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -347,7 +348,8 @@ static void rgui_render(void)
|
|||||||
&& !g_runloop.frames.video.current.menu.label.is_updated)
|
&& !g_runloop.frames.video.current.menu.label.is_updated)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* framebuf.dirty will be cleared in set_texture() */
|
/* ensures the framebuffer will be rendered on the screen */
|
||||||
|
g_runloop.frames.video.current.menu.framebuf.dirty = true;
|
||||||
g_runloop.frames.video.current.menu.animation.is_active = false;
|
g_runloop.frames.video.current.menu.animation.is_active = false;
|
||||||
g_runloop.frames.video.current.menu.label.is_updated = false;
|
g_runloop.frames.video.current.menu.label.is_updated = false;
|
||||||
|
|
||||||
|
12
menu/menu.c
12
menu/menu.c
@ -391,17 +391,15 @@ int menu_iterate(retro_input_t input,
|
|||||||
menu->dt = IDEAL_DT / 4;
|
menu->dt = IDEAL_DT / 4;
|
||||||
menu->old_time = menu->cur_time;
|
menu->old_time = menu->cur_time;
|
||||||
|
|
||||||
if (driver.menu_ctx)
|
if (driver.menu_ctx && driver.menu_ctx->entry_iterate)
|
||||||
{
|
ret = driver.menu_ctx->entry_iterate(action);
|
||||||
if (driver.menu_ctx->set_texture)
|
|
||||||
driver.menu_ctx->set_texture();
|
|
||||||
if (driver.menu_ctx->entry_iterate)
|
|
||||||
ret = driver.menu_ctx->entry_iterate(action);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (g_runloop.is_menu)
|
if (g_runloop.is_menu)
|
||||||
draw_frame();
|
draw_frame();
|
||||||
|
|
||||||
|
if (driver.menu_ctx && driver.menu_ctx->set_texture)
|
||||||
|
driver.menu_ctx->set_texture();
|
||||||
|
|
||||||
if (ret)
|
if (ret)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user