eo_do(obj,
evas_obj_type_set(MY_CLASS_NAME_LEGACY),
evas_obj_smart_callbacks_descriptions_set(_smart_callbacks),
- elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_PANEL));
+ elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_FILLER));
return obj;
}
eo_do(obj,
evas_obj_type_set(MY_CLASS_NAME_LEGACY),
evas_obj_smart_callbacks_descriptions_set(_smart_callbacks),
- elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_PANEL));
+ elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_FILLER));
return obj;
}
EOLIAN static Eo *
_elm_widget_elm_interface_atspi_component_accessible_at_point_get(Eo *obj, Elm_Widget_Smart_Data *_pd EINA_UNUSED, Eina_Bool screen_coords, int x, int y)
{
+ Elm_Atspi_Role role;
Eina_List *l;
Evas_Object *stack_item;
- if(strcmp("Elm_Win", eo_class_name_get(eo_class_get(obj))) &&
- strcmp("Elm_Popup", eo_class_name_get(eo_class_get(obj))) &&
- strcmp("Elm_Panel", eo_class_name_get(eo_class_get(obj))))
- return _accessible_at_point_top_down_get(obj, _pd, screen_coords, x, y);
+ eo_do(obj, role = elm_interface_atspi_accessible_role_get());
+
+ switch (role)
+ {
+ case ELM_ATSPI_ROLE_WINDOW:
+ case ELM_ATSPI_ROLE_INPUT_METHOD_WINDOW:
+ case ELM_ATSPI_ROLE_DIALOG:
+ case ELM_ATSPI_ROLE_PAGE_TAB:
+ case ELM_ATSPI_ROLE_POPUP_MENU:
+ case ELM_ATSPI_ROLE_PANEL:
+ DBG("Find accessible from bottom");
+ break;
+
+ default:
+ return _accessible_at_point_top_down_get(obj, _pd, screen_coords, x, y);
+ }
_coordinate_system_based_point_translate(obj, screen_coords, &x, &y);
{
Eina_Bool acceptable = EINA_FALSE;
Eo *item_child;
- Elm_Atspi_Role role;
eo_do(smart_parent, role = elm_interface_atspi_accessible_role_get());
switch (role)
{