From fce282e841cbb2921587fb7ccd1809d5e7b1aa98 Mon Sep 17 00:00:00 2001 From: ChunEon Park Date: Thu, 23 Feb 2012 01:18:16 +0900 Subject: [PATCH] elementary/genlist - added FIXEME: Change-Id: I16be8db1f502ae89ef81c172673fec2cf22e3ae8 --- src/lib/elm_genlist.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c index 55bb75f..4bb4b56 100644 --- a/src/lib/elm_genlist.c +++ b/src/lib/elm_genlist.c @@ -2785,6 +2785,7 @@ _scroll_item(Widget_Data *wd) { Elm_Genlist_Item *it = NULL; Evas_Coord ow, oh, dx = 0, dy = 0, dw = 0, dh = 0; + if (!wd->show_item) return; evas_object_geometry_get(wd->pan_smart, NULL, NULL, &ow, &oh); it = wd->show_item; @@ -2959,10 +2960,14 @@ _calc_job(void *data) dy = 0; break; } - if ((pan_w > (wd->show_item->x + wd->show_item->block->x)) && - (pan_h > (wd->show_item->y + wd->show_item->block->y + dy))) + + if (wd->show_item) { - _scroll_item(wd); + if ((pan_w > (wd->show_item->x + wd->show_item->block->x)) && + (pan_h > (wd->show_item->y + wd->show_item->block->y + dy))) + { + _scroll_item(wd); + } } } wd->calc_job = NULL; @@ -4085,7 +4090,11 @@ newblock: { it->rel->relcount--; if ((it->rel->delete_me) && (!it->rel->relcount)) - _item_del(it->rel); + { + _item_del(it->rel); + elm_widget_item_free(it->rel); + } + it->rel = NULL; } if (itb->count > itb->wd->max_items_per_block) -- 2.7.4