[navigationbar_ex]: icon set API modified. [ if NULL is passed previosly set icon...
authorShilpa Singh <shilpa.singh@samsung.com>
Tue, 8 Feb 2011 11:50:03 +0000 (17:20 +0530)
committerShilpa Singh <shilpa.singh@samsung.com>
Wed, 9 Feb 2011 08:54:42 +0000 (14:24 +0530)
Change-Id: I0676c1ff72b08f286a334f6077aabce0c40df477

[navigationbar_ex]: patch 2 submission fixed the comment, hidden signal sent only when the icon is NULL.

src/lib/elm_navigationbar_ex.c

index b6bfe60..be6bc2c 100644 (file)
@@ -597,10 +597,18 @@ EAPI void
 elm_navigationbar_ex_item_icon_set(Elm_Navigationbar_ex_Item* item, Evas_Object *icon)\r
 {\r
    if (!item) return; \r
-   edje_object_part_swallow(item->t_base, "elm.swallow.icon", icon);\r
-   elm_widget_sub_object_add(item->obj, icon);\r
-   edje_object_signal_emit(item->t_base, "elm,state,icon,visible", "elm");\r
+   if (item->icon == icon) return;\r
+   if (item->icon) evas_object_del(item->icon);\r
    item->icon = icon;\r
+   if(icon)\r
+     {\r
+        edje_object_part_swallow(item->t_base, "elm.swallow.icon", icon);\r
+        elm_widget_sub_object_add(item->obj, icon);\r
+        edje_object_signal_emit(item->t_base, "elm,state,icon,visible", "elm");\r
+        edje_object_message_signal_process(item->t_base);\r
+     }\r
+   else\r
+     edje_object_signal_emit(item->t_base, "elm,state,icon,hidden", "elm");\r
 }\r
 \r
 /**\r