From 74edbf7339af0ef6ad43d6860022b9a0ead7308e Mon Sep 17 00:00:00 2001 From: twinaphex Date: Thu, 11 Apr 2013 16:38:12 +0200 Subject: [PATCH] (RMenu XUI / 360) Made RMenu XUI independent of MODE_MENU_DRAW - MODE_MENU_DRAW removed --- frontend/menu/rmenu_xui.cpp | 26 +++++++++++--------------- general.h | 1 - xdk/xdk_d3d.cpp | 5 +++-- 3 files changed, 14 insertions(+), 18 deletions(-) diff --git a/frontend/menu/rmenu_xui.cpp b/frontend/menu/rmenu_xui.cpp index d286e9cceb..d21e0e0d98 100644 --- a/frontend/menu/rmenu_xui.cpp +++ b/frontend/menu/rmenu_xui.cpp @@ -1396,7 +1396,6 @@ bool menu_iterate(void) if (g_extern.lifecycle_mode_state & (1ULL << MODE_MENU_PREINIT)) { input_loop = INPUT_LOOP_MENU; - g_extern.lifecycle_mode_state |= (1ULL << MODE_MENU_DRAW); g_extern.lifecycle_mode_state &= ~(1ULL << MODE_MENU_PREINIT); } @@ -1422,7 +1421,6 @@ bool menu_iterate(void) process_input_ret = -1; } - if (!(g_extern.frame_count < g_extern.delay_timer[0])) { bool rmenu_enable = ((state.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_THUMB) @@ -1436,17 +1434,6 @@ 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, false); - } - - rarch_render_cached_frame(); - - if (driver.video_poke && driver.video_poke->set_texture_enable) - driver.video_poke->set_texture_enable(driver.video_data, false); switch(input_loop) { @@ -1471,7 +1458,17 @@ bool menu_iterate(void) driver.video_poke->set_osd_msg(driver.video_data, msg, NULL); } - device_ptr->ctx_driver->swap_buffers(); + 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); + } + + rarch_render_cached_frame(); + + if (driver.video_poke && driver.video_poke->set_texture_enable) + driver.video_poke->set_texture_enable(driver.video_data, false); if(process_input_ret != 0) goto deinit; @@ -1485,7 +1482,6 @@ deinit: g_extern.delay_timer[0] = g_extern.frame_count + 30; g_extern.lifecycle_mode_state &= ~(1ULL << MODE_MENU_INGAME); - g_extern.lifecycle_mode_state &= ~(1ULL << MODE_MENU_DRAW); process_input_ret = 0; diff --git a/general.h b/general.h index 77dc815bcf..2c5b835796 100644 --- a/general.h +++ b/general.h @@ -112,7 +112,6 @@ enum menu_enums MODE_MENU_PREINIT, MODE_MENU_INGAME, MODE_MENU_INGAME_EXIT, - MODE_MENU_DRAW, MODE_MENU_LOW_RAM_MODE_ENABLE, MODE_MENU_LOW_RAM_MODE_ENABLE_PENDING, MODE_INFO_DRAW, diff --git a/xdk/xdk_d3d.cpp b/xdk/xdk_d3d.cpp index 4030183326..f7dbf4f960 100644 --- a/xdk/xdk_d3d.cpp +++ b/xdk/xdk_d3d.cpp @@ -932,8 +932,9 @@ static bool xdk_d3d_frame(void *data, const void *frame, #endif #if defined(HAVE_RGUI) || defined(HAVE_RMENU) -#ifdef HAVE_RMENU_XUI - if (lifecycle_mode_state & (1ULL << MODE_MENU_DRAW)) + +#if defined(HAVE_RMENU_XUI) || defined(HAVE_RGUI) + if (d3d->rgui_texture_enable) #endif xdk_d3d_draw_texture(d3d); #endif