summaryrefslogtreecommitdiff
path: root/src/lib/elementary/elc_ctxpopup.c
diff options
context:
space:
mode:
authorarosis <jh0506.yun@samsung.com>2017-08-10 14:02:06 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2017-08-10 14:42:08 +0900
commit080c92658890bc3023aa2568c3f4679987a5154f (patch)
tree4bc0bd0cfc7054df307b21305059b9f6ae02e0a6 /src/lib/elementary/elc_ctxpopup.c
parenta28b89304e51d6f857f90654f2cd40bb2d264196 (diff)
elm_ctxpopup: Implemented elm_widget_item_del_pre for elm_ctxpopup_item
Summary: ctxpopup item have elm_list item internally. But when elm_ctxpopup item was deleted, elm_list item was not deleted. elm_list item in elm_ctxpopup item should be deleted in del_pre when elm_ctxpopup item is deleted by elm_wdg_item_del() Test Plan: 1. launch elementary_test - ctxpopup 2. click Ctxpopup with label only 3. "Never Show" item should not shown in ctxpopup Reviewers: jpeg, cedric, woohyun Subscribers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5044
Diffstat (limited to 'src/lib/elementary/elc_ctxpopup.c')
-rw-r--r--src/lib/elementary/elc_ctxpopup.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/lib/elementary/elc_ctxpopup.c b/src/lib/elementary/elc_ctxpopup.c
index 1a20710..9b42539 100644
--- a/src/lib/elementary/elc_ctxpopup.c
+++ b/src/lib/elementary/elc_ctxpopup.c
@@ -907,6 +907,23 @@ _elm_ctxpopup_item_elm_widget_item_disable(Eo *eo_ctxpopup_it,
907 (ctxpopup_it->list_item, elm_wdg_item_disabled_get(eo_ctxpopup_it)); 907 (ctxpopup_it->list_item, elm_wdg_item_disabled_get(eo_ctxpopup_it));
908} 908}
909 909
910EOLIAN static Eina_Bool
911_elm_ctxpopup_item_elm_widget_item_del_pre(Eo *eo_ctxpopup_it EINA_UNUSED,
912 Elm_Ctxpopup_Item_Data *ctxpopup_it)
913{
914 ELM_CTXPOPUP_DATA_GET(WIDGET(ctxpopup_it), sd);
915 if (!sd) return EINA_FALSE;
916
917 if (ctxpopup_it->list_item)
918 {
919 efl_unref(ctxpopup_it->list_item);
920 elm_wdg_item_del(ctxpopup_it->list_item);
921 ctxpopup_it->list_item = NULL;
922 }
923
924 return EINA_TRUE;
925}
926
910EOLIAN static void 927EOLIAN static void
911_elm_ctxpopup_item_elm_widget_item_signal_emit(Eo *eo_ctxpopup_it EINA_UNUSED, 928_elm_ctxpopup_item_elm_widget_item_signal_emit(Eo *eo_ctxpopup_it EINA_UNUSED,
912 Elm_Ctxpopup_Item_Data *ctxpopup_it, 929 Elm_Ctxpopup_Item_Data *ctxpopup_it,