diff options
author | Mike Blumenkrantz <zmike@osg.samsung.com> | 2017-08-11 18:48:53 -0400 |
---|---|---|
committer | Mike Blumenkrantz <zmike@osg.samsung.com> | 2017-08-11 18:48:49 -0400 |
commit | 2d80ef091eb5b30dea2c52bd6cd3df6b46c8589e (patch) | |
tree | 0680f870db7fd68a655503af60c18523759ded27 | |
parent | 92a0cb11d60f07715c23da25a06586902c8f82e3 (diff) | |
download | enlightenment-2d80ef091eb5b30dea2c52bd6cd3df6b46c8589e.tar.gz |
further improve keyboard handling while gadget editor is active
-rw-r--r-- | src/bin/e_gadget.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/bin/e_gadget.c b/src/bin/e_gadget.c index 9f9b1b4100..dfe84a46d9 100644 --- a/src/bin/e_gadget.c +++ b/src/bin/e_gadget.c @@ -2572,11 +2572,14 @@ _gadget_desklock_clear(void) static Eina_Bool _gadget_desklock_key_handler(void *d EINA_UNUSED, int t EINA_UNUSED, Ecore_Event_Key *ev) { - if (!_editor_site_visible()) return ECORE_CALLBACK_RENEW; + if ((!_editor_site_visible()) && (!pointer_site)) return ECORE_CALLBACK_RENEW; if (eina_streq(ev->key, "Escape")) { if (pointer_site) - E_FREE_FUNC(pointer_site, evas_object_del); + { + E_FREE_FUNC(pointer_site, evas_object_del); + if (desktop_editor) evas_object_show(desktop_editor); + } else _gadget_desklock_del(); } @@ -2651,11 +2654,14 @@ e_gadget_site_desklock_edit(void) static Eina_Bool _gadget_desktop_key_handler(void *data, int t EINA_UNUSED, Ecore_Event_Key *ev) { - if (!_editor_site_visible()) return ECORE_CALLBACK_RENEW; + if ((!_editor_site_visible()) && (!pointer_site)) return ECORE_CALLBACK_RENEW; if (eina_streq(ev->key, "Escape")) { if (pointer_site) - E_FREE_FUNC(pointer_site, evas_object_del); + { + E_FREE_FUNC(pointer_site, evas_object_del); + if (desktop_editor) evas_object_show(desktop_editor); + } else _edit_end(); } |