do not reset existing client damage on resize if tiler size matches pixmap size

this probably indicates a case where the client wasn't actually resized and the
compositor is doing something like shading a window
This commit is contained in:
Mike Blumenkrantz 2017-09-01 13:40:12 -04:00
parent 55f4a37492
commit a76e9aa8fe
1 changed files with 12 additions and 3 deletions

View File

@ -2608,9 +2608,18 @@ _e_comp_smart_resize(Evas_Object *obj, int w, int h)
/* resize render update tiler */
if (!first)
{
RENDER_DEBUG("DAMAGE UNFULL: %p", cw->ec);
cw->updates_full = 0;
if (cw->updates) eina_tiler_clear(cw->updates);
if (cw->updates)
{
int tw, th;
eina_tiler_area_size_get(cw->updates, &tw, &th);
if ((tw != pw) || (th != ph))
{
RENDER_DEBUG("DAMAGE UNFULL: %p", cw->ec);
cw->updates_full = 0;
eina_tiler_clear(cw->updates);
}
}
}
else
{