mirror of
https://github.com/gnif/LookingGlass.git
synced 2025-08-06 10:44:01 +00:00
[client] all: make it possible to signal full window invalidation
Now that we are drawing with damage rects, when the window is hidden and then exposed the window may not get fully redrawn. This provides `app_invalidateWindow` for the display server backend to call when the screen needs a full redraw.
This commit is contained in:
@@ -791,7 +791,8 @@ bool egl_render_startup(void * opaque)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool egl_render(void * opaque, LG_RendererRotate rotate, const bool newFrame)
|
||||
bool egl_render(void * opaque, LG_RendererRotate rotate, const bool newFrame,
|
||||
const bool invalidateWindow)
|
||||
{
|
||||
struct Inst * this = (struct Inst *)opaque;
|
||||
|
||||
@@ -856,6 +857,7 @@ bool egl_render(void * opaque, LG_RendererRotate rotate, const bool newFrame)
|
||||
}
|
||||
|
||||
hasOverlay |= egl_damage_render(this->damage, newFrame ? desktopDamage : NULL);
|
||||
hasOverlay |= invalidateWindow;
|
||||
|
||||
struct Rect damage[KVMFR_MAX_DAMAGE_RECTS + MAX_OVERLAY_RECTS + 2];
|
||||
int damageIdx = app_renderOverlay(damage, MAX_OVERLAY_RECTS);
|
||||
|
@@ -456,7 +456,8 @@ bool opengl_render_startup(void * opaque)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool opengl_render(void * opaque, LG_RendererRotate rotate, const bool newFrame)
|
||||
bool opengl_render(void * opaque, LG_RendererRotate rotate, const bool newFrame,
|
||||
const bool invalidateWindow)
|
||||
{
|
||||
struct Inst * this = (struct Inst *)opaque;
|
||||
if (!this)
|
||||
|
Reference in New Issue
Block a user