forked from enlightenment/efl
elm genlist: Fixed elm_genlist_item_insert_after() bug. Patch by
Chanwook Jung <joey.jung@samsung.com> From: 정찬욱 [mailto:joey.jung@samsung.com] Sent: Friday, August 19, 2011 4:40 PM Subject: [E-devel] [Patch] bug in elm_genlist_item_insert_after Dear developers. I found the problem when group item is added using elm_genlist_item_insert_after in genlist. The new group item is refer to the group item list not item list. Therefore it is inserted in the wrong place. I modified that if the new group item is inserted, refer to the last item of the after group item. Thanks. SVN revision: 62645
This commit is contained in:
parent
98ac8c429a
commit
5814a8b7cb
|
@ -42,3 +42,4 @@ Prince Kumar Dubey <prince.dubey@samsung.com> <prince.dubey@gmail.com>
|
|||
Sung W. Park <sungwoo@gmail.com>
|
||||
Thierry el Borgi <thierry@substantiel.fr>
|
||||
Shilpa Singh <shilpa.singh@samsung.com> <shilpasingh.o@gmail.com>
|
||||
Chanwook Jung <joey.jung@samsung.com>
|
||||
|
|
|
@ -3485,17 +3485,28 @@ elm_genlist_item_insert_after(Evas_Object *obj,
|
|||
{
|
||||
if ((flags & ELM_GENLIST_ITEM_GROUP) &&
|
||||
(after->flags & ELM_GENLIST_ITEM_GROUP))
|
||||
wd->group_items = eina_list_append_relative(wd->group_items, it,
|
||||
after);
|
||||
{
|
||||
Elm_Genlist_Item *it2 = NULL;
|
||||
Eina_List *ll = eina_list_last(after->items);
|
||||
if (ll) it2 = ll->data;
|
||||
else it2 = after;
|
||||
|
||||
wd->items =
|
||||
eina_inlist_append_relative(wd->items, EINA_INLIST_GET(it),
|
||||
EINA_INLIST_GET(it2));
|
||||
it->rel = it2;
|
||||
wd->group_items = eina_list_append_relative(wd->group_items, it,
|
||||
after);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
it->parent->items = eina_list_append_relative(it->parent->items, it,
|
||||
after);
|
||||
wd->items = eina_inlist_append_relative(wd->items, EINA_INLIST_GET(it),
|
||||
EINA_INLIST_GET(after));
|
||||
it->rel = after;
|
||||
}
|
||||
wd->items = eina_inlist_append_relative(wd->items, EINA_INLIST_GET(it),
|
||||
EINA_INLIST_GET(after));
|
||||
it->rel = after;
|
||||
it->rel->relcount++;
|
||||
it->before = EINA_FALSE;
|
||||
_item_queue(wd, it);
|
||||
|
|
Loading…
Reference in New Issue