hermet pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=39599d1a26dc874d5fdb9c40edf3db77e44807a8

commit 39599d1a26dc874d5fdb9c40edf3db77e44807a8
Author: ChunEon Park <her...@hermet.pe.kr>
Date:   Mon Nov 25 16:05:12 2013 +0900

    evas - code refactoring.
    
    merge duplicated(almost) functions to one.
---
 src/lib/evas/canvas/evas_object_smart.c | 45 ++++++++++-----------------------
 src/lib/evas/canvas/evas_render.c       | 12 +--------
 2 files changed, 15 insertions(+), 42 deletions(-)

diff --git a/src/lib/evas/canvas/evas_object_smart.c 
b/src/lib/evas/canvas/evas_object_smart.c
index 194ed35..6a49c4d 100644
--- a/src/lib/evas/canvas/evas_object_smart.c
+++ b/src/lib/evas/canvas/evas_object_smart.c
@@ -1218,48 +1218,31 @@ _smart_changed(Eo *eo_obj, void *_pd EINA_UNUSED, 
va_list *list EINA_UNUSED)
    eo_do(eo_obj, evas_obj_smart_need_recalculate_set(1));
 }
 
-static Eina_Bool
-_smart_members_changed_check(Evas_Object *eo_obj, Evas_Object_Protected_Data 
*obj)
+Eina_Bool
+evas_object_smart_changed_get(Evas_Object *eo_obj)
 {
+   Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJ_CLASS);
    Evas_Object_Protected_Data *o2;
 
    if (!evas_object_is_visible(eo_obj, obj) &&
        !evas_object_was_visible(eo_obj, obj))
      return EINA_FALSE;
 
-   if (!obj->smart.smart)
+   if (!obj->clip.clipees)
      {
-        if (obj->changed && !obj->clip.clipees) return EINA_TRUE;
-        return EINA_FALSE;
-     }
-   if (_evas_render_has_map(eo_obj, obj))
-     {
-        if (((obj->changed_pchange) && (obj->changed_map)) ||
-            (obj->changed_color)) return EINA_TRUE;
-     }
-
-   EINA_INLIST_FOREACH(evas_object_smart_members_get_direct(eo_obj), o2)
-     if (_smart_members_changed_check(o2->object, o2)) return EINA_TRUE;
-
-   return EINA_FALSE;
-}
-
-Eina_Bool
-evas_object_smart_changed_get(Evas_Object *eo_obj)
-{
-   Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJ_CLASS);
-   Evas_Object_Protected_Data *o2;
-
-   if (!obj->is_smart)
-     {
-        if (obj->changed && !obj->clip.clipees) return EINA_TRUE;
-        else return EINA_FALSE;
+        if (obj->changed)
+          {
+             if (_evas_render_has_map(eo_obj, obj))
+               {
+                  if (((obj->changed_pchange) && (obj->changed_map)) ||
+                      (obj->changed_color)) return EINA_TRUE;
+               }
+             else if (!obj->is_smart) return EINA_TRUE;
+          }
      }
 
-   if (obj->changed_color) return EINA_TRUE;
-
    EINA_INLIST_FOREACH(evas_object_smart_members_get_direct(eo_obj), o2)
-     if (_smart_members_changed_check(o2->object, o2)) return EINA_TRUE;
+     if (evas_object_smart_changed_get(o2->object)) return EINA_TRUE;
 
    return EINA_FALSE;
 }
diff --git a/src/lib/evas/canvas/evas_render.c 
b/src/lib/evas/canvas/evas_render.c
index 18d196f..6f90170 100644
--- a/src/lib/evas/canvas/evas_render.c
+++ b/src/lib/evas/canvas/evas_render.c
@@ -1251,17 +1251,7 @@ evas_render_mapped(Evas_Public_Data *e, Evas_Object 
*eo_obj,
              changed = EINA_TRUE;
           }
 
-        if (!changed)
-          {
-             if (obj->is_smart)
-               changed = evas_object_smart_changed_get(eo_obj);
-             else if (obj->changed)
-               {
-                  if (((obj->changed_pchange) && (obj->changed_map)) ||
-                      (obj->changed_color))
-                    changed = EINA_TRUE;
-               }
-          }
+        if (!changed) changed = evas_object_smart_changed_get(eo_obj);
 
         /* mark the old map as invalid, so later we don't reuse it as a
          * cache. */

-- 


Reply via email to