If only objects on planes change, we don't see any damage for the main
buffer, so a page flip never occurs and the plane doesn't update. For
now forcing a tiny damage area is the easy way to work around this.
Also force a pixels get callback for enlightenment's surface frame
callback tracking.
Signed-off-by: Derek Foreman <derek.foreman.samsung@gmail.com>
Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7196
if (!obj->layer) return;
if (obj->is_smart) goto end;
+
+ if (evas_object_is_on_plane(eo_obj, obj))
+ {
+ /* We need some damage to occur if only planes are being updated,
+ or nothing will provoke a page flip.
+ */
+ obj->layer->evas->engine.func->output_redraws_rect_add(ENC,
+ 0, 0, 1, 1);
+ /* Force a pixels get callback for E's benefit :( */
+ evas_object_pixels_get_force(eo_obj, obj);
+ goto end;
+ }
/* FIXME: was_v isn't used... why? */
if (!obj->clip.clipees)
{