forked from enlightenment/enlightenment
* e_widget_ilist.c: Ok, this is a quick fix (disable queue for now). A better fix would
be to propagate the delete operation to e_ilist.c and mark the selected entry to be deleted and update code listing selected item to not return to be deleted item. NOTE: Is it really usefull ? Doesn't evas/edje delay the destruction of Evas_Object anyway ? SVN revision: 39445
This commit is contained in:
parent
4c31250530
commit
72d23b4b0c
|
@ -667,18 +667,21 @@ e_widget_ilist_unselect(Evas_Object *obj)
|
||||||
EAPI void
|
EAPI void
|
||||||
e_widget_ilist_remove_num(Evas_Object *obj, int n)
|
e_widget_ilist_remove_num(Evas_Object *obj, int n)
|
||||||
{
|
{
|
||||||
_queue_append(obj, 6, NULL, NULL, 0, NULL, NULL, NULL, 0, 0, n);
|
/* _queue_append(obj, 6, NULL, NULL, 0, NULL, NULL, NULL, 0, 0, n); */
|
||||||
/*
|
|
||||||
E_Widget_Data *wd;
|
|
||||||
E_Widget_Callback *wcb;
|
E_Widget_Callback *wcb;
|
||||||
|
E_Widget_Data *wd;
|
||||||
|
Eina_List *item;
|
||||||
|
|
||||||
wd = e_widget_data_get(obj);
|
wd = e_widget_data_get(obj);
|
||||||
e_ilist_remove_num(wd->o_ilist, n);
|
e_ilist_remove_num(wd->o_ilist, n);
|
||||||
if (!(wcb = eina_list_nth(wd->callbacks, n))) return;
|
item = eina_list_nth_list(wd->callbacks, n);
|
||||||
if (wcb->value) free(wcb->value);
|
if (item)
|
||||||
free(wcb);
|
{
|
||||||
wd->callbacks = eina_list_remove(wd->callbacks, wcb);
|
wcb = eina_list_data_get(item);
|
||||||
*/
|
if (wcb && wcb->value) free(wcb->value);
|
||||||
|
free(wcb);
|
||||||
|
wd->callbacks = eina_list_remove_list(wd->callbacks, item);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
EAPI void
|
EAPI void
|
||||||
|
|
Loading…
Reference in New Issue