_item_select(WIDGET(it), it);
//TIZEN_ONLY(20160701): send selected signal
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(eo_it,
ELM_ATSPI_STATE_CHECKED,
EINA_TRUE);
_elm_multibuttonentry_item_eo_base_destructor(Eo *eo_it,
Elm_Multibuttonentry_Item_Data *it)
{
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_children_changed_del_signal_emit(WIDGET(it), eo_it);
_item_del(it);
eo_do(obj, eo_event_callback_call(ELM_CHECK_EVENT_CHANGED, NULL));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(obj,
ELM_ATSPI_STATE_CHECKED,
sd->state);
elm_layout_signal_emit(obj, "elm,state,check,off", "elm");
eo_do(obj, eo_event_callback_call(ELM_CHECK_EVENT_CHANGED, NULL));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(data,
ELM_ATSPI_STATE_CHECKED,
sd->state);
elm_layout_signal_emit(obj, "elm,state,check,on", "elm");
eo_do(obj, eo_event_callback_call(ELM_CHECK_EVENT_CHANGED, NULL));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(data,
ELM_ATSPI_STATE_CHECKED,
sd->state);
elm_object_signal_emit(VIEW(item), "elm,state,selected", "elm");
//TIZEN_ONLY(20160701): send selected signal
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(obj,
ELM_ATSPI_STATE_CHECKED,
EINA_TRUE);
#endif
//
DBG("[KEYPAD]: size(%d,%d, %dx%d).", sx, sy, sw, sh);
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
Evas_Object *access;
access = evas_object_data_get(sd->virtualkeypad, "_part_access_obj");
}
}
-//TIZEN ONLY(20160628): expose virtual keypad rect as at-spi object
-static Eina_Bool
-_conformant_atspi_bridge_on_connect_cb(void *data, Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
+static void
+_atspi_expose_keypad_area(Evas_Object *obj, Eina_Bool is_atspi)
{
- ELM_CONFORMANT_DATA_GET(data, sd);
+ ELM_CONFORMANT_DATA_GET(obj, sd);
Evas_Object *access;
if (sd->virtualkeypad)
{
- access = elm_access_object_register(sd->virtualkeypad, data);
- elm_atspi_accessible_role_set(access, ELM_ATSPI_ROLE_INPUT_METHOD_WINDOW);
+ if (is_atspi)
+ {
+ access = elm_access_object_register(sd->virtualkeypad, obj);
+ elm_atspi_accessible_role_set(access, ELM_ATSPI_ROLE_INPUT_METHOD_WINDOW);
+ }
+ else
+ elm_access_object_unregister(sd->virtualkeypad);
}
- return EINA_TRUE;
-}
-
-static Eina_Bool
-_conformant_atspi_bridge_on_disconnect_cb(void *data, Eo *obj EINA_UNUSED, const Eo_Event_Description *desc EINA_UNUSED, void *event_info EINA_UNUSED)
-{
- ELM_CONFORMANT_DATA_GET(data, sd);
- elm_access_object_unregister(sd->virtualkeypad);
- return EINA_TRUE;
-}
-
-static void
-_unregister_conformant_atspi_bridge_callbacks(Evas_Object *obj)
-{
- if (!_elm_config->atspi_mode) return;
- eo_do(_elm_atspi_bridge_get(),
- eo_event_callback_del(ELM_ATSPI_BRIDGE_EVENT_CONNECTED, _conformant_atspi_bridge_on_connect_cb, obj));
- eo_do(_elm_atspi_bridge_get(),
- eo_event_callback_del(ELM_ATSPI_BRIDGE_EVENT_DISCONNECTED, _conformant_atspi_bridge_on_disconnect_cb, obj));
}
+//
-static void
-_atspi_expose_keypad_area(Evas_Object *obj)
+//TIZEN_ONLY(20160822): When atspi mode is dynamically switched on/off,
+//register/unregister access objects accordingly.
+EOLIAN static void
+_elm_conformant_elm_widget_atspi(Eo *obj, Elm_Conformant_Data *_pd EINA_UNUSED, Eina_Bool is_atspi)
{
- Eina_Bool connected = EINA_FALSE;
- // If bridge is connected expose it now
- eo_do(_elm_atspi_bridge_get(), connected = elm_obj_atspi_bridge_connected_get());
- if (connected)
- _conformant_atspi_bridge_on_connect_cb(obj, NULL, NULL, NULL);
-
- // Register for bridge connect/disconnect
- _unregister_conformant_atspi_bridge_callbacks(obj);
- eo_do(_elm_atspi_bridge_get(),
- eo_event_callback_add(ELM_ATSPI_BRIDGE_EVENT_CONNECTED, _conformant_atspi_bridge_on_connect_cb, obj));
- eo_do(_elm_atspi_bridge_get(),
- eo_event_callback_add(ELM_ATSPI_BRIDGE_EVENT_DISCONNECTED, _conformant_atspi_bridge_on_disconnect_cb, obj));
+ _atspi_expose_keypad_area(obj, is_atspi);
}
//
elm_widget_sub_object_add(obj, sd->virtualkeypad);
evas_object_size_hint_max_set(sd->virtualkeypad, -1, 0);
//TIZEN ONLY(20160628): expose virtual keypad rect as at-spi object
- if (_elm_config->atspi_mode)
- _atspi_expose_keypad_area(obj);
+ if (_elm_atspi_enabled())
+ _atspi_expose_keypad_area(obj, EINA_TRUE);
//
}
// TIZEN_ONLY(20160509): support different thing in Tizen 3.0
eo_do(data, eo_event_callback_call(
ELM_CONFORMANT_EVENT_VIRTUALKEYPAD_STATE_OFF, NULL));
//TIZEN ONLY(20160628): update geometry of keyboard to screen-reader
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
Evas_Object *access;
access = evas_object_data_get(sd->virtualkeypad, "_part_access_obj");
sd->indicator_effect_timer = NULL ;
}
//END
- // TIZEN_ONLY(20160628): Unregister callbacks for ATSPI bridge enable/disable
- _unregister_conformant_atspi_bridge_callbacks(obj);
- //
eo_do_super(obj, MY_CLASS, evas_obj_smart_del());
}
Evas.Object_Smart.del;
Elm.Widget.parent.set;
Elm.Widget.theme_apply;
+ //TIZEN_ONLY(20161012): When atspi mode is dynamically switched on/off,
+ //register/unregister access objects accordingly.
+ Elm.Widget.atspi;
+ //
Elm.Layout.content_aliases.get;
}
events {
!edje_object_part_text_imf_context_get(sd->entry_edje, "elm.text"))
elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_ON);
eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_FOCUSED, NULL));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
_return_key_enabled_check(obj);
_validate(obj);
!edje_object_part_text_imf_context_get(sd->entry_edje, "elm.text"))
elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_OFF);
eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_UNFOCUSED, NULL));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
// TIZEN ONLY (20150201): Add cursor handler
if (sd->cursor_handler_shown)
{
eo_do(data, eo_event_callback_call(ELM_ENTRY_EVENT_CHANGED_USER, NULL));
}
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
Elm_Atspi_Text_Change_Info atspi_info;
if (edje_info && edje_info->insert)
edje_object_signal_callback_extra_data_get();
_entry_changed_handle(data, ELM_ENTRY_EVENT_PREEDIT_CHANGED);
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
Elm_Atspi_Text_Change_Info atspi_info;
if (edje_info && edje_info->insert)
//_selection_store(ELM_SEL_TYPE_PRIMARY, data);
//
_update_selection_handler(data);
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_SELECTION_CHANGED, NULL));
}
if (elm_widget_focus_get(data))
edje_object_signal_emit(sd->entry_edje, "elm,action,show,cursor", "elm");
_cursor_geometry_recalc(data);
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED, NULL));
}
{
eo_do(data, eo_event_callback_call
(ELM_ENTRY_EVENT_CURSOR_CHANGED_MANUAL, NULL));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED, NULL));
// TIZEN ONLY (20150715): update cursor handler when cursor pos changes
ELM_ENTRY_DATA_GET(data, sd);
(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, eo_item));
//TIZEN ONLY(2015090): expose flipselector top/bottom buttons for accessibility tree
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
if (sd->access_top_button)
{
int obj_x, int obj_y, int obj_w, int obj_h);
//TIZEN_ONLY (20160914) : Accessibility: sort children list according to their x,y position
static int _sort_items(const void *data1, const void *data2);
-static Eina_Bool _atspi_enabled();
//
static const Elm_Action key_actions[] = {
sd->selected = eina_list_remove(sd->selected, eo_it);
eo_do(WIDGET(it), eo_event_callback_call
(EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, eo_it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
}
}
{
edje_object_part_text_set(target, key, "");
}
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_name_changed_signal_emit(EO_OBJ(it));
}
}
if (eo_do_ret(EO_OBJ(it), tmp, elm_wdg_item_disabled_get()))
elm_widget_disabled_set(content, EINA_TRUE);
- if (_elm_config->atspi_mode && eo_isa(content, ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN))
+ if (_elm_atspi_enabled() && eo_isa(content, ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN))
eo_do(content, elm_interface_atspi_accessible_parent_set(EO_OBJ(it)));
}
}
evas_event_thaw(evas_object_evas_get(WIDGET(it)));
evas_event_thaw_eval(evas_object_evas_get(WIDGET(it)));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
elm_interface_atspi_accessible_removed(EO_OBJ(it));
elm_interface_atspi_accessible_children_changed_del_signal_emit(WIDGET(it), EO_OBJ(it));
/* access */
if (_elm_config->access_mode) _access_widget_item_register(it);
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
elm_interface_atspi_accessible_added(EO_OBJ(it));
elm_interface_atspi_accessible_children_changed_added_signal_emit(sd->obj, EO_OBJ(it));
_elm_widget_focus_highlight_start(psd->wobj);
//TIZEN_ONLY (20160914) : Accessibility: sort children list according to their x,y position
- if (_atspi_enabled() && sd->horizontal)
+ if (_elm_atspi_enabled() && sd->horizontal)
sd->atspi_children = eina_list_sort(sd->atspi_children, eina_list_count(sd->atspi_children), _sort_items);
//
}
eo_do(obj, eo_event_callback_call(ELM_GENGRID_EVENT_ITEM_FOCUSED, eo_it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
}
sd->focused_item = NULL;
eo_do(obj, eo_event_callback_call(ELM_GENGRID_EVENT_ITEM_UNFOCUSED, eo_it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
}
if (it->generation == sd->generation)
{
eo_do(WIDGET(it), eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, eo_it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
elm_object_item_focus_set(eo_it, EINA_TRUE);
}
return EINA_FALSE;
}
-// TIZEN_ONLY (20151009) : Accessibility: updated highlight change during gengrid scroll
-static Eina_Bool _atspi_enabled()
-{
- Eo *bridge = NULL;
- Eina_Bool ret = EINA_FALSE;
- if (_elm_config->atspi_mode && (bridge = _elm_atspi_bridge_get()))
- eo_do(bridge, ret = elm_obj_atspi_bridge_connected_get());
- return ret;
-}
-
static int _is_item_in_viewport(int viewport_x, int viewport_y, int viewport_w, int viewport_h,
int obj_x, int obj_y, int obj_w, int obj_h)
{
EOLIAN static void
_elm_gengrid_elm_interface_scrollable_content_pos_set(Eo *obj, Elm_Gengrid_Data *sd EINA_UNUSED, Evas_Coord x, Evas_Coord y, Eina_Bool sig)
{
- if (!_atspi_enabled())
+ if (!_elm_atspi_enabled())
{
eo_do_super(obj, MY_CLASS, elm_interface_scrollable_content_pos_set(x,y,sig));
return;
return NULL;
}
-//TIZEN_ONLY(20160519): improve index atspi support
-static Eina_Bool _atspi_enabled()
-{
- Eo *bridge = NULL;
- Eina_Bool ret = EINA_FALSE;
- if (_elm_config->atspi_mode && (bridge = _elm_atspi_bridge_get()))
- eo_do(bridge, ret = elm_obj_atspi_bridge_connected_get());
- return ret;
-}
-//
-
EOLIAN static Evas_Object*
_elm_index_item_elm_widget_item_access_register(Eo *eo_item, Elm_Index_Item_Data *it)
{
edje_object_signal_emit(VIEW(it_inactive),
"elm,state,inactive", "elm");
//TIZEN_ONLY(20160519): improve index atspi support
- if (_atspi_enabled()) elm_layout_signal_emit(obj, "elm,indicator,state,inactive", "elm");
+ if (_elm_atspi_enabled()) elm_layout_signal_emit(obj, "elm,indicator,state,inactive", "elm");
//
edje_object_message_signal_process(VIEW(it_inactive));
}
edje_object_signal_emit(VIEW(it_active), "elm,state,active", "elm");
//TIZEN_ONLY(20160519): improve index atspi support
- if (_atspi_enabled())
+ if (_elm_atspi_enabled())
{
elm_layout_text_set(obj, "elm.text", strdup(it_sel->letter));
elm_layout_signal_emit(obj, "elm,indicator,state,active", "elm");
ELM_INDEX_ITEM_DATA_GET(eo_item, it);
VIEW(it) = edje_object_add(evas_object_evas_get(obj));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
elm_interface_atspi_accessible_added(eo_item);
elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
elm_layout_signal_emit(obj, "elm,action,focus", "elm");
evas_object_focus_set(wd->resize_obj, EINA_TRUE);
eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_FOCUSED, NULL));
- if (_elm_config->atspi_mode && !elm_widget_child_can_focus_get(obj))
+ if (_elm_atspi_enabled() && !elm_widget_child_can_focus_get(obj))
elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
}
else
elm_layout_signal_emit(obj, "elm,action,unfocus", "elm");
evas_object_focus_set(wd->resize_obj, EINA_FALSE);
eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_UNFOCUSED, NULL));
- if (_elm_config->atspi_mode && !elm_widget_child_can_focus_get(obj))
+ if (_elm_atspi_enabled() && !elm_widget_child_can_focus_get(obj))
elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
}
if (eo_isa(wd->resize_obj, EDJE_OBJECT_CLASS))
evas_object_raise(VIEW(it));
eo_do(WIDGET(it), eo_event_callback_call
(ELM_LIST_EVENT_ITEM_FOCUSED, eo_it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
}
sd->focused_item = NULL;
eo_do(obj, eo_event_callback_call(ELM_LIST_EVENT_ITEM_UNFOCUSED, eo_it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
}
//
if (it->func) it->func((void *)WIDGET_ITEM_DATA_GET(eo_it), WIDGET(it), eo_it);
eo_do(obj, eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, eo_it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
sd->last_selected_item = eo_it;
(sd->select_mode == ELM_OBJECT_SELECT_MODE_NONE)))
eo_do(WIDGET(it), eo_event_callback_call
(EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, EO_OBJ(it)));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
}
VIEW(it) = edje_object_add(evas_object_evas_get(obj));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
if (it->icon) eo_do(it->icon, elm_interface_atspi_accessible_parent_set(eo_it));
if (it->end) eo_do(it->end, elm_interface_atspi_accessible_parent_set(eo_it));
obj);
}
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_added(eo_it);
return it;
it->node = eina_list_last(sd->items);
elm_box_pack_end(sd->box, VIEW(it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
return EO_OBJ(it);
it->node = sd->items;
elm_box_pack_start(sd->box, VIEW(it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
return EO_OBJ(it);
it->node = before_it->node->prev;
elm_box_pack_before(sd->box, VIEW(it), VIEW(before_it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
return EO_OBJ(it);
it->node = after_it->node->next;
elm_box_pack_after(sd->box, VIEW(it), VIEW(after_it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
return EO_OBJ(it);
elm_box_pack_before(sd->box, VIEW(it), VIEW(before));
}
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
return EO_OBJ(it);
return 0;
}
-static Eina_Bool _atspi_enabled()
-{
- Eo *bridge = NULL;
- Eina_Bool ret = EINA_FALSE;
- if (_elm_config->atspi_mode && (bridge = _elm_atspi_bridge_get()))
- eo_do(bridge, ret = elm_obj_atspi_bridge_connected_get());
- return ret;
-}
-
EOLIAN static void
_elm_list_elm_interface_scrollable_content_pos_set(Eo *obj EINA_UNUSED, Elm_List_Data *pd, Evas_Coord x, Evas_Coord y, Eina_Bool sig)
{
- if (!_atspi_enabled())
+ if (!_elm_atspi_enabled())
{
eo_do_super(obj, MY_CLASS, elm_interface_scrollable_content_pos_set(x,y,sig));
return;
if (activate) elm_layout_signal_emit(obj, "elm,activate,radio,off", "elm");
elm_layout_signal_emit(obj, "elm,state,radio,off", "elm");
}
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
if (sd->state)
{
SPINNER_FORMAT_INVALID
} Elm_Spinner_Format_Type;
-static Eina_Bool _atspi_enabled()
-{
- Eo *bridge = NULL;
- Eina_Bool ret = EINA_FALSE;
- if (_elm_config->atspi_mode && (bridge = _elm_atspi_bridge_get()))
- eo_do(bridge, ret = elm_obj_atspi_bridge_connected_get());
- return ret;
-}
-
static Eina_Bool
_is_valid_digit(char x)
{
elm_layout_signal_emit(obj, "elm,state,inactive", "elm");
//TIZEN_ONLY(20160606): Forcefully setting highlight frame on spinner entry as on entry activation frame goes to window again.
- if (_atspi_enabled()) eo_do(obj, elm_interface_atspi_component_highlight_clear());
+ if (_elm_atspi_enabled()) eo_do(obj, elm_interface_atspi_component_highlight_clear());
//
sd->entry_visible = EINA_FALSE;
}
sd->entry_visible = EINA_TRUE;
elm_layout_signal_emit(data, "elm,state,button,inactive", "elm");
//TIZEN_ONLY(20160606): Forcefully setting highlight frame on spinner entry as on entry activation frame goes to window again.
- if (_atspi_enabled()) eo_do(obj, elm_interface_atspi_component_highlight_grab());
+ if (_elm_atspi_enabled()) eo_do(obj, elm_interface_atspi_component_highlight_grab());
//
}
if (selected)
{
eo_do(WIDGET(item), eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, EO_OBJ(item)));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(item), ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
}
/* END */
evas_object_raise(VIEW(it));
eo_do(obj, eo_event_callback_call
(ELM_TOOLBAR_EVENT_ITEM_FOCUSED, EO_OBJ(it)));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
}
sd->focused_item = NULL;
eo_do(obj, eo_event_callback_call
(ELM_TOOLBAR_EVENT_ITEM_UNFOCUSED, eo_it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
}
//
eo_do(obj, eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, EO_OBJ(it)));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
}
evas_object_event_callback_add(VIEW(it), EVAS_CALLBACK_RESIZE, _item_resized_cb, NULL);
//
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
if (icon_obj) eo_do(icon_obj, elm_interface_atspi_accessible_parent_set(eo_it));
if (_elm_config->access_mode == ELM_ACCESS_MODE_ON)
if ((!sd->items) && (sd->select_mode == ELM_OBJECT_SELECT_MODE_ALWAYS))
_item_select(it);
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_added(eo_it);
return it;
Eina_Iterator *it;
Evas_Object *o;
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
Eo *parent;
eo_do(obj, parent = elm_interface_atspi_accessible_parent_get());
}
eina_iterator_free(it);
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
elm_interface_atspi_accessible_added(obj);
if (_elm_widget_onscreen_is(obj))
}
eina_iterator_free(it);
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_SHOWING, EINA_FALSE);
}
elm_widget_display_mode_set(sobj,
evas_object_size_hint_display_mode_get(obj));
- if (_elm_config->atspi_mode && !sdc->on_create)
+ if (_elm_atspi_enabled() && !sdc->on_create)
{
Elm_Interface_Atspi_Accessible *aparent;
eo_do(sobj, aparent = elm_interface_atspi_accessible_parent_get());
parent = sdp->parent_obj;
}
}
- if (_elm_config->atspi_mode && !sd->on_destroy)
+ if (_elm_atspi_enabled() && !sd->on_destroy)
{
Elm_Interface_Atspi_Accessible *aparent;
eo_do(sobj, aparent = elm_interface_atspi_accessible_parent_get());
evas_object_focus_set(obj, EINA_TRUE);
eo_do(obj, eo_event_callback_call
(ELM_WIDGET_EVENT_FOCUSED, NULL));
- if (_elm_config->atspi_mode && !elm_widget_child_can_focus_get(obj))
+ if (_elm_atspi_enabled() && !elm_widget_child_can_focus_get(obj))
elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
}
else
evas_object_focus_set(obj, EINA_FALSE);
eo_do(obj, eo_event_callback_call
(ELM_WIDGET_EVENT_UNFOCUSED, NULL));
- if (_elm_config->atspi_mode && !elm_widget_child_can_focus_get(obj))
+ if (_elm_atspi_enabled() && !elm_widget_child_can_focus_get(obj))
elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
}
}
edje_object_signal_emit(sd->frame_obj, "elm,action,focus", "elm");
}
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
elm_interface_atspi_window_activated_signal_emit(obj);
elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_ACTIVE, EINA_TRUE);
/* access */
_elm_access_object_highlight_disable(evas_object_evas_get(obj));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
elm_interface_atspi_window_deactivated_signal_emit(obj);
elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_ACTIVE, EINA_FALSE);
else if (sd->iconified)
{
eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_ICONIFIED, NULL));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_window_minimized_signal_emit(obj);
}
else
{
eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_NORMAL, NULL));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_window_restored_signal_emit(obj);
}
}
if (sd->maximized)
{
eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_MAXIMIZED, NULL));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_window_maximized_signal_emit(obj);
}
else
{
eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_UNMAXIMIZED, NULL));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_window_restored_signal_emit(obj);
}
}
eo_do(obj, eo_event_callback_call
(ELM_WIN_EVENT_WM_ROTATION_CHANGED, NULL));
//TIZEN_ONLY(20160915): send information to screen reader on window rotation
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
Evas_Coord width = 0, height = 0;
elm_win_screen_size_get(obj, NULL, NULL, &width, &height);
{
evas_object_smart_callback_call(obj, SIG_VISIBILITY_CHANGED, (void*)!sd->obscured);
//TIZEN_ONLY(20160701): add atspi window state visible change signal
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_VISIBLE, !sd->obscured);
//
}
TRAP(sd, show);
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
Eo *bridge = _elm_atspi_bridge_get();
elm_interface_atspi_window_created_signal_emit(obj);
ecore_evas_hide(sd->pointer.ee);
#endif
}
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
Eo *bridge = _elm_atspi_bridge_get();
elm_interface_atspi_window_destroyed_signal_emit(obj);
if (sd->autodel_clear) *(sd->autodel_clear) = -1;
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_window_destroyed_signal_emit(obj);
_elm_win_list = eina_list_remove(_elm_win_list, obj);
if (sd->autohide)
evas_object_hide(obj);
// FIXME: if above callback deletes - then the below will be invalid
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_window_destroyed_signal_emit(obj);
if (autodel) evas_object_del(obj);
else sd->autodel_clear = NULL;
}
eo_do(obj, elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_WINDOW));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_window_created_signal_emit(obj);
if(_elm_config->win_no_border)
eo_do(obj, eo_event_callback_call
(ELM_WIN_EVENT_ROTATION_CHANGED, NULL));
//TIZEN_ONLY(20160915): send information to screen reader on window rotation.
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
Evas_Coord width = 0, height = 0;
elm_win_screen_size_get(obj, NULL, NULL, &width, &height);
if (!ecore_evas_extn_socket_listen(sd->ee, svcname, svcnum, svcsys))
return EINA_FALSE;
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
if (sd->socket_proxy)
eo_unref(sd->socket_proxy);
}
}
edje_object_message_signal_process(target);
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_name_changed_signal_emit(EO_OBJ(it));
}
}
_elm_access_widget_item_unregister(it->base);
elm_object_item_access_order_unset(EO_OBJ(it));
//TIZEN_ONLY(20150709) Do not register children of MANAGES_DESCENDATS objects
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
elm_interface_atspi_accessible_removed(EO_OBJ(it));
elm_interface_atspi_accessible_children_changed_del_signal_emit(GL_IT(it)->wsd->obj, EO_OBJ(it));
eo_do(EO_OBJ(it), elm_wdg_item_cursor_set(it->mouse_cursor));
//TIZEN_ONLY(20150709) Do not register children of MANAGES_DESCENDATS objects
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
{
elm_interface_atspi_accessible_added(EO_OBJ(it));
elm_interface_atspi_accessible_children_changed_added_signal_emit(sd->obj, EO_OBJ(it));
}
#endif
-// TIZEN only (20150914) : Accessibility: updated highlight change during genlist and list scroll
-static Eina_Bool _atspi_enabled()
-{
- Eo *bridge = NULL;
- Eina_Bool ret = EINA_FALSE;
- if (_elm_config->atspi_mode && (bridge = _elm_atspi_bridge_get()))
- eo_do(bridge, ret = elm_obj_atspi_bridge_connected_get());
- return ret;
-}
-//
-
static void
_item_block_realize(Item_Block *itb, Eina_Bool force)
{
evas_output_viewport_get(evas_object_evas_get(sd->obj),
&cvx, &cvy, &cvw, &cvh);
- if (_elm_config->access_mode || _atspi_enabled())
+ if (_elm_config->access_mode || _elm_atspi_enabled())
{
// If access is on, realize more items (3 times)
cvy = cvy - cvh;
_calc((void *)psd->wsd);
- if (_elm_config->access_mode || _atspi_enabled())
+ if (_elm_config->access_mode || _elm_atspi_enabled())
{
// If access is on, realize more items (3 times)
cvy = cvy - cvh;
Eina_List *realized_new = NULL;
Eina_Bool flag = EINA_FALSE;
if ((psd->wsd->blocks_realized) && (psd->wsd->dir == -1) &&
- (!_elm_config->access_mode) && (!_atspi_enabled()))
+ (!_elm_config->access_mode) && (!_elm_atspi_enabled()))
{
start = EINA_INLIST_GET((Item_Block *)eina_list_data_get
(eina_list_last(psd->wsd->blocks_realized)));
}
}
else if ((psd->wsd->blocks_realized) && (psd->wsd->dir == 1) &&
- (!_elm_config->access_mode) && (!_atspi_enabled()))
+ (!_elm_config->access_mode) && (!_elm_atspi_enabled()))
{
start = EINA_INLIST_GET((Item_Block *)eina_list_data_get
(psd->wsd->blocks_realized));
}
sd->focused_item = it;
evas_object_smart_callback_call(WIDGET(it), SIG_ITEM_FOCUSED, EO_OBJ(it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_active_descendant_changed_signal_emit(WIDGET(it), EO_OBJ(it));
}
}
//****************************
evas_object_smart_callback_call(WIDGET(it), SIG_HIGHLIGHTED, EO_OBJ(it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_active_descendant_changed_signal_emit(WIDGET(it), EO_OBJ(it));
}
if (it->realized)
edje_object_signal_emit(VIEW(it), SIGNAL_EXPANDED, "elm");
evas_object_smart_callback_call(WIDGET(it), SIG_EXPANDED, EO_OBJ(it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_active_descendant_changed_signal_emit(WIDGET(it), eo_item);
}
else
if (it->realized)
edje_object_signal_emit(VIEW(it), SIGNAL_CONTRACTED, "elm");
evas_object_smart_callback_call(WIDGET(it), SIG_CONTRACTED, EO_OBJ(it));
- if (_elm_config->atspi_mode)
+ if (_elm_atspi_enabled())
elm_interface_atspi_accessible_active_descendant_changed_signal_emit(WIDGET(it), eo_item);
}
}
EOLIAN static void
_elm_genlist_elm_interface_scrollable_content_pos_set(Eo *obj, Elm_Genlist_Data *sid EINA_UNUSED, Evas_Coord x, Evas_Coord y, Eina_Bool sig)
{
- if (!_atspi_enabled())
+ if (!_elm_atspi_enabled())
{
eo_do_super(obj, MY_CLASS, elm_interface_scrollable_content_pos_set(x,y,sig));
return;