rimmed pushed a commit to branch eflete-1.18.

http://git.enlightenment.org/tools/eflete.git/commit/?id=de2bcf79e636553befbe8326ec9e350a94510504

commit de2bcf79e636553befbe8326ec9e350a94510504
Author: Vyacheslav Reutskiy <v.reuts...@samsung.com>
Date:   Mon Feb 13 12:40:26 2017 +0200

    menu: add react to ESC for menu
    
    This is make posible to hide menu by Esc
    
    Fixes T5155
    @fix
    
    Change-Id: Ie06f361e30b70cba1e7400643ce870f94c55a298
    
     Conflicts:
            src/bin/ui/image_manager.c
---
 src/bin/ui/sound_manager.c | 21 +++++++++++++++++++++
 src/bin/ui/style_manager.c | 21 +++++++++++++++++++++
 2 files changed, 42 insertions(+)

diff --git a/src/bin/ui/sound_manager.c b/src/bin/ui/sound_manager.c
index e5018e0..4232759 100644
--- a/src/bin/ui/sound_manager.c
+++ b/src/bin/ui/sound_manager.c
@@ -26,6 +26,7 @@
 #include "config.h"
 #include "validator.h"
 #include "sound_player.h"
+#include "shortcuts.h"
 
 #ifndef HAVE_TIZEN
    #define ITEM_WIDTH 100
@@ -325,6 +326,23 @@ _sample_add_cb(void *data,
 }
 
 static void
+_menu_dismissed_cb(void *data __UNUSED__,
+                   Evas_Object *obj,
+                   void *event_info __UNUSED__)
+{
+   shortcuts_object_check_pop(obj);
+}
+
+static void
+_menu_dismiss_cb(void *data __UNUSED__,
+                 Evas_Object *obj,
+                 void *event_info __UNUSED__)
+{
+   elm_menu_close(obj);
+   shortcuts_object_check_pop(obj);
+}
+
+static void
 _validation(void *data,
             Evas_Object *obj __UNUSED__,
             void *event_info __UNUSED__)
@@ -441,6 +459,7 @@ _sound_add_cb(void *data __UNUSED__,
 
    elm_menu_move(mng.menu, x, y + h);
    evas_object_show(mng.menu);
+   shortcuts_object_push(mng.menu);
 }
 
 static void
@@ -653,6 +672,8 @@ sound_manager_add(void)
    mng.menu = elm_menu_add(ap.win);
    elm_menu_item_add(mng.menu, NULL, "sound_sample", _("Sample"), 
_sample_add_cb, NULL);
    elm_menu_item_add(mng.menu, NULL, "sound_tone", _("Tone"), _tone_add_cb, 
NULL);
+   evas_object_smart_callback_add(mng.menu, "dismissed", _menu_dismissed_cb, 
NULL);
+   evas_object_smart_callback_add(mng.menu, signals.shortcut.popup.cancel, 
_menu_dismiss_cb, NULL);
 
    ENTRY_ADD(mng.layout, search_entry, true);
    elm_object_part_text_set(search_entry, "guide", _("Search"));
diff --git a/src/bin/ui/style_manager.c b/src/bin/ui/style_manager.c
index c882354..dab8058 100644
--- a/src/bin/ui/style_manager.c
+++ b/src/bin/ui/style_manager.c
@@ -24,6 +24,7 @@
 #include "project_manager.h"
 #include "validator.h"
 #include "modal_window.h"
+#include "shortcuts.h"
 
 #define STYLE_DEFAULT         "DEFAULT"
 #define STYLE_DEFAULT_VALUE "align=middle font=Sans font_size=24 color=#000000 
"
@@ -251,6 +252,23 @@ _add_tag_content_get(void *data __UNUSED__, Evas_Object 
*popup, Evas_Object **to
    return item;
 }
 
+static void
+_menu_dismissed_cb(void *data __UNUSED__,
+                   Evas_Object *obj,
+                   void *event_info __UNUSED__)
+{
+   shortcuts_object_check_pop(obj);
+}
+
+static void
+_menu_dismiss_cb(void *data __UNUSED__,
+                 Evas_Object *obj,
+                 void *event_info __UNUSED__)
+{
+   elm_menu_close(obj);
+   shortcuts_object_check_pop(obj);
+}
+
 typedef struct {
    Eina_Stringshare *style_name, *tag_name;
    Elm_Object_Item *glit, *glit_parent;
@@ -679,6 +697,7 @@ _btn_add_cb(void *data __UNUSED__,
    evas_object_geometry_get(obj, &x, &y, NULL, &h);
    elm_menu_move(mng.menu, x, y + h);
    evas_object_show(mng.menu);
+   shortcuts_object_push(mng.menu);
 
    if (elm_genlist_selected_item_get(mng.genlist))
      elm_object_item_disabled_set(mng.menu_tag, false);
@@ -901,6 +920,8 @@ style_manager_add()
    mng.menu = elm_menu_add(ap.win);
    elm_menu_item_add(mng.menu, NULL, "text_style", _("Style"), _style_add_cb, 
NULL);
    mng.menu_tag = elm_menu_item_add(mng.menu, NULL, "text_style_tag", 
_("Tag"), _tag_add_cb, NULL);
+   evas_object_smart_callback_add(mng.menu, "dismissed", _menu_dismissed_cb, 
NULL);
+   evas_object_smart_callback_add(mng.menu, signals.shortcut.popup.cancel, 
_menu_dismiss_cb, NULL);
 
    button_add = elm_button_add(ap.win);
    elm_object_style_set(button_add, "plus_managers");

-- 


Reply via email to