[Genlist] fix unrealize problem
authorSeunggyun Kim <sgyun.kim@samsung.com>
Fri, 10 May 2013 07:23:33 +0000 (16:23 +0900)
committerSungho Kwak <sungho1.kwak@samsung.com>
Wed, 12 Jun 2013 04:57:54 +0000 (13:57 +0900)
Change-Id: I95acf8bcc06e2a59b578f39dac8c0e213026c8ba

src/lib/elm_genlist.c

index 67d488a..a1ee817 100644 (file)
@@ -200,9 +200,6 @@ _item_cache_push(Elm_Gen_Item *it)
    Elm_Genlist_Smart_Data *sd = GL_IT(it)->wsd;
    Item_Cache *ic = NULL;
 
-#if GENLIST_FX_SUPPORT
-   if (sd->pending_del_items) return;
-#endif
    if (sd->item_cache_count >= sd->item_cache_max)
     {
         ic = EINA_INLIST_CONTAINER_GET(sd->item_cache->last, Item_Cache);
@@ -232,7 +229,11 @@ _item_cache_push(Elm_Gen_Item *it)
                                         _contract_signal_cb, it);
    _item_mouse_callbacks_del(it, VIEW(it));
 
+#if GENLIST_FX_SUPPORT
+   if ((it->item->nocache_once) || (it->item->nocache) || (sd->pending_del_items))
+#else
    if ((it->item->nocache_once) || (it->item->nocache))
+#endif
      {
         if (VIEW(it)) evas_object_del(VIEW(it));
         if (it->spacer) evas_object_del(it->spacer);
@@ -5273,12 +5274,6 @@ _item_del_post_process(Elm_Gen_Item *it)
 
    _item_unrealize(it, EINA_FALSE);
 
-   if (VIEW(it)) evas_object_del(VIEW(it));
-   if (it->spacer) evas_object_del(it->spacer);
-
-   VIEW(it) = NULL;
-   it->spacer = NULL;
-
    elm_genlist_item_class_unref((Elm_Genlist_Item_Class *)it->itc);
    if (it->item) free(it->item);
    it->item = NULL;