diff --git a/gfx/gfx_display.c b/gfx/gfx_display.c index 2c278cdae7..6ed54ab3e8 100644 --- a/gfx/gfx_display.c +++ b/gfx/gfx_display.c @@ -1473,29 +1473,6 @@ void gfx_display_set_msg_force(bool state) p_disp->msg_force = state; } -/* Checks if the display framebuffer has its 'dirty flag' set. This - * means that the current contents of the framebuffer has changed - * and that it has to be rendered to the screen. */ -bool gfx_display_get_framebuffer_dirty_flag(void) -{ - gfx_display_t *p_disp = disp_get_ptr(); - return p_disp->framebuf_dirty; -} - -/* Set the display framebuffer's 'dirty flag'. */ -void gfx_display_set_framebuffer_dirty_flag(void) -{ - gfx_display_t *p_disp = disp_get_ptr(); - p_disp->framebuf_dirty = true; -} - -/* Unset the display framebufer's 'dirty flag'. */ -void gfx_display_unset_framebuffer_dirty_flag(void) -{ - gfx_display_t *p_disp = disp_get_ptr(); - p_disp->framebuf_dirty = false; -} - void gfx_display_draw_keyboard( void *userdata, unsigned video_width, diff --git a/gfx/gfx_display.h b/gfx/gfx_display.h index be7b81e608..9154ea74d0 100644 --- a/gfx/gfx_display.h +++ b/gfx/gfx_display.h @@ -266,9 +266,6 @@ void gfx_display_set_framebuffer_pitch(size_t pitch); bool gfx_display_get_msg_force(void); void gfx_display_set_msg_force(bool state); -bool gfx_display_get_framebuffer_dirty_flag(void); -void gfx_display_set_framebuffer_dirty_flag(void); -void gfx_display_unset_framebuffer_dirty_flag(void); bool gfx_display_init_first_driver(bool video_is_threaded); gfx_display_t *disp_get_ptr(void); diff --git a/menu/drivers/rgui.c b/menu/drivers/rgui.c index ad83e2a297..a6366b5f78 100644 --- a/menu/drivers/rgui.c +++ b/menu/drivers/rgui.c @@ -3501,9 +3501,9 @@ static void rgui_render(void *data, } if (rgui->bg_modified) - rgui->bg_modified = false; + rgui->bg_modified = false; - gfx_display_set_framebuffer_dirty_flag(); + p_disp->framebuf_dirty = true; gfx_animation_ctl(MENU_ANIMATION_CTL_CLEAR_ACTIVE, NULL); rgui->force_redraw = false; @@ -4820,15 +4820,17 @@ static void rgui_set_texture(void) size_t fb_pitch; unsigned fb_width, fb_height; settings_t *settings = config_get_ptr(); + gfx_display_t *p_disp = disp_get_ptr(); unsigned internal_upscale_level = settings->uints.menu_rgui_internal_upscale_level; - if (!gfx_display_get_framebuffer_dirty_flag()) + /* Framebuffer is dirty and needs to be updated? */ + if (!p_disp->framebuf_dirty) return; gfx_display_get_fb_size(&fb_width, &fb_height, &fb_pitch); - gfx_display_unset_framebuffer_dirty_flag(); + p_disp->framebuf_dirty = false; if (internal_upscale_level == RGUI_UPSCALE_NONE) { @@ -5315,20 +5317,21 @@ static int rgui_environ(enum menu_environ_cb type, void *data, void *userdata) { rgui_t *rgui = (rgui_t*)userdata; + gfx_display_t *p_disp = disp_get_ptr(); switch (type) { case MENU_ENVIRON_ENABLE_MOUSE_CURSOR: if (!rgui) return -1; - rgui->mouse_show = true; - gfx_display_set_framebuffer_dirty_flag(); + rgui->mouse_show = true; + p_disp->framebuf_dirty = true; break; case MENU_ENVIRON_DISABLE_MOUSE_CURSOR: if (!rgui) return -1; - rgui->mouse_show = false; - gfx_display_unset_framebuffer_dirty_flag(); + rgui->mouse_show = false; + p_disp->framebuf_dirty = false; break; case 0: default: diff --git a/retroarch.c b/retroarch.c index 485d394d37..9a1cba3ab1 100644 --- a/retroarch.c +++ b/retroarch.c @@ -15768,7 +15768,7 @@ static void command_event_reinit(struct rarch_state *p_rarch, command_event(CMD_EVENT_GAME_FOCUS_TOGGLE, (void*)(intptr_t)-1); #ifdef HAVE_MENU - gfx_display_set_framebuffer_dirty_flag(); + p_rarch->dispgfx.framebuf_dirty = true; if (video_fullscreen) video_driver_hide_mouse(); if (p_rarch->menu_driver_alive && p_rarch->current_video->set_nonblock_state) @@ -39401,7 +39401,7 @@ static enum runloop_state runloop_check_state( BIT64_SET(menu->state, MENU_STATE_RENDER_FRAMEBUFFER); if (BIT64_GET(menu->state, MENU_STATE_RENDER_FRAMEBUFFER)) - gfx_display_set_framebuffer_dirty_flag(); + p_rarch->dispgfx.framebuf_dirty = true; if (BIT64_GET(menu->state, MENU_STATE_RENDER_MESSAGEBOX) && !string_is_empty(menu->menu_state_msg))