mirror of
https://github.com/libretro/RetroArch
synced 2025-03-29 22:20:21 +00:00
(RMenu) Do set_texture_frame only once in menu_init - solves busy loop
problem with XMB overlay
This commit is contained in:
parent
08f5ee4dc0
commit
b006f01029
@ -3218,6 +3218,10 @@ void menu_init(void)
|
||||
menu_stack_push(FILE_BROWSER_MENU, false);
|
||||
|
||||
rmenu_gfx_init();
|
||||
|
||||
if (driver.video_poke && driver.video_poke->set_texture_frame)
|
||||
driver.video_poke->set_texture_frame(driver.video_data, menu_texture->pixels,
|
||||
true, menu_texture->width, menu_texture->height, 1.0f);
|
||||
}
|
||||
|
||||
|
||||
@ -3240,14 +3244,9 @@ bool menu_iterate(void)
|
||||
if (g_extern.lifecycle_mode_state & (1ULL << MODE_MENU_INGAME))
|
||||
menu_stack_push(INGAME_MENU, false);
|
||||
|
||||
#ifndef __CELLOS_LV2__
|
||||
rmenu_gfx_init();
|
||||
#endif
|
||||
|
||||
g_extern.lifecycle_mode_state &= ~(1ULL << MODE_MENU_PREINIT);
|
||||
}
|
||||
|
||||
|
||||
//first button input frame
|
||||
uint64_t input_state_first_frame = 0;
|
||||
uint64_t input_state = 0;
|
||||
@ -3383,11 +3382,7 @@ bool menu_iterate(void)
|
||||
}
|
||||
|
||||
if (driver.video_poke && driver.video_poke->set_texture_enable)
|
||||
{
|
||||
driver.video_poke->set_texture_frame(driver.video_data, menu_texture->pixels,
|
||||
true, menu_texture->width, menu_texture->height, 1.0f);
|
||||
driver.video_poke->set_texture_enable(driver.video_data, menu_bg_show, true);
|
||||
}
|
||||
|
||||
// draw last frame for loading messages
|
||||
rarch_render_cached_frame();
|
||||
@ -3406,9 +3401,5 @@ deinit:
|
||||
if (!(g_extern.lifecycle_state & (1ULL << RARCH_FRAMEADVANCE)))
|
||||
g_extern.delay_timer[0] = g_extern.frame_count + 30;
|
||||
|
||||
#ifdef _XBOX1
|
||||
rmenu_gfx_free();
|
||||
#endif
|
||||
|
||||
return false;
|
||||
}
|
||||
|
@ -1351,6 +1351,10 @@ void menu_init (void)
|
||||
sizeof(browser->current_dir.root_dir));
|
||||
|
||||
filebrowser_iterate(browser, FILEBROWSER_ACTION_RESET);
|
||||
|
||||
if (driver.video_poke && driver.video_poke->set_texture_enable)
|
||||
driver.video_poke->set_texture_frame(driver.video_data, NULL,
|
||||
true, 0, 0, 1.0f);
|
||||
}
|
||||
|
||||
void menu_free (void)
|
||||
@ -1468,11 +1472,7 @@ bool menu_iterate(void)
|
||||
}
|
||||
|
||||
if (driver.video_poke && driver.video_poke->set_texture_enable)
|
||||
{
|
||||
driver.video_poke->set_texture_frame(driver.video_data, NULL,
|
||||
true, 0, 0, 1.0f);
|
||||
driver.video_poke->set_texture_enable(driver.video_data, true, true);
|
||||
}
|
||||
|
||||
rarch_render_cached_frame();
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user