summaryrefslogtreecommitdiff
path: root/src/lib/elementary/elm_menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/elementary/elm_menu.c')
-rw-r--r--src/lib/elementary/elm_menu.c189
1 files changed, 63 insertions, 126 deletions
diff --git a/src/lib/elementary/elm_menu.c b/src/lib/elementary/elm_menu.c
index 92ef38dfca..60069c8ba3 100644
--- a/src/lib/elementary/elm_menu.c
+++ b/src/lib/elementary/elm_menu.c
@@ -3,10 +3,11 @@
#endif
#define ELM_WIDGET_PROTECTED
-#define EFL_ACCESS_PROTECTED
+#define EFL_ACCESS_OBJECT_PROTECTED
#define EFL_ACCESS_SELECTION_PROTECTED
#define ELM_WIDGET_ITEM_PROTECTED
#define EFL_UI_TRANSLATABLE_PROTECTED
+#define EFL_UI_WIDGET_FOCUS_MANAGER_PROTECTED
#include <Elementary.h>
@@ -100,11 +101,11 @@ _parent_geometry_get(Elm_Menu_Data *sd, int *x, int *y, int *w, int *h)
{
Eina_Rect r;
- r = efl_gfx_geometry_get(sd->parent);
+ r = efl_gfx_entity_geometry_get(sd->parent);
if (efl_isa(sd->parent, EFL_UI_WIN_CLASS))
{
if (sd->menu_bar && efl_canvas_object_is_frame_object_get(sd->obj))
- r.pos = efl_gfx_position_get(sd->obj);
+ r.pos = efl_gfx_entity_position_get(sd->obj);
else
r.pos = EINA_POSITION2D(0, 0);
}
@@ -214,12 +215,12 @@ _sizing_eval(Evas_Object *obj)
if (y_p + h_p + bh > y2 + h2) y_p -= y_p + h_p + bh - (y2 + h2);
if (y_p < y2) y_p = y2;
- efl_gfx_geometry_set(sd->location, EINA_RECT(x_p, y_p, bw, h_p));
+ efl_gfx_entity_geometry_set(sd->location, EINA_RECT(x_p, y_p, bw, h_p));
evas_object_size_hint_min_set(sd->location, bw, h_p);
evas_object_size_hint_max_set(sd->location, bw, h_p);
elm_hover_target_set(sd->hv, sd->location);
- hover = efl_data_scope_get(sd->hv, ELM_WIDGET_CLASS);
+ hover = efl_data_scope_get(sd->hv, EFL_UI_WIDGET_CLASS);
edje_object_part_geometry_get(hover->resize_obj, "bottom", NULL,
NULL, &bw, &bh);
evas_object_size_hint_min_set(obj, bw, bh);
@@ -232,7 +233,7 @@ _sizing_eval(Evas_Object *obj)
}
EOLIAN static Efl_Ui_Theme_Apply
-_elm_menu_elm_widget_theme_apply(Eo *obj, Elm_Menu_Data *sd)
+_elm_menu_efl_ui_widget_theme_apply(Eo *obj, Elm_Menu_Data *sd)
{
Efl_Ui_Theme_Apply int_ret = EFL_UI_THEME_APPLY_FAILED;
@@ -295,7 +296,7 @@ _elm_menu_elm_widget_theme_apply(Eo *obj, Elm_Menu_Data *sd)
elm_wdg_item_disable(eo_item);
/* SEOZ
edje_object_scale_set
- (VIEW(item), efl_gfx_scale_get(obj) *
+ (VIEW(item), efl_gfx_entity_scale_get(obj) *
elm_config_scale_get());
*/
}
@@ -330,7 +331,7 @@ _elm_menu_item_elm_widget_item_part_text_set(Eo *eo_item EINA_UNUSED,
}
EOLIAN static const char *
-_elm_menu_item_elm_widget_item_part_text_get(Eo *eo_item EINA_UNUSED,
+_elm_menu_item_elm_widget_item_part_text_get(const Eo *eo_item EINA_UNUSED,
Elm_Menu_Item_Data *it,
const char *part)
{
@@ -358,7 +359,7 @@ _elm_menu_item_elm_widget_item_part_content_set(Eo *eo_item EINA_UNUSED,
}
EOLIAN static Evas_Object *
-_elm_menu_item_elm_widget_item_part_content_get(Eo *eo_item EINA_UNUSED,
+_elm_menu_item_elm_widget_item_part_content_get(const Eo *eo_item EINA_UNUSED,
Elm_Menu_Item_Data *it,
const char *part)
{
@@ -498,7 +499,7 @@ _menu_item_activate_cb(void *data,
if (eo_item2 != EO_OBJ(item))
elm_menu_item_selected_set(eo_item2, 0);
}
- efl_access_event_emit(EFL_ACCESS_MIXIN, EO_OBJ(item->parent), EFL_ACCESS_SELECTION_EVENT_SELECTION_CHANGED, NULL);
+ efl_access_object_event_emit(EFL_ACCESS_OBJECT_MIXIN, EO_OBJ(item->parent), EFL_ACCESS_SELECTION_EVENT_SELECTION_CHANGED, NULL);
}
else
{
@@ -513,7 +514,7 @@ _menu_item_activate_cb(void *data,
elm_menu_item_selected_set(eo_item2, 0);
}
}
- efl_access_event_emit(EFL_ACCESS_MIXIN, WIDGET(item), EFL_ACCESS_SELECTION_EVENT_SELECTION_CHANGED, NULL);
+ efl_access_object_event_emit(EFL_ACCESS_OBJECT_MIXIN, WIDGET(item), EFL_ACCESS_SELECTION_EVENT_SELECTION_CHANGED, NULL);
if (sd->menu_bar && was_open)
_menu_item_select_cb(item, NULL, NULL, NULL);
}
@@ -567,20 +568,20 @@ _unblock_menu(void *_sd, const Efl_Event *event EINA_UNUSED)
}
EOLIAN static void
-_elm_menu_efl_gfx_visible_set(Eo *obj EINA_UNUSED, Elm_Menu_Data *sd, Eina_Bool vis)
+_elm_menu_efl_gfx_entity_visible_set(Eo *obj EINA_UNUSED, Elm_Menu_Data *sd, Eina_Bool vis)
{
if (_evas_object_intercept_call(obj, EVAS_OBJECT_INTERCEPT_CB_VISIBLE, 0, vis))
return;
- efl_gfx_visible_set(efl_super(obj, MY_CLASS), vis);
- if (vis) efl_gfx_visible_set(sd->hv, EINA_TRUE);
+ efl_gfx_entity_visible_set(efl_super(obj, MY_CLASS), vis);
+ if (vis) efl_gfx_entity_visible_set(sd->hv, EINA_TRUE);
}
static void
_item_obj_create(Elm_Menu_Item_Data *item)
{
- VIEW(item) = elm_layout_add(WIDGET(item));
- efl_access_type_set(VIEW(item), EFL_ACCESS_TYPE_SKIPPED);
+ VIEW_SET(item, elm_layout_add(WIDGET(item)));
+ efl_access_object_access_type_set(VIEW(item), EFL_ACCESS_TYPE_SKIPPED);
evas_object_size_hint_weight_set
(VIEW(item), EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_fill_set(VIEW(item), EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -603,8 +604,8 @@ _item_obj_create(Elm_Menu_Item_Data *item)
static void
_item_separator_obj_create(Elm_Menu_Item_Data *item)
{
- VIEW(item) = elm_layout_add(WIDGET(item));
- efl_access_type_set(VIEW(item), EFL_ACCESS_TYPE_SKIPPED);
+ VIEW_SET(item, elm_layout_add(WIDGET(item)));
+ efl_access_object_access_type_set(VIEW(item), EFL_ACCESS_TYPE_SKIPPED);
evas_object_size_hint_weight_set
(VIEW(item), EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_fill_set(VIEW(item), EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -627,9 +628,9 @@ _item_submenu_obj_create(Elm_Menu_Item_Data *item)
char style[1024];
item->submenu.location = elm_icon_add(sd->bx);
- efl_access_type_set(item->submenu.location, EFL_ACCESS_TYPE_DISABLED);
+ efl_access_object_access_type_set(item->submenu.location, EFL_ACCESS_TYPE_DISABLED);
item->submenu.hv = hv = elm_hover_add(sd->bx);
- efl_access_type_set(item->submenu.hv, EFL_ACCESS_TYPE_SKIPPED);
+ efl_access_object_access_type_set(item->submenu.hv, EFL_ACCESS_TYPE_SKIPPED);
efl_ui_mirrored_set(hv, EINA_FALSE);
elm_hover_target_set(hv, item->submenu.location);
elm_hover_parent_set(hv, sd->parent);
@@ -695,10 +696,10 @@ _elm_menu_efl_canvas_group_group_add(Eo *obj, Elm_Menu_Data *priv)
elm_widget_can_focus_set(obj, EINA_FALSE);
priv->location = elm_icon_add(obj);
- efl_access_type_set(priv->location, EFL_ACCESS_TYPE_DISABLED);
+ efl_access_object_access_type_set(priv->location, EFL_ACCESS_TYPE_DISABLED);
priv->hv = elm_hover_add(obj);
- efl_access_type_set(priv->hv, EFL_ACCESS_TYPE_SKIPPED);
+ efl_access_object_access_type_set(priv->hv, EFL_ACCESS_TYPE_SKIPPED);
efl_ui_mirrored_set(priv->hv, EINA_FALSE);
elm_object_style_set(priv->hv, "menu/default");
@@ -706,7 +707,7 @@ _elm_menu_efl_canvas_group_group_add(Eo *obj, Elm_Menu_Data *priv)
(priv->hv, ELM_HOVER_EVENT_DISMISSED, _hover_dismissed_cb, obj);
priv->bx = elm_box_add(obj);
- efl_access_type_set(priv->bx, EFL_ACCESS_TYPE_SKIPPED);
+ efl_access_object_access_type_set(priv->bx, EFL_ACCESS_TYPE_SKIPPED);
efl_ui_mirrored_set(priv->bx, EINA_FALSE);
evas_object_size_hint_weight_set
(priv->bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
@@ -804,7 +805,7 @@ elm_menu_add(Evas_Object *parent)
}
EOLIAN static Efl_Ui_Focus_Manager*
-_elm_menu_elm_widget_focus_manager_create(Eo *obj EINA_UNUSED, Elm_Menu_Data *pd EINA_UNUSED, Efl_Ui_Focus_Object *root)
+_elm_menu_efl_ui_widget_focus_manager_focus_manager_create(Eo *obj EINA_UNUSED, Elm_Menu_Data *pd EINA_UNUSED, Efl_Ui_Focus_Object *root)
{
Efl_Ui_Focus_Manager *manager;
@@ -819,17 +820,12 @@ EOLIAN static Eo *
_elm_menu_efl_object_constructor(Eo *obj, Elm_Menu_Data *sd)
{
Eo *parent = NULL;
- Efl_Ui_Focus_Manager *manager;
-
- manager = efl_ui_widget_focus_manager_create(obj, obj);
- efl_composite_attach(obj, manager);
- _efl_ui_focus_manager_redirect_events_add(manager, obj);
obj = efl_constructor(efl_super(obj, MY_CLASS));
efl_canvas_object_type_set(obj, MY_CLASS_NAME_LEGACY);
evas_object_smart_callbacks_descriptions_set(obj, _smart_callbacks);
parent = efl_parent_get(obj);
- efl_access_role_set(obj, EFL_ACCESS_ROLE_MENU);
+ efl_access_object_role_set(obj, EFL_ACCESS_ROLE_MENU);
elm_menu_parent_set(obj, parent);
elm_hover_target_set(sd->hv, sd->location);
@@ -853,7 +849,7 @@ _elm_menu_efl_object_destructor(Eo *obj, Elm_Menu_Data *sd)
Eina_List *itr, *itr2;
Elm_Object_Item *eo_item;
EINA_LIST_FOREACH_SAFE(sd->items, itr, itr2, eo_item)
- elm_wdg_item_del(eo_item);
+ efl_del(eo_item);
efl_destructor(efl_super(obj, MY_CLASS));
}
@@ -867,7 +863,7 @@ elm_menu_parent_set(Evas_Object *obj,
}
EOLIAN static void
-_elm_menu_elm_widget_widget_parent_set(Eo *obj, Elm_Menu_Data *sd, Evas_Object *parent)
+_elm_menu_efl_ui_widget_widget_parent_set(Eo *obj, Elm_Menu_Data *sd, Evas_Object *parent)
{
Eina_List *l, *_l, *_ll, *ll = NULL;
Elm_Object_Item *eo_item;
@@ -916,72 +912,14 @@ elm_menu_parent_get(const Evas_Object *obj)
return efl_ui_widget_parent_get(obj);
}
-EAPI Elm_Widget_Item *
-elm_menu_selected_item_get(const Evas_Object *obj)
-{
- return efl_ui_menu_selected_item_get(obj);
-}
-
-EAPI const Eina_List *
-elm_menu_items_get(const Evas_Object *obj)
-{
- Eina_List *lst = NULL;
- Eina_Iterator *it;
- void *item_data;
-
- it = efl_ui_menu_items_get(obj);
- EINA_ITERATOR_FOREACH(it, item_data)
- {
- lst = eina_list_append(lst, item_data);
- }
- eina_iterator_free(it);
- return lst;
-}
-
-EAPI Elm_Widget_Item *
-elm_menu_first_item_get(const Evas_Object *obj)
-{
- return efl_ui_menu_first_item_get(obj);
-}
-
-EAPI Elm_Widget_Item *
-elm_menu_last_item_get(const Evas_Object *obj)
-{
- return efl_ui_menu_last_item_get(obj);
-}
-
-EAPI void
-elm_menu_item_selected_set(Evas_Object *obj, Eina_Bool selected)
-{
- efl_ui_item_selected_set(obj, selected);
-}
-
-EAPI Eina_Bool
-elm_menu_item_selected_get(const Evas_Object *obj)
-{
- return efl_ui_item_selected_get(obj);
-}
-
-EAPI Elm_Widget_Item *
-elm_menu_item_prev_get(const Evas_Object *obj)
-{
- return efl_ui_item_prev_get(obj);
-}
-
-EAPI Elm_Widget_Item *
-elm_menu_item_next_get(const Evas_Object *obj)
-{
- return efl_ui_item_next_get(obj);
-}
-
EOLIAN static Evas_Object*
-_elm_menu_elm_widget_widget_parent_get(Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
+_elm_menu_efl_ui_widget_widget_parent_get(const Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
{
return sd->parent;
}
EOLIAN static void
-_elm_menu_move(Eo *obj, Elm_Menu_Data *sd, Evas_Coord x, Evas_Coord y)
+_elm_menu_relative_move(Eo *obj, Elm_Menu_Data *sd, Evas_Coord x, Evas_Coord y)
{
sd->xloc = x;
sd->yloc = y;
@@ -1115,7 +1053,7 @@ _elm_menu_item_add(Eo *obj, Elm_Menu_Data *sd, Elm_Object_Item *parent, const ch
Evas_Object *icon_obj;
icon_obj = elm_icon_add(obj);
- efl_access_type_set(icon_obj, EFL_ACCESS_TYPE_DISABLED);
+ efl_access_object_access_type_set(icon_obj, EFL_ACCESS_TYPE_DISABLED);
if (!icon_obj) return NULL;
eo_item = efl_add(ELM_MENU_ITEM_CLASS, obj);
@@ -1237,7 +1175,7 @@ _elm_menu_item_separator_add(Eo *obj, Elm_Menu_Data *sd, Elm_Object_Item *eo_p_i
}
EOLIAN static const char *
-_elm_menu_item_icon_name_get(Eo *eo_item EINA_UNUSED, Elm_Menu_Item_Data *item)
+_elm_menu_item_icon_name_get(const Eo *eo_item EINA_UNUSED, Elm_Menu_Item_Data *item)
{
return item->icon_str;
}
@@ -1262,17 +1200,17 @@ _elm_menu_item_subitems_clear(Eo *eo_item EINA_UNUSED, Elm_Menu_Item_Data *it)
EINA_LIST_FOREACH_SAFE(it->submenu.items,
l, l_next, sub_it)
- elm_wdg_item_del(sub_it);
+ efl_del(sub_it);
}
-EOLIAN static Eina_Iterator*
-_elm_menu_efl_ui_menu_items_get(Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
+EOLIAN static const Eina_List *
+_elm_menu_items_get(const Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
{
- return eina_list_iterator_new(sd->items);
+ return sd->items;
}
EOLIAN static void
-_elm_menu_item_efl_ui_item_selected_set(Eo *eo_item EINA_UNUSED,
+_elm_menu_item_selected_set(Eo *eo_item EINA_UNUSED,
Elm_Menu_Item_Data *item,
Eina_Bool selected)
{
@@ -1292,13 +1230,13 @@ _elm_menu_item_efl_ui_item_selected_set(Eo *eo_item EINA_UNUSED,
}
EOLIAN static Eina_Bool
-_elm_menu_item_efl_ui_item_selected_get(Eo *eo_item EINA_UNUSED, Elm_Menu_Item_Data *item)
+_elm_menu_item_selected_get(const Eo *eo_item EINA_UNUSED, Elm_Menu_Item_Data *item)
{
return item->selected;
}
EOLIAN static Elm_Object_Item *
-_elm_menu_item_efl_ui_item_prev_get(Eo *eo_item, Elm_Menu_Item_Data *item)
+_elm_menu_item_prev_get(const Eo *eo_item, Elm_Menu_Item_Data *item)
{
if (item->parent)
{
@@ -1322,7 +1260,7 @@ _elm_menu_item_efl_ui_item_prev_get(Eo *eo_item, Elm_Menu_Item_Data *item)
}
EOLIAN static Elm_Object_Item *
-_elm_menu_item_efl_ui_item_next_get(Eo *eo_item, Elm_Menu_Item_Data *item)
+_elm_menu_item_next_get(const Eo *eo_item, Elm_Menu_Item_Data *item)
{
if (item->parent)
{
@@ -1346,20 +1284,20 @@ _elm_menu_item_efl_ui_item_next_get(Eo *eo_item, Elm_Menu_Item_Data *item)
}
EOLIAN static Elm_Object_Item*
-_elm_menu_efl_ui_menu_first_item_get(Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
+_elm_menu_first_item_get(const Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
{
return (sd->items ? sd->items->data : NULL);
}
EOLIAN static Elm_Object_Item*
-_elm_menu_efl_ui_menu_last_item_get(Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
+_elm_menu_last_item_get(const Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
{
Eina_List *l = eina_list_last(sd->items);
return (l ? l->data : NULL);
}
EOLIAN static Elm_Object_Item*
-_elm_menu_efl_ui_menu_selected_item_get(Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
+_elm_menu_selected_item_get(const Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
{
Eina_List *l;
Elm_Object_Item *eo_item;
@@ -1380,45 +1318,47 @@ _elm_menu_class_constructor(Efl_Class *klass)
}
EOLIAN static Eina_List*
-_elm_menu_efl_access_children_get(Eo *obj, Elm_Menu_Data *sd)
+_elm_menu_efl_access_object_access_children_get(const Eo *obj, Elm_Menu_Data *sd)
{
Eina_List *ret;
- ret = efl_access_children_get(efl_super(obj, ELM_MENU_CLASS));
+ ret = efl_access_object_access_children_get(efl_super(obj, ELM_MENU_CLASS));
return eina_list_merge(eina_list_clone(sd->items), ret);
}
EOLIAN static Eina_List*
-_elm_menu_item_efl_access_children_get(Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd)
+_elm_menu_item_efl_access_object_access_children_get(const Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd)
{
return eina_list_clone(sd->submenu.items);
}
-EOLIAN static Efl_Access*
-_elm_menu_item_efl_access_parent_get(Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd)
+EOLIAN static Eo*
+_elm_menu_item_efl_object_parent_get(const Eo *obj, Elm_Menu_Item_Data *sd)
{
- return sd->parent ? EO_OBJ(sd->parent) : WIDGET(sd);
+ if (sd->parent) return EO_OBJ(sd->parent);
+ if (sd->base) return WIDGET(sd);
+ return efl_parent_get(efl_super(obj, ELM_MENU_ITEM_CLASS));
}
EOLIAN static Efl_Access_Role
-_elm_menu_item_efl_access_role_get(Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd)
+_elm_menu_item_efl_access_object_role_get(const Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd)
{
return sd->submenu.items ? EFL_ACCESS_ROLE_MENU : EFL_ACCESS_ROLE_MENU_ITEM;
}
EOLIAN static const char*
-_elm_menu_item_efl_access_name_get(Eo *obj, Elm_Menu_Item_Data *sd)
+_elm_menu_item_efl_access_object_i18n_name_get(const Eo *obj, Elm_Menu_Item_Data *sd)
{
const char *ret;
- ret = efl_access_name_get(efl_super(obj, ELM_MENU_ITEM_CLASS));
+ ret = efl_access_object_i18n_name_get(efl_super(obj, ELM_MENU_ITEM_CLASS));
if (ret) return ret;
return sd->label;
}
EOLIAN static Efl_Access_State_Set
-_elm_menu_item_efl_access_state_set_get(Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd)
+_elm_menu_item_efl_access_object_state_set_get(const Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd)
{
Efl_Access_State_Set ret;
- ret = efl_access_state_set_get(efl_super(obj, ELM_MENU_ITEM_CLASS));
+ ret = efl_access_object_state_set_get(efl_super(obj, ELM_MENU_ITEM_CLASS));
STATE_TYPE_SET(ret, EFL_ACCESS_STATE_SELECTABLE);
@@ -1429,7 +1369,7 @@ _elm_menu_item_efl_access_state_set_get(Eo *obj EINA_UNUSED, Elm_Menu_Item_Data
}
EOLIAN static int
-_elm_menu_item_efl_access_selection_selected_children_count_get(Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd)
+_elm_menu_item_efl_access_selection_selected_children_count_get(const Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd)
{
int ret = 0;
Elm_Object_Item *sobj = NULL;
@@ -1446,7 +1386,7 @@ _elm_menu_item_efl_access_selection_selected_children_count_get(Eo *obj EINA_UNU
}
EOLIAN static Eo*
-_elm_menu_item_efl_access_selection_selected_child_get(Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd, int child)
+_elm_menu_item_efl_access_selection_selected_child_get(const Eo *obj EINA_UNUSED, Elm_Menu_Item_Data *sd, int child)
{
int seq = 0;
Elm_Object_Item *sobj = NULL;
@@ -1468,7 +1408,7 @@ _elm_menu_item_efl_access_selection_selected_child_get(Eo *obj EINA_UNUSED, Elm_
}
EOLIAN static int
-_elm_menu_efl_access_selection_selected_children_count_get(Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
+_elm_menu_efl_access_selection_selected_children_count_get(const Eo *obj EINA_UNUSED, Elm_Menu_Data *sd)
{
Elm_Object_Item *sobj = NULL;
Eina_List *l;
@@ -1484,7 +1424,7 @@ _elm_menu_efl_access_selection_selected_children_count_get(Eo *obj EINA_UNUSED,
}
EOLIAN static Eo*
-_elm_menu_efl_access_selection_selected_child_get(Eo *obj EINA_UNUSED, Elm_Menu_Data *sd, int child)
+_elm_menu_efl_access_selection_selected_child_get(const Eo *obj EINA_UNUSED, Elm_Menu_Data *sd, int child)
{
int seq = 0;
Elm_Object_Item *sobj = NULL;
@@ -1509,13 +1449,10 @@ _elm_menu_efl_access_selection_selected_child_get(Eo *obj EINA_UNUSED, Elm_Menu_
EOLIAN static Efl_Object*
_elm_menu_efl_object_provider_find(const Eo *obj, Elm_Menu_Data *pd, const Efl_Object *klass)
{
- Efl_Object *result;
-
- result = efl_provider_find(pd->parent, klass);
-
- if (result) return result;
+ if (!pd->parent)
+ return efl_provider_find(efl_super(obj, MY_CLASS), klass);
- return efl_provider_find(efl_super(obj, MY_CLASS), klass);
+ return efl_provider_find(pd->parent, klass);
}