{
if (!_access_action_callback_call(obj, ELM_ACCESS_ACTION_HIGHLIGHT, NULL))
eo_do_super(obj, ELM_ACCESS_CLASS, elm_interface_atspi_component_highlight_grab());
-
+ //TIZEN_ONLY(20170717) : expose highlight information on atspi
+ else
+ elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_HIGHLIGHTED, EINA_TRUE);
+ //
// TIZEN_ONLY(20160708) - support elm_access used for embedded toolkit
action_by = ELM_ACCESS_ACTION_FIRST;
//
-///TIZEN_ONLY(20170717) : expose highlight information on atspi
- elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_HIGHLIGHTED, EINA_TRUE);
-///
return EINA_TRUE;
}
{
if (!_access_action_callback_call(obj, ELM_ACCESS_ACTION_UNHIGHLIGHT, NULL))
eo_do_super(obj, ELM_ACCESS_CLASS, elm_interface_atspi_component_highlight_clear());
-
- // TIZEN_ONLY(20160708) - support elm_access used for embedded toolkit
+ //TIZEN_ONLY(20170717) : expose highlight information on atspi
+ else
+ elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_HIGHLIGHTED, EINA_FALSE);
+ //
+ //TIZEN_ONLY(20160708) - support elm_access used for embedded toolkit
action_by = ELM_ACCESS_ACTION_FIRST;
//
-
-///TIZEN_ONLY(20170717) : expose highlight information on atspi
- elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_HIGHLIGHTED, EINA_FALSE);
-///
return EINA_TRUE;
}
}
//
+static Eina_Bool
+_ee_obscured_get(Eo *obj)
+{
+ const Ecore_Evas *ee;
+ if (eo_isa(obj, ELM_WIDGET_ITEM_CLASS))
+ {
+ Elm_Widget_Item_Data *id = eo_data_scope_get(obj, ELM_WIDGET_ITEM_CLASS);
+ ee = ecore_evas_ecore_evas_get(evas_object_evas_get(id->view));
+ }
+ else
+ {
+ ee = ecore_evas_ecore_evas_get(evas_object_evas_get(obj));
+ }
+
+ return ecore_evas_obscured_get(ee);
+}
+
// TIZEN_ONLY(20170310) - implementation of get object under coordinates for accessibility
static Eldbus_Message *
_accessible_get_neighbor(const Eldbus_Service_Interface *iface EINA_UNUSED, const Eldbus_Message *msg)
// TIZEN_ONLY(20161213) - do not response if ecore evas is obscured
if (root)
{
- const Ecore_Evas *ee = ecore_evas_ecore_evas_get(evas_object_evas_get(root));
- if (ecore_evas_obscured_get(ee))
+ if (_ee_obscured_get(root))
return eldbus_message_error_new(msg, "org.freedesktop.DBus.Error.Failed", "ecore evas is obscured.");
}
//
ELM_ATSPI_OBJ_CHECK_OR_RETURN_DBUS_ERROR(obj, ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, msg);
// TIZEN_ONLY(20161213) - do not response if ecore evas is obscured
- const Ecore_Evas *ee = ecore_evas_ecore_evas_get(evas_object_evas_get(obj));
- if (ecore_evas_obscured_get(ee))
+ if (_ee_obscured_get(obj))
return eldbus_message_error_new(msg, "org.freedesktop.DBus.Error.Failed", "ecore evas is obscured.");
//
ELM_ATSPI_OBJ_CHECK_OR_RETURN_DBUS_ERROR(obj, ELM_INTERFACE_ATSPI_COMPONENT_MIXIN, msg);
// TIZEN_ONLY(20161213) - do not response if ecore evas is obscured
- const Ecore_Evas *ee = ecore_evas_ecore_evas_get(evas_object_evas_get(obj));
- if (ecore_evas_obscured_get(ee))
+ if (_ee_obscured_get(obj))
return eldbus_message_error_new(msg, "org.freedesktop.DBus.Error.Failed", "ecore evas is obscured.");
//
//TIZEN_ONLY(20170802): handle "gesture_required" attribute
unsigned int det2 = 0;
- if ((state_data->type == ELM_ATSPI_STATE_HIGHLIGHTED) &&
- (_scroll_gesture_required_is(obj)))
- det2++;
+ if (state_data->type == ELM_ATSPI_STATE_HIGHLIGHTED)
+ {
+ if (_ee_obscured_get(obj))
+ return EINA_FALSE;
- _bridge_signal_send(data, obj, ATSPI_DBUS_INTERFACE_EVENT_OBJECT,
- &_event_obj_signals[ATSPI_OBJECT_EVENT_STATE_CHANGED], type_desc, state_data->new_value, det2, NULL);
+ if (_scroll_gesture_required_is(obj))
+ det2++;
+ }
//
return EINA_TRUE;
}