forked from enlightenment/efl
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.
This commit is contained in:
parent
79c93db365
commit
ac703d8229
|
@ -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 */
|
/* Internal EO APIs and hidden overrides */
|
||||||
|
|
||||||
#define ELM_MENU_EXTRA_OPS \
|
#define ELM_MENU_EXTRA_OPS \
|
||||||
|
|
|
@ -68,6 +68,7 @@ class Elm.Menu (Elm.Widget, Efl.Ui.Clickable, Efl.Ui.Menu,
|
||||||
Efl.Ui.Menu.first_item { get; }
|
Efl.Ui.Menu.first_item { get; }
|
||||||
Efl.Ui.Menu.last_item { get; }
|
Efl.Ui.Menu.last_item { get; }
|
||||||
Efl.Ui.Menu.items { get; }
|
Efl.Ui.Menu.items { get; }
|
||||||
|
Efl.Object.provider_find;
|
||||||
}
|
}
|
||||||
events {
|
events {
|
||||||
dismissed; [[Called when menu widget was dismissed]]
|
dismissed; [[Called when menu widget was dismissed]]
|
||||||
|
|
Loading…
Reference in New Issue