From 17e5804514eaecd15d56f4cf5f2db6a529820c52 Mon Sep 17 00:00:00 2001 From: Daniel Juyung Seo Date: Thu, 13 Oct 2011 12:57:10 +0900 Subject: [PATCH] [*][Genlist] Upstream merge r64031. elm genlist: Clear last_selected_item when last_selected_item is deleted. git-svn-id: https://svn.enlightenment.org/svn/e/trunk/elementary@64031 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 Conflicts: src/lib/elm_genlist.c --- src/lib/elm_genlist.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c index 8de51f1..a8a0ee9 100644 --- a/src/lib/elm_genlist.c +++ b/src/lib/elm_genlist.c @@ -1718,6 +1718,14 @@ _icon_unfocused(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUS if (it) it->defer_unrealize = EINA_FALSE; } +_item_del_hook(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info) +{ + Elm_Genlist_Item *it = event_info; + if (!it) return; + if (it->wd->last_selected_item == it) + it->wd->last_selected_item = NULL; +} + static void _item_label_realize(Elm_Genlist_Item *it, Evas_Object *target, @@ -3389,6 +3397,7 @@ _item_new(Widget_Data *wd, it->mouse_cursor = NULL; it->expanded_depth = 0; elm_widget_item_text_get_hook_set(it, _item_label_hook); + elm_widget_item_del_cb_set(it, _item_del_hook); if (it->parent) { -- 2.7.4