raster pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=1bba6d5759d859d0db9ad5b5556883044d3a1b11

commit 1bba6d5759d859d0db9ad5b5556883044d3a1b11
Author: Carsten Haitzler (Rasterman) <[email protected]>
Date:   Wed Nov 23 13:57:27 2016 +0900

    evas phase 1 process - shortcut objects that are pure static clips only
    
    these objects don't actually produce - or should produce update
    regions etc. etc. as the objects that are clipped should produce those.
    they are not active objects. so skip them very early after just
    ensuring they are in delete objects if needed.
---
 src/lib/evas/canvas/evas_render.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/lib/evas/canvas/evas_render.c 
b/src/lib/evas/canvas/evas_render.c
index 66b5bee..bc136c3 100644
--- a/src/lib/evas/canvas/evas_render.c
+++ b/src/lib/evas/canvas/evas_render.c
@@ -854,19 +854,21 @@ _evas_render_phase1_object_process(Phase1_Context *p1ctx,
    Eina_Bool map, hmap, can_map, map_not_can_map, obj_changed, is_active;
 
    Evas_Object_Protected_Data *obj = efl_data_scope_get(eo_obj, 
EFL_CANVAS_OBJECT_CLASS);
-   //Need pre render for the children of mapped object.
-   //But only when they have changed.
-   if (mapped_parent && (!obj->changed)) return EINA_FALSE;
 
    obj->rect_del = EINA_FALSE;
    obj->render_pre = EINA_FALSE;
 
-   if (obj->delete_me == 2)
-      OBJ_ARRAY_PUSH(p1ctx->delete_objects, obj);
+   if (obj->delete_me == 2) OBJ_ARRAY_PUSH(p1ctx->delete_objects, obj);
    else if (obj->delete_me != 0) obj->delete_me++;
    /* If the object will be removed, we should not cache anything during this 
run. */
    if (obj->delete_me != 0) clean_them = EINA_TRUE;
 
+   if (obj->is_static_clip) return clean_them;
+
+   //Need pre render for the children of mapped object.
+   //But only when they have changed.
+   if (mapped_parent && (!obj->changed)) return clean_them;
+
    /* build active object list */
    evas_object_clip_recalc(obj);
 

-- 


Reply via email to