add full damage for x11 override clients on resize configure event
authorMike Blumenkrantz <zmike@osg.samsung.com>
Fri, 21 Aug 2015 18:51:33 +0000 (14:51 -0400)
committerMike Blumenkrantz <zmike@osg.samsung.com>
Fri, 21 Aug 2015 18:51:33 +0000 (14:51 -0400)
it seems that the reported damage events upon resizing an override window
are not accurate, and so we must force a full damage here while avoiding a
render queue in order to ensure that the full contents of the override will
be rendered in the next frame

fix T2045

src/bin/e_comp_x.c

index 1b4ca1a..e986daf 100644 (file)
@@ -1479,6 +1479,11 @@ _e_comp_x_configure(void *data EINA_UNUSED, int type EINA_UNUSED, Ecore_X_Event_
      {
         e_pixmap_dirty(ec->pixmap);
         evas_object_resize(ec->frame, ev->w, ev->h);
+        if (ec->override && (!ec->input_only))
+          {
+             e_comp_object_damage(ec->frame, 0, 0, ev->w, ev->h);
+             e_comp_object_render_update_del(ec->frame);
+          }
      }
    return ECORE_CALLBACK_RENEW;
 }