diff --git a/src/lib/evas/canvas/evas_render.c b/src/lib/evas/canvas/evas_render.c index 06c8abff27..f1776ff958 100644 --- a/src/lib/evas/canvas/evas_render.c +++ b/src/lib/evas/canvas/evas_render.c @@ -1294,7 +1294,13 @@ evas_render_mapped(Evas_Public_Data *e, Evas_Object *eo_obj, , level + 1 #endif , do_async); - evas_object_change_reset(obj2->object); + /* We aren't sure this object will be rendered by + normal(not proxy) drawing after, we reset this + only in case of normal drawing. For optmizing, + push this object in an array then reset them + in the end of the rendering.*/ + if (!proxy_render_data) + evas_object_change_reset(obj2->object); } } else @@ -1418,7 +1424,13 @@ evas_render_mapped(Evas_Public_Data *e, Evas_Object *eo_obj, , level + 1 #endif , do_async); - evas_object_change_reset(obj2->object); + /* We aren't sure this object will be rendered by + normal(not proxy) drawing after, we reset this + only in case of normal drawing. For optmizing, + push this object in an array then reset them + in the end of the rendering.*/ + if (!proxy_render_data) + evas_object_change_reset(obj2->object); } } else