[Transparency issues after merging- versions 51733 and 51833 of elm_widget issue...
authorshilpa singh <shilpa.singh@samsung.com>
Thu, 14 Oct 2010 11:35:11 +0000 (20:35 +0900)
committershilpa singh <shilpa.singh@samsung.com>
Thu, 14 Oct 2010 11:35:11 +0000 (20:35 +0900)
src/lib/elm_pager.c
src/lib/elm_widget.c

index 6310be7..a52b275 100644 (file)
@@ -289,6 +289,7 @@ elm_pager_content_push(Evas_Object *obj, Evas_Object *content)
                                   _changed_size_hints, it);
    edje_object_part_swallow(it->base, "elm.swallow.content", it->content);
    edje_object_size_min_calc(it->base, &it->minw, &it->minh);
+   evas_object_data_set(it->base, "_elm_leaveme", obj);
    evas_object_show(it->content);
    wd->stack = eina_list_append(wd->stack, it);
    _eval_top(obj);
index 35eafee..91579e7 100644 (file)
@@ -1333,38 +1333,72 @@ _smart_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h)
 static void
 _smart_show(Evas_Object *obj)
 {
+   Eina_List *list, *l;
+   Evas_Object *o;
    INTERNAL_ENTRY;
-   evas_object_show(sd->resize_obj);
+   list = evas_object_smart_members_get(obj);
+   EINA_LIST_FOREACH(list, l, o)
+     {
+        if (evas_object_data_get(o, "_elm_leaveme")) continue;
+        evas_object_show(o);
+     }
 }
 
 static void
 _smart_hide(Evas_Object *obj)
 {
+   Eina_List *list, *l;
+   Evas_Object *o;
    INTERNAL_ENTRY;
-   evas_object_hide(sd->resize_obj);
+   list = evas_object_smart_members_get(obj);
+   EINA_LIST_FOREACH(list, l, o)
+     {
+        if (evas_object_data_get(o, "_elm_leaveme")) continue;
+        evas_object_hide(o);
+     }
    _if_focused_revert(obj);
 }
 
 static void
 _smart_color_set(Evas_Object *obj, int r, int g, int b, int a)
 {
+   Eina_List *list, *l;
+   Evas_Object *o;
    INTERNAL_ENTRY;
-   evas_object_color_set(sd->resize_obj, r, g, b, a);
+   list = evas_object_smart_members_get(obj);
+   EINA_LIST_FOREACH(list, l, o)
+     {
+        if (evas_object_data_get(o, "_elm_leaveme")) continue;
+        evas_object_color_set(o, r, g, b, a);
+     }
 }
 
 static void
 _smart_clip_set(Evas_Object *obj, Evas_Object *clip)
 {
+   Eina_List *list, *l;
+   Evas_Object *o;
    INTERNAL_ENTRY;
-   evas_object_clip_set(sd->resize_obj, clip);
+   list = evas_object_smart_members_get(obj);
+   EINA_LIST_FOREACH(list, l, o)
+     {
+        if (evas_object_data_get(o, "_elm_leaveme")) continue;
+        evas_object_clip_set(o, clip);
+     }
 }
 
 static void
 _smart_clip_unset(Evas_Object *obj)
 {
+   Eina_List *list, *l;
+   Evas_Object *o;
    INTERNAL_ENTRY;
-   evas_object_clip_unset(sd->resize_obj);
-//   return;
+   list = evas_object_smart_members_get(obj);
+   EINA_LIST_FOREACH(list, l, o)
+     {
+        if (evas_object_data_get(o, "_elm_leaveme")) continue;
+        evas_object_clip_unset(o);
+     }
 }
 
 static void