Index : destroy the index once
authorJin Yoon <jinny.yoon@samsung.com>
Thu, 11 Jul 2013 07:22:23 +0000 (16:22 +0900)
committerJin Yoon <jinny.yoon@samsung.com>
Thu, 11 Jul 2013 07:22:23 +0000 (16:22 +0900)
data/org.tizen.menu-screen.xml.in
packaging/org.tizen.menu-screen.spec
src/all_apps/layout.c
src/index.c
src/page.c

index 5b0d81dec27b3050f3009760e80a3f8243fd0be5..ab5e8c9b8dcf04d056eac53349f75102fca0b44c 100755 (executable)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns="http://tizen.org/ns/packages" package="@PACKAGE_NAME@" version="1.1.13" install-location="internal-only">
+<manifest xmlns="http://tizen.org/ns/packages" package="@PACKAGE_NAME@" version="1.1.14" install-location="internal-only">
        <label>Simple Menu-screen</label>
        <author email="jinny.yoon@samsung.com" href="www.samsung.com">Jin Yoon</author>
        <author email="yjoo93.park@samsung.com" href="www.samsung.com">Youngjoo Park</author>
index 489af8891aec130db1c0f9cd7ab9a188ba076aa9..faaffdff64d6906ef1b2c8b5cf1a12fe769e41bb 100644 (file)
@@ -16,7 +16,7 @@
 
 Name:       org.tizen.menu-screen
 Summary:    An utility library of the menu screen
-Version:    1.1.13
+Version:    1.1.14
 Release:    1.1
 Group:      TO_BE/FILLED_IN
 License:    Flora Software License
index 092fbb82e105a7229368386d3f95ce4ab73c2493..c3ad97944fe480ef92fae282841ca0091b81e946 100644 (file)
@@ -386,10 +386,11 @@ HAPI void all_apps_layout_destroy(Evas_Object *all_apps)
                }
        } while (0);
 
-       index = evas_object_data_get(all_apps, "index");
        scroller = evas_object_data_get(all_apps, "scroller");
-
+       ret_if(NULL == scroller);
        if (scroller) page_scroller_destroy(scroller);
+
+       index = evas_object_data_get(scroller, "index");
        if (index) index_destroy(index);
 
        evas_object_data_del(all_apps, "win");
index 2c5302f741349ab9ac0f058c35317068275a8744..9ada8e8eb85139b4cab48c758f0a35e334e3f7be 100644 (file)
@@ -41,6 +41,8 @@ HAPI inline void index_bring_in(Evas_Object *index, int idx)
 
 HAPI void index_destroy(Evas_Object *index)
 {
+       ret_if(NULL == index);
+
        evas_object_data_del(index, "win");
        evas_object_data_del(index, "layout");
        evas_object_data_del(index, "controlbar");
index 2989cc8c1be91c56b43c26d0a65497766d39d921..dffa633f3a2cbae5a858db2dd35a828cf347b4c2 100644 (file)
@@ -210,7 +210,8 @@ HAPI Evas_Object *page_create(Evas_Object *scroller, int idx, int rotate)
        if (index) {
                tab = evas_object_data_get(scroller, "tab");
                count = page_scroller_count_page(scroller);
-               index_update(tab, index, count);
+               index = index_update(tab, index, count);
+               evas_object_data_set(scroller, "index", index);
        }
 
        return page;
@@ -258,10 +259,17 @@ HAPI void page_destroy(Evas_Object *scroller, Evas_Object *page)
        }
 
        index = evas_object_data_get(scroller, "index");
-       if (index) {
-               tab = evas_object_data_get(scroller, "tab");
+       tab = evas_object_data_get(scroller, "tab");
+       if (index && tab) {
                count = page_scroller_count_page(scroller);
-               index_update(tab, index, count);
+               if (count) {
+                       index = index_update(tab, index, count);
+                       evas_object_data_set(scroller, "index", index);
+               }
+               else {
+                       index_destroy(index);
+                       evas_object_data_set(scroller, "index", NULL);
+               }
        }
 
        evas_object_data_del(page, "win");