bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=ac703d82291974788f26b0c13f946dc38fadcf68

commit ac703d82291974788f26b0c13f946dc38fadcf68
Author: Marcel Hollerbach <[email protected]>
Date:   Sun Oct 15 19:29:08 2017 +0200

    elm_menu: implement provider_find to walk the parent relation
    
    it turns out elm_menu is special, it doesnt use parent_obj of
    elm_widget, it has his own parent field, which should be used.
---
 src/lib/elementary/elm_menu.c  | 14 ++++++++++++++
 src/lib/elementary/elm_menu.eo |  1 +
 2 files changed, 15 insertions(+)

diff --git a/src/lib/elementary/elm_menu.c b/src/lib/elementary/elm_menu.c
index 5348ea707f..d426464c32 100644
--- a/src/lib/elementary/elm_menu.c
+++ b/src/lib/elementary/elm_menu.c
@@ -1506,6 +1506,20 @@ _elm_menu_efl_access_selection_selected_child_get(Eo 
*obj EINA_UNUSED, Elm_Menu_
 
 }
 
+EOLIAN static Efl_Object*
+_elm_menu_efl_object_provider_find(Eo *obj, Elm_Menu_Data *pd, const 
Efl_Object *klass)
+{
+   Efl_Object *result;
+
+   result = efl_provider_find(pd->parent, klass);
+
+   if (result) return result;
+
+   return efl_provider_find(efl_super(obj, MY_CLASS), klass);
+}
+
+
+
 /* Internal EO APIs and hidden overrides */
 
 #define ELM_MENU_EXTRA_OPS \
diff --git a/src/lib/elementary/elm_menu.eo b/src/lib/elementary/elm_menu.eo
index e50c4e9549..094b12954b 100644
--- a/src/lib/elementary/elm_menu.eo
+++ b/src/lib/elementary/elm_menu.eo
@@ -68,6 +68,7 @@ class Elm.Menu (Elm.Widget, Efl.Ui.Clickable, Efl.Ui.Menu,
       Efl.Ui.Menu.first_item { get; }
       Efl.Ui.Menu.last_item { get; }
       Efl.Ui.Menu.items { get; }
+      Efl.Object.provider_find;
    }
    events {
       dismissed; [[Called when menu widget was dismissed]]

-- 


Reply via email to