From 02b37558284750b59f8b7171c5472edf9d78c33e Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Fri, 14 Jul 2017 18:44:22 -0400 Subject: [PATCH] hide gadget editor if gadget triggers a popup show again when popup is hidden --- src/bin/e_gadget.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/bin/e_gadget.c b/src/bin/e_gadget.c index 25b7050b8..508f9bdad 100644 --- a/src/bin/e_gadget.c +++ b/src/bin/e_gadget.c @@ -257,6 +257,12 @@ _gadget_reparent(E_Gadget_Site *zgs, E_Gadget_Config *zgc) } } +static void +_gadget_popup_hide(void *data EINA_UNUSED, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) +{ + if (desktop_editor) evas_object_show(desktop_editor); +} + static void _gadget_popup(void *data, Evas_Object *obj EINA_UNUSED, void *event_info) { @@ -269,6 +275,9 @@ _gadget_popup(void *data, Evas_Object *obj EINA_UNUSED, void *event_info) evas_object_propagate_events_set(event_info, 0); } evas_object_smart_callback_call(zgs->layout, "gadget_site_popup", event_info); + if (!event_info) return; + evas_object_event_callback_add(event_info, EVAS_CALLBACK_HIDE, _gadget_popup_hide, zgs); + if (desktop_editor) evas_object_hide(desktop_editor); } static void