diff options
Diffstat (limited to 'apps/gui/skin_engine/skin_engine.c')
-rw-r--r-- | apps/gui/skin_engine/skin_engine.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/apps/gui/skin_engine/skin_engine.c b/apps/gui/skin_engine/skin_engine.c index cd763def1c..049629b181 100644 --- a/apps/gui/skin_engine/skin_engine.c +++ b/apps/gui/skin_engine/skin_engine.c | |||
@@ -312,7 +312,11 @@ struct wps_state *skin_get_global_state(void) | |||
312 | bool skin_do_full_update(enum skinnable_screens skin, | 312 | bool skin_do_full_update(enum skinnable_screens skin, |
313 | enum screen_type screen) | 313 | enum screen_type screen) |
314 | { | 314 | { |
315 | bool ret = skins[skin][screen].needs_full_update; | 315 | struct viewport *vp = *(screens[screen].current_viewport); |
316 | |||
317 | bool vp_is_dirty = ((vp->flags & VP_FLAG_VP_SET_CLEAN) == VP_FLAG_VP_DIRTY); | ||
318 | |||
319 | bool ret = (skins[skin][screen].needs_full_update || vp_is_dirty); | ||
316 | skins[skin][screen].needs_full_update = false; | 320 | skins[skin][screen].needs_full_update = false; |
317 | return ret; | 321 | return ret; |
318 | } | 322 | } |