summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/elc_multibuttonentry.c10
-rw-r--r--src/lib/elm_atspi_bridge.c15
-rw-r--r--src/lib/elm_check.c15
-rw-r--r--src/lib/elm_entry.c44
-rw-r--r--src/lib/elm_gengrid.c29
-rw-r--r--src/lib/elm_genlist.c31
-rw-r--r--src/lib/elm_index.c35
-rw-r--r--src/lib/elm_interface_atspi_accessible.c23
-rw-r--r--src/lib/elm_interface_atspi_accessible.eo9
-rw-r--r--src/lib/elm_layout.c4
-rw-r--r--src/lib/elm_list.c30
-rw-r--r--src/lib/elm_menu.c16
-rw-r--r--src/lib/elm_radio.c12
-rw-r--r--src/lib/elm_slider.c6
-rw-r--r--src/lib/elm_toolbar.c15
-rw-r--r--src/lib/elm_widget.c19
-rw-r--r--src/lib/elm_win.c30
17 files changed, 143 insertions, 200 deletions
diff --git a/src/lib/elc_multibuttonentry.c b/src/lib/elc_multibuttonentry.c
index a6102650c..16cdca421 100644
--- a/src/lib/elc_multibuttonentry.c
+++ b/src/lib/elc_multibuttonentry.c
@@ -650,8 +650,7 @@ EOLIAN static void
650_elm_multibuttonentry_item_eo_base_destructor(Eo *eo_it, 650_elm_multibuttonentry_item_eo_base_destructor(Eo *eo_it,
651 Elm_Multibuttonentry_Item_Data *it) 651 Elm_Multibuttonentry_Item_Data *it)
652{ 652{
653 if (_elm_config->atspi_mode) 653 elm_interface_atspi_accessible_children_changed_del_signal_emit(WIDGET(it), eo_it);
654 elm_interface_atspi_accessible_children_changed_del_signal_emit(WIDGET(it), eo_it);
655 _item_del(it); 654 _item_del(it);
656 655
657 eo_do_super(eo_it, ELM_MULTIBUTTONENTRY_ITEM_CLASS, eo_destructor()); 656 eo_do_super(eo_it, ELM_MULTIBUTTONENTRY_ITEM_CLASS, eo_destructor());
@@ -916,11 +915,8 @@ _item_new(Elm_Multibuttonentry_Data *sd,
916 eo_do(obj, eo_event_callback_call 915 eo_do(obj, eo_event_callback_call
917 (ELM_MULTIBUTTONENTRY_EVENT_ITEM_ADDED, eo_item)); 916 (ELM_MULTIBUTTONENTRY_EVENT_ITEM_ADDED, eo_item));
918 917
919 if (_elm_config->atspi_mode) 918 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
920 { 919 elm_interface_atspi_accessible_added(eo_item);
921 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
922 elm_interface_atspi_accessible_added(eo_item);
923 }
924 920
925 return eo_item; 921 return eo_item;
926} 922}
diff --git a/src/lib/elm_atspi_bridge.c b/src/lib/elm_atspi_bridge.c
index c53a86eed..2dd24a9ce 100644
--- a/src/lib/elm_atspi_bridge.c
+++ b/src/lib/elm_atspi_bridge.c
@@ -3779,8 +3779,11 @@ _registered_listeners_get(void *data, const Eldbus_Message *msg, Eldbus_Pending
3779 } 3779 }
3780 3780
3781 if (!pd->connected) 3781 if (!pd->connected)
3782 eo_do(data, eo_event_callback_call(ELM_ATSPI_BRIDGE_EVENT_CONNECTED, NULL)); 3782 {
3783 pd->connected = EINA_TRUE; 3783 pd->connected = EINA_TRUE;
3784 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_init());
3785 eo_do(data, eo_event_callback_call(ELM_ATSPI_BRIDGE_EVENT_CONNECTED, NULL));
3786 }
3784} 3787}
3785 3788
3786static void 3789static void
@@ -4262,8 +4265,12 @@ _a11y_connection_shutdown(Eo *bridge)
4262 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_handler_del(pd->event_hdlr)); 4265 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_handler_del(pd->event_hdlr));
4263 pd->event_hdlr = NULL; 4266 pd->event_hdlr = NULL;
4264 4267
4265 eo_do(bridge, eo_event_callback_call(ELM_ATSPI_BRIDGE_EVENT_DISCONNECTED, NULL)); 4268 if (pd->connected)
4266 pd->connected = EINA_FALSE; 4269 {
4270 pd->connected = EINA_FALSE;
4271 eo_do(bridge, eo_event_callback_call(ELM_ATSPI_BRIDGE_EVENT_DISCONNECTED, NULL));
4272 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_shutdown());
4273 }
4267} 4274}
4268 4275
4269static void _disconnect_cb(void *data, Eldbus_Connection *conn EINA_UNUSED, void *event_info EINA_UNUSED) 4276static void _disconnect_cb(void *data, Eldbus_Connection *conn EINA_UNUSED, void *event_info EINA_UNUSED)
diff --git a/src/lib/elm_check.c b/src/lib/elm_check.c
index 78e790651..2c5928c2a 100644
--- a/src/lib/elm_check.c
+++ b/src/lib/elm_check.c
@@ -80,10 +80,7 @@ _activate(Evas_Object *obj)
80 80
81 eo_do(obj, eo_event_callback_call(ELM_CHECK_EVENT_CHANGED, NULL)); 81 eo_do(obj, eo_event_callback_call(ELM_CHECK_EVENT_CHANGED, NULL));
82 82
83 if (_elm_config->atspi_mode) 83 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_CHECKED, sd->state);
84 elm_interface_atspi_accessible_state_changed_signal_emit(obj,
85 ELM_ATSPI_STATE_CHECKED,
86 sd->state);
87} 84}
88 85
89/* FIXME: replicated from elm_layout just because check's icon spot 86/* FIXME: replicated from elm_layout just because check's icon spot
@@ -285,10 +282,7 @@ _on_check_off(void *data,
285 elm_layout_signal_emit(obj, "elm,state,check,off", "elm"); 282 elm_layout_signal_emit(obj, "elm,state,check,off", "elm");
286 eo_do(obj, eo_event_callback_call(ELM_CHECK_EVENT_CHANGED, NULL)); 283 eo_do(obj, eo_event_callback_call(ELM_CHECK_EVENT_CHANGED, NULL));
287 284
288 if (_elm_config->atspi_mode) 285 elm_interface_atspi_accessible_state_changed_signal_emit(data, ELM_ATSPI_STATE_CHECKED, sd->state);
289 elm_interface_atspi_accessible_state_changed_signal_emit(data,
290 ELM_ATSPI_STATE_CHECKED,
291 sd->state);
292} 286}
293 287
294static void 288static void
@@ -306,10 +300,7 @@ _on_check_on(void *data,
306 elm_layout_signal_emit(obj, "elm,state,check,on", "elm"); 300 elm_layout_signal_emit(obj, "elm,state,check,on", "elm");
307 eo_do(obj, eo_event_callback_call(ELM_CHECK_EVENT_CHANGED, NULL)); 301 eo_do(obj, eo_event_callback_call(ELM_CHECK_EVENT_CHANGED, NULL));
308 302
309 if (_elm_config->atspi_mode) 303 elm_interface_atspi_accessible_state_changed_signal_emit(data, ELM_ATSPI_STATE_CHECKED, sd->state);
310 elm_interface_atspi_accessible_state_changed_signal_emit(data,
311 ELM_ATSPI_STATE_CHECKED,
312 sd->state);
313} 304}
314 305
315static void 306static void
diff --git a/src/lib/elm_entry.c b/src/lib/elm_entry.c
index a2c6d73b1..5c9405387 100644
--- a/src/lib/elm_entry.c
+++ b/src/lib/elm_entry.c
@@ -1152,8 +1152,7 @@ _elm_entry_elm_widget_on_focus(Eo *obj, Elm_Entry_Data *sd, Elm_Object_Item *ite
1152 !edje_object_part_text_imf_context_get(sd->entry_edje, "elm.text")) 1152 !edje_object_part_text_imf_context_get(sd->entry_edje, "elm.text"))
1153 elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_ON); 1153 elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_ON);
1154 eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_FOCUSED, NULL)); 1154 eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_FOCUSED, NULL));
1155 if (_elm_config->atspi_mode) 1155 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
1156 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
1157 _return_key_enabled_check(obj); 1156 _return_key_enabled_check(obj);
1158 _validate(obj); 1157 _validate(obj);
1159 } 1158 }
@@ -1165,8 +1164,7 @@ _elm_entry_elm_widget_on_focus(Eo *obj, Elm_Entry_Data *sd, Elm_Object_Item *ite
1165 !edje_object_part_text_imf_context_get(sd->entry_edje, "elm.text")) 1164 !edje_object_part_text_imf_context_get(sd->entry_edje, "elm.text"))
1166 elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_OFF); 1165 elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_OFF);
1167 eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_UNFOCUSED, NULL)); 1166 eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_UNFOCUSED, NULL));
1168 if (_elm_config->atspi_mode) 1167 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
1169 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
1170 1168
1171 if (_elm_config->selection_clear_enable) 1169 if (_elm_config->selection_clear_enable)
1172 { 1170 {
@@ -2014,6 +2012,7 @@ _entry_changed_user_signal_cb(void *data,
2014 const char *emission EINA_UNUSED, 2012 const char *emission EINA_UNUSED,
2015 const char *source EINA_UNUSED) 2013 const char *source EINA_UNUSED)
2016{ 2014{
2015 Elm_Atspi_Text_Change_Info atspi_info;
2017 Elm_Entry_Change_Info info; 2016 Elm_Entry_Change_Info info;
2018 Edje_Entry_Change_Info *edje_info = (Edje_Entry_Change_Info *) 2017 Edje_Entry_Change_Info *edje_info = (Edje_Entry_Change_Info *)
2019 edje_object_signal_callback_extra_data_get(); 2018 edje_object_signal_callback_extra_data_get();
@@ -2027,23 +2026,19 @@ _entry_changed_user_signal_cb(void *data,
2027 { 2026 {
2028 eo_do(data, eo_event_callback_call(ELM_ENTRY_EVENT_CHANGED_USER, NULL)); 2027 eo_do(data, eo_event_callback_call(ELM_ENTRY_EVENT_CHANGED_USER, NULL));
2029 } 2028 }
2030 if (_elm_config->atspi_mode) 2029 if (edje_info && edje_info->insert)
2031 { 2030 {
2032 Elm_Atspi_Text_Change_Info atspi_info; 2031 atspi_info.content = edje_info->change.insert.content;
2033 if (edje_info && edje_info->insert) 2032 atspi_info.pos = edje_info->change.insert.pos;
2034 { 2033 atspi_info.len = edje_info->change.insert.plain_length;
2035 atspi_info.content = edje_info->change.insert.content; 2034 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_INSERTED, &atspi_info));
2036 atspi_info.pos = edje_info->change.insert.pos; 2035 }
2037 atspi_info.len = edje_info->change.insert.plain_length; 2036 else if (edje_info && !edje_info->insert)
2038 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_INSERTED, &atspi_info)); 2037 {
2039 } 2038 atspi_info.content = edje_info->change.del.content;
2040 else if (edje_info && !edje_info->insert) 2039 atspi_info.pos = MIN(edje_info->change.del.start, edje_info->change.del.end);
2041 { 2040 atspi_info.len = MAX(edje_info->change.del.start, edje_info->change.del.end) - atspi_info.pos;
2042 atspi_info.content = edje_info->change.del.content; 2041 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_REMOVED, &atspi_info));
2043 atspi_info.pos = MIN(edje_info->change.del.start, edje_info->change.del.end);
2044 atspi_info.len = MAX(edje_info->change.del.start, edje_info->change.del.end) - atspi_info.pos;
2045 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_REMOVED, &atspi_info));
2046 }
2047 } 2042 }
2048} 2043}
2049 2044
@@ -2133,8 +2128,7 @@ _entry_selection_changed_signal_cb(void *data,
2133 (EVAS_SELECTABLE_INTERFACE_EVENT_SELECTION_CHANGED, NULL)); 2128 (EVAS_SELECTABLE_INTERFACE_EVENT_SELECTION_CHANGED, NULL));
2134 _selection_store(ELM_SEL_TYPE_PRIMARY, data); 2129 _selection_store(ELM_SEL_TYPE_PRIMARY, data);
2135 _update_selection_handler(data); 2130 _update_selection_handler(data);
2136 if (_elm_config->atspi_mode) 2131 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_SELECTION_CHANGED, NULL));
2137 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_SELECTION_CHANGED, NULL));
2138} 2132}
2139 2133
2140static void 2134static void
@@ -2230,8 +2224,7 @@ _entry_cursor_changed_signal_cb(void *data,
2230 if (elm_widget_focus_get(data)) 2224 if (elm_widget_focus_get(data))
2231 edje_object_signal_emit(sd->entry_edje, "elm,action,show,cursor", "elm"); 2225 edje_object_signal_emit(sd->entry_edje, "elm,action,show,cursor", "elm");
2232 _cursor_geometry_recalc(data); 2226 _cursor_geometry_recalc(data);
2233 if (_elm_config->atspi_mode) 2227 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED, NULL));
2234 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED, NULL));
2235} 2228}
2236 2229
2237static void 2230static void
@@ -2242,8 +2235,7 @@ _entry_cursor_changed_manual_signal_cb(void *data,
2242{ 2235{
2243 eo_do(data, eo_event_callback_call 2236 eo_do(data, eo_event_callback_call
2244 (ELM_ENTRY_EVENT_CURSOR_CHANGED_MANUAL, NULL)); 2237 (ELM_ENTRY_EVENT_CURSOR_CHANGED_MANUAL, NULL));
2245 if (_elm_config->atspi_mode) 2238 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED, NULL));
2246 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(data, ELM_INTERFACE_ATSPI_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED, NULL));
2247} 2239}
2248 2240
2249static void 2241static void
diff --git a/src/lib/elm_gengrid.c b/src/lib/elm_gengrid.c
index 7661995a2..e610d4cca 100644
--- a/src/lib/elm_gengrid.c
+++ b/src/lib/elm_gengrid.c
@@ -542,8 +542,7 @@ _item_unselect(Elm_Gen_Item *it)
542 sd->selected = eina_list_remove(sd->selected, eo_it); 542 sd->selected = eina_list_remove(sd->selected, eo_it);
543 eo_do(WIDGET(it), eo_event_callback_call 543 eo_do(WIDGET(it), eo_event_callback_call
544 (EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, eo_it)); 544 (EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, eo_it));
545 if (_elm_config->atspi_mode) 545 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
546 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
547 } 546 }
548} 547}
549 548
@@ -852,8 +851,7 @@ _item_text_realize(Elm_Gen_Item *it,
852 { 851 {
853 edje_object_part_text_set(target, key, ""); 852 edje_object_part_text_set(target, key, "");
854 } 853 }
855 if (_elm_config->atspi_mode) 854 elm_interface_atspi_accessible_name_changed_signal_emit(EO_OBJ(it));
856 elm_interface_atspi_accessible_name_changed_signal_emit(EO_OBJ(it));
857 } 855 }
858} 856}
859 857
@@ -2038,8 +2036,7 @@ _elm_gengrid_item_focused(Elm_Object_Item *eo_it)
2038 } 2036 }
2039 2037
2040 eo_do(obj, eo_event_callback_call(ELM_GENGRID_EVENT_ITEM_FOCUSED, eo_it)); 2038 eo_do(obj, eo_event_callback_call(ELM_GENGRID_EVENT_ITEM_FOCUSED, eo_it));
2041 if (_elm_config->atspi_mode) 2039 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
2042 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
2043} 2040}
2044 2041
2045static void 2042static void
@@ -2068,8 +2065,7 @@ _elm_gengrid_item_unfocused(Elm_Object_Item *eo_it)
2068 2065
2069 sd->focused_item = NULL; 2066 sd->focused_item = NULL;
2070 eo_do(obj, eo_event_callback_call(ELM_GENGRID_EVENT_ITEM_UNFOCUSED, eo_it)); 2067 eo_do(obj, eo_event_callback_call(ELM_GENGRID_EVENT_ITEM_UNFOCUSED, eo_it));
2071 if (_elm_config->atspi_mode) 2068 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
2072 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
2073} 2069}
2074 2070
2075static Eina_Bool 2071static Eina_Bool
@@ -4136,8 +4132,7 @@ _item_select(Elm_Gen_Item *it)
4136 if (it->generation == sd->generation) 4132 if (it->generation == sd->generation)
4137 { 4133 {
4138 eo_do(WIDGET(it), eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, eo_it)); 4134 eo_do(WIDGET(it), eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, eo_it));
4139 if (_elm_config->atspi_mode) 4135 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
4140 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
4141 } 4136 }
4142 4137
4143 it->walking--; 4138 it->walking--;
@@ -4444,11 +4439,8 @@ _elm_gengrid_item_append(Eo *obj, Elm_Gengrid_Data *sd, const Elm_Gengrid_Item_C
4444 ecore_job_del(sd->calc_job); 4439 ecore_job_del(sd->calc_job);
4445 sd->calc_job = ecore_job_add(_calc_job, obj); 4440 sd->calc_job = ecore_job_add(_calc_job, obj);
4446 4441
4447 if (_elm_config->atspi_mode) 4442 elm_interface_atspi_accessible_added(EO_OBJ(it));
4448 { 4443 elm_interface_atspi_accessible_children_changed_added_signal_emit(sd->obj, EO_OBJ(it));
4449 elm_interface_atspi_accessible_added(EO_OBJ(it));
4450 elm_interface_atspi_accessible_children_changed_added_signal_emit(sd->obj, EO_OBJ(it));
4451 }
4452 4444
4453 return EO_OBJ(it); 4445 return EO_OBJ(it);
4454} 4446}
@@ -4470,11 +4462,8 @@ _elm_gengrid_item_prepend(Eo *obj, Elm_Gengrid_Data *sd, const Elm_Gengrid_Item_
4470 ecore_job_del(sd->calc_job); 4462 ecore_job_del(sd->calc_job);
4471 sd->calc_job = ecore_job_add(_calc_job, obj); 4463 sd->calc_job = ecore_job_add(_calc_job, obj);
4472 4464
4473 if (_elm_config->atspi_mode) 4465 elm_interface_atspi_accessible_added(EO_OBJ(it));
4474 { 4466 elm_interface_atspi_accessible_children_changed_added_signal_emit(sd->obj, EO_OBJ(it));
4475 elm_interface_atspi_accessible_added(EO_OBJ(it));
4476 elm_interface_atspi_accessible_children_changed_added_signal_emit(sd->obj, EO_OBJ(it));
4477 }
4478 4467
4479 return EO_OBJ(it); 4468 return EO_OBJ(it);
4480} 4469}
diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index b78081f84..b2d46a453 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -341,8 +341,7 @@ _item_text_realize(Elm_Gen_Item *it,
341 { 341 {
342 edje_object_part_text_set(target, key, ""); 342 edje_object_part_text_set(target, key, "");
343 } 343 }
344 if (_elm_config->atspi_mode) 344 elm_interface_atspi_accessible_name_changed_signal_emit(EO_OBJ(it));
345 elm_interface_atspi_accessible_name_changed_signal_emit(EO_OBJ(it));
346 } 345 }
347} 346}
348 347
@@ -2672,8 +2671,7 @@ _elm_genlist_item_focused(Elm_Object_Item *eo_it)
2672 if (it->realized) 2671 if (it->realized)
2673 _elm_genlist_item_focus_update(it); 2672 _elm_genlist_item_focus_update(it);
2674 eo_do(obj, eo_event_callback_call(ELM_GENLIST_EVENT_ITEM_FOCUSED, eo_it)); 2673 eo_do(obj, eo_event_callback_call(ELM_GENLIST_EVENT_ITEM_FOCUSED, eo_it));
2675 if (_elm_config->atspi_mode) 2674 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
2676 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
2677} 2675}
2678 2676
2679static void 2677static void
@@ -2700,8 +2698,7 @@ _elm_genlist_item_unfocused(Elm_Object_Item *eo_it)
2700 2698
2701 sd->focused_item = NULL; 2699 sd->focused_item = NULL;
2702 eo_do(obj, eo_event_callback_call(ELM_GENLIST_EVENT_ITEM_UNFOCUSED, eo_it)); 2700 eo_do(obj, eo_event_callback_call(ELM_GENLIST_EVENT_ITEM_UNFOCUSED, eo_it));
2703 if (_elm_config->atspi_mode) 2701 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
2704 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
2705} 2702}
2706 2703
2707static Eina_Bool 2704static Eina_Bool
@@ -3729,8 +3726,7 @@ _item_unselect(Elm_Gen_Item *it)
3729 sd->selected = eina_list_remove(sd->selected, EO_OBJ(it)); 3726 sd->selected = eina_list_remove(sd->selected, EO_OBJ(it));
3730 eo_do(WIDGET(it), eo_event_callback_call 3727 eo_do(WIDGET(it), eo_event_callback_call
3731 (EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, EO_OBJ(it))); 3728 (EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, EO_OBJ(it)));
3732 if (_elm_config->atspi_mode) 3729 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
3733 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
3734} 3730}
3735 3731
3736static void 3732static void
@@ -4658,11 +4654,8 @@ _item_queue(Elm_Genlist_Data *sd,
4658 evas_object_geometry_get(sd->obj, NULL, NULL, &w, NULL); 4654 evas_object_geometry_get(sd->obj, NULL, NULL, &w, NULL);
4659 if (w > 0) _requeue_idle_enterer(sd); 4655 if (w > 0) _requeue_idle_enterer(sd);
4660 4656
4661 if (_elm_config->atspi_mode) 4657 elm_interface_atspi_accessible_added(EO_OBJ(it));
4662 { 4658 elm_interface_atspi_accessible_children_changed_added_signal_emit(sd->obj, EO_OBJ(it));
4663 elm_interface_atspi_accessible_added(EO_OBJ(it));
4664 elm_interface_atspi_accessible_children_changed_added_signal_emit(sd->obj, EO_OBJ(it));
4665 }
4666} 4659}
4667 4660
4668/* If the application wants to know the relative item, use 4661/* If the application wants to know the relative item, use
@@ -5766,8 +5759,7 @@ _item_select(Elm_Gen_Item *it)
5766 // delete item if it's requested deletion in the above callbacks. 5759 // delete item if it's requested deletion in the above callbacks.
5767 if ((it->base)->on_deletion) goto item_deleted; 5760 if ((it->base)->on_deletion) goto item_deleted;
5768 eo_do(WIDGET(it), eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, eo_it)); 5761 eo_do(WIDGET(it), eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, eo_it));
5769 if (_elm_config->atspi_mode) 5762 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
5770 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
5771 // delete item if it's requested deletion in the above callbacks. 5763 // delete item if it's requested deletion in the above callbacks.
5772 if ((it->base)->on_deletion) goto item_deleted; 5764 if ((it->base)->on_deletion) goto item_deleted;
5773 it->walking--; 5765 it->walking--;
@@ -5882,8 +5874,7 @@ _elm_genlist_item_elm_widget_item_del_pre(Eo *eo_it EINA_UNUSED,
5882 sd->items = eina_inlist_remove(sd->items, EINA_INLIST_GET(it)); 5874 sd->items = eina_inlist_remove(sd->items, EINA_INLIST_GET(it));
5883 return EINA_FALSE; 5875 return EINA_FALSE;
5884 } 5876 }
5885 if (_elm_config->atspi_mode) 5877 elm_interface_atspi_accessible_children_changed_del_signal_emit(WIDGET(it),eo_it);
5886 elm_interface_atspi_accessible_children_changed_del_signal_emit(WIDGET(it),eo_it);
5887 5878
5888 _item_del(it); 5879 _item_del(it);
5889 return EINA_TRUE; 5880 return EINA_TRUE;
@@ -6789,8 +6780,7 @@ _elm_genlist_item_expanded_set(Eo *eo_item EINA_UNUSED, Elm_Gen_Item *it, Eina_B
6789 eo_do(WIDGET(it), eo_event_callback_call 6780 eo_do(WIDGET(it), eo_event_callback_call
6790 (ELM_GENLIST_EVENT_EXPANDED, EO_OBJ(it))); 6781 (ELM_GENLIST_EVENT_EXPANDED, EO_OBJ(it)));
6791 sd->auto_scroll_enabled = EINA_TRUE; 6782 sd->auto_scroll_enabled = EINA_TRUE;
6792 if (_elm_config->atspi_mode) 6783 elm_interface_atspi_accessible_state_changed_signal_emit(eo_item, ELM_ATSPI_STATE_EXPANDED, EINA_TRUE);
6793 elm_interface_atspi_accessible_state_changed_signal_emit(eo_item, ELM_ATSPI_STATE_EXPANDED, EINA_TRUE);
6794 } 6784 }
6795 else 6785 else
6796 { 6786 {
@@ -6800,8 +6790,7 @@ _elm_genlist_item_expanded_set(Eo *eo_item EINA_UNUSED, Elm_Gen_Item *it, Eina_B
6800 eo_do(WIDGET(it), eo_event_callback_call 6790 eo_do(WIDGET(it), eo_event_callback_call
6801 (ELM_GENLIST_EVENT_CONTRACTED, EO_OBJ(it))); 6791 (ELM_GENLIST_EVENT_CONTRACTED, EO_OBJ(it)));
6802 sd->auto_scroll_enabled = EINA_FALSE; 6792 sd->auto_scroll_enabled = EINA_FALSE;
6803 if (_elm_config->atspi_mode) 6793 elm_interface_atspi_accessible_state_changed_signal_emit(eo_item, ELM_ATSPI_STATE_EXPANDED, EINA_FALSE);
6804 elm_interface_atspi_accessible_state_changed_signal_emit(eo_item, ELM_ATSPI_STATE_EXPANDED, EINA_FALSE);
6805 } 6794 }
6806} 6795}
6807 6796
diff --git a/src/lib/elm_index.c b/src/lib/elm_index.c
index 17f844a3b..bdd54a095 100644
--- a/src/lib/elm_index.c
+++ b/src/lib/elm_index.c
@@ -1372,11 +1372,8 @@ _elm_index_item_append(Eo *obj, Elm_Index_Data *sd, const char *letter, Evas_Sma
1372 ELM_INDEX_ITEM_DATA_GET(eo_item, it); 1372 ELM_INDEX_ITEM_DATA_GET(eo_item, it);
1373 VIEW(it) = edje_object_add(evas_object_evas_get(obj)); 1373 VIEW(it) = edje_object_add(evas_object_evas_get(obj));
1374 1374
1375 if (_elm_config->atspi_mode) 1375 elm_interface_atspi_accessible_added(eo_item);
1376 { 1376 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
1377 elm_interface_atspi_accessible_added(eo_item);
1378 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
1379 }
1380 1377
1381 return eo_item; 1378 return eo_item;
1382} 1379}
@@ -1394,11 +1391,8 @@ _elm_index_item_prepend(Eo *obj, Elm_Index_Data *sd, const char *letter, Evas_Sm
1394 ELM_INDEX_ITEM_DATA_GET(eo_item, it); 1391 ELM_INDEX_ITEM_DATA_GET(eo_item, it);
1395 VIEW(it) = edje_object_add(evas_object_evas_get(obj)); 1392 VIEW(it) = edje_object_add(evas_object_evas_get(obj));
1396 1393
1397 if (_elm_config->atspi_mode) 1394 elm_interface_atspi_accessible_added(eo_item);
1398 { 1395 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
1399 elm_interface_atspi_accessible_added(eo_item);
1400 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
1401 }
1402 1396
1403 return eo_item; 1397 return eo_item;
1404} 1398}
@@ -1429,11 +1423,8 @@ _elm_index_item_insert_after(Eo *obj, Elm_Index_Data *sd, Elm_Object_Item *after
1429 ELM_INDEX_ITEM_DATA_GET(eo_item, it); 1423 ELM_INDEX_ITEM_DATA_GET(eo_item, it);
1430 VIEW(it) = edje_object_add(evas_object_evas_get(obj)); 1424 VIEW(it) = edje_object_add(evas_object_evas_get(obj));
1431 1425
1432 if (_elm_config->atspi_mode) 1426 elm_interface_atspi_accessible_added(eo_item);
1433 { 1427 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
1434 elm_interface_atspi_accessible_added(eo_item);
1435 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
1436 }
1437 1428
1438 return eo_item; 1429 return eo_item;
1439} 1430}
@@ -1453,11 +1444,8 @@ _elm_index_item_insert_before(Eo *obj, Elm_Index_Data *sd, Elm_Object_Item *befo
1453 ELM_INDEX_ITEM_DATA_GET(eo_item, it); 1444 ELM_INDEX_ITEM_DATA_GET(eo_item, it);
1454 VIEW(it) = edje_object_add(evas_object_evas_get(obj)); 1445 VIEW(it) = edje_object_add(evas_object_evas_get(obj));
1455 1446
1456 if (_elm_config->atspi_mode) 1447 elm_interface_atspi_accessible_added(eo_item);
1457 { 1448 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
1458 elm_interface_atspi_accessible_added(eo_item);
1459 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
1460 }
1461 1449
1462 return eo_item; 1450 return eo_item;
1463} 1451}
@@ -1497,11 +1485,8 @@ _elm_index_item_sorted_insert(Eo *obj, Elm_Index_Data *sd, const char *letter, E
1497 ELM_INDEX_ITEM_DATA_GET(eo_item, it); 1485 ELM_INDEX_ITEM_DATA_GET(eo_item, it);
1498 VIEW(it) = edje_object_add(evas_object_evas_get(obj)); 1486 VIEW(it) = edje_object_add(evas_object_evas_get(obj));
1499 1487
1500 if (_elm_config->atspi_mode) 1488 elm_interface_atspi_accessible_added(eo_item);
1501 { 1489 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
1502 elm_interface_atspi_accessible_added(eo_item);
1503 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, eo_item);
1504 }
1505 1490
1506 if (!eo_item) return NULL; 1491 if (!eo_item) return NULL;
1507 else return eo_item; 1492 else return eo_item;
diff --git a/src/lib/elm_interface_atspi_accessible.c b/src/lib/elm_interface_atspi_accessible.c
index 6a0084a10..8e28c76ee 100644
--- a/src/lib/elm_interface_atspi_accessible.c
+++ b/src/lib/elm_interface_atspi_accessible.c
@@ -136,6 +136,7 @@ typedef struct _Elm_Interface_Atspi_Accessible_Data Elm_Interface_Atspi_Accessib
136 136
137static Eina_List *global_callbacks; 137static Eina_List *global_callbacks;
138static Eo *root; 138static Eo *root;
139static int _init_count;
139 140
140EOLIAN static int 141EOLIAN static int
141_elm_interface_atspi_accessible_index_in_parent_get(Eo *obj, Elm_Interface_Atspi_Accessible_Data *pd EINA_UNUSED) 142_elm_interface_atspi_accessible_index_in_parent_get(Eo *obj, Elm_Interface_Atspi_Accessible_Data *pd EINA_UNUSED)
@@ -325,6 +326,9 @@ _elm_interface_atspi_accessible_event_emit(Eo *class EINA_UNUSED, void *pd EINA_
325 Elm_Atspi_Event_Handler *hdl; 326 Elm_Atspi_Event_Handler *hdl;
326 Eina_Bool disabled; 327 Eina_Bool disabled;
327 328
329 if (!_init_count)
330 return;
331
328 if (!accessible || !event || !eo_isa(accessible, ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN)) 332 if (!accessible || !event || !eo_isa(accessible, ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN))
329 { 333 {
330 CRI("Invalid parameters, event: %s, obj: %s", event ? event->name : "NULL", accessible ? eo_class_name_get(accessible) : "NULL"); 334 CRI("Invalid parameters, event: %s, obj: %s", event ? event->name : "NULL", accessible ? eo_class_name_get(accessible) : "NULL");
@@ -602,4 +606,23 @@ _elm_interface_atspi_accessible_disabled_set(Eo *obj, Elm_Interface_Atspi_Access
602 pd->disabled = !!val; 606 pd->disabled = !!val;
603} 607}
604 608
609EOLIAN void
610_elm_interface_atspi_accessible_init(Eo *class EINA_UNUSED, void *pd EINA_UNUSED)
611{
612 _init_count++;
613}
614
615EOLIAN void
616_elm_interface_atspi_accessible_shutdown(Eo *class EINA_UNUSED, void *pd EINA_UNUSED)
617{
618 if (_init_count > 0)
619 _init_count--;
620}
621
622EOLIAN Eina_Bool
623_elm_interface_atspi_accessible_enabled_is(Eo *class EINA_UNUSED, void *pd EINA_UNUSED)
624{
625 return _init_count > 0 ? EINA_TRUE : EINA_FALSE;
626}
627
605#include "elm_interface_atspi_accessible.eo.c" 628#include "elm_interface_atspi_accessible.eo.c"
diff --git a/src/lib/elm_interface_atspi_accessible.eo b/src/lib/elm_interface_atspi_accessible.eo
index f6bf85e92..b7d93d95f 100644
--- a/src/lib/elm_interface_atspi_accessible.eo
+++ b/src/lib/elm_interface_atspi_accessible.eo
@@ -202,6 +202,15 @@ mixin Elm_Interface_Atspi_Accessible ()
202 } 202 }
203 } 203 }
204 } 204 }
205 init @class @protected {
206 [[Initializes accessibility submodule.]]
207 }
208 shutdown @class @protected {
209 [[Shutdowns accessibility submodule.]]
210 }
211 enabled_is @class @protected {
212 retrun: bool;
213 }
205 } 214 }
206 events { 215 events {
207 property,changed: const(char)*; 216 property,changed: const(char)*;
diff --git a/src/lib/elm_layout.c b/src/lib/elm_layout.c
index bc99d75fa..aeecf376a 100644
--- a/src/lib/elm_layout.c
+++ b/src/lib/elm_layout.c
@@ -409,7 +409,7 @@ _elm_layout_elm_widget_on_focus(Eo *obj, Elm_Layout_Smart_Data *_pd EINA_UNUSED,
409 elm_layout_signal_emit(obj, "elm,action,focus", "elm"); 409 elm_layout_signal_emit(obj, "elm,action,focus", "elm");
410 evas_object_focus_set(wd->resize_obj, EINA_TRUE); 410 evas_object_focus_set(wd->resize_obj, EINA_TRUE);
411 eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_FOCUSED, NULL)); 411 eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_FOCUSED, NULL));
412 if (_elm_config->atspi_mode && !elm_widget_child_can_focus_get(obj)) 412 if (!elm_widget_child_can_focus_get(obj))
413 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE); 413 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
414 } 414 }
415 else 415 else
@@ -417,7 +417,7 @@ _elm_layout_elm_widget_on_focus(Eo *obj, Elm_Layout_Smart_Data *_pd EINA_UNUSED,
417 elm_layout_signal_emit(obj, "elm,action,unfocus", "elm"); 417 elm_layout_signal_emit(obj, "elm,action,unfocus", "elm");
418 evas_object_focus_set(wd->resize_obj, EINA_FALSE); 418 evas_object_focus_set(wd->resize_obj, EINA_FALSE);
419 eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_UNFOCUSED, NULL)); 419 eo_do(obj, eo_event_callback_call(ELM_WIDGET_EVENT_UNFOCUSED, NULL));
420 if (_elm_config->atspi_mode && !elm_widget_child_can_focus_get(obj)) 420 if (!elm_widget_child_can_focus_get(obj))
421 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE); 421 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
422 } 422 }
423 if (eo_isa(wd->resize_obj, EDJE_OBJECT_CLASS)) 423 if (eo_isa(wd->resize_obj, EDJE_OBJECT_CLASS))
diff --git a/src/lib/elm_list.c b/src/lib/elm_list.c
index 9da0b40a7..1adcf3f4a 100644
--- a/src/lib/elm_list.c
+++ b/src/lib/elm_list.c
@@ -1163,8 +1163,7 @@ _elm_list_item_focused(Elm_Object_Item *eo_it)
1163 evas_object_raise(VIEW(it)); 1163 evas_object_raise(VIEW(it));
1164 eo_do(WIDGET(it), eo_event_callback_call 1164 eo_do(WIDGET(it), eo_event_callback_call
1165 (ELM_LIST_EVENT_ITEM_FOCUSED, eo_it)); 1165 (ELM_LIST_EVENT_ITEM_FOCUSED, eo_it));
1166 if (_elm_config->atspi_mode) 1166 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
1167 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
1168} 1167}
1169 1168
1170static void 1169static void
@@ -1190,8 +1189,7 @@ _elm_list_item_unfocused(Elm_Object_Item *eo_it)
1190 1189
1191 sd->focused_item = NULL; 1190 sd->focused_item = NULL;
1192 eo_do(obj, eo_event_callback_call(ELM_LIST_EVENT_ITEM_UNFOCUSED, eo_it)); 1191 eo_do(obj, eo_event_callback_call(ELM_LIST_EVENT_ITEM_UNFOCUSED, eo_it));
1193 if (_elm_config->atspi_mode) 1192 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
1194 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
1195} 1193}
1196 1194
1197/* 1195/*
@@ -1420,8 +1418,7 @@ call:
1420 1418
1421 if (it->func) it->func((void *)WIDGET_ITEM_DATA_GET(eo_it), WIDGET(it), eo_it); 1419 if (it->func) it->func((void *)WIDGET_ITEM_DATA_GET(eo_it), WIDGET(it), eo_it);
1422 eo_do(obj, eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, eo_it)); 1420 eo_do(obj, eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, eo_it));
1423 if (_elm_config->atspi_mode) 1421 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
1424 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
1425 sd->last_selected_item = eo_it; 1422 sd->last_selected_item = eo_it;
1426 1423
1427 _elm_list_unwalk(obj, sd); 1424 _elm_list_unwalk(obj, sd);
@@ -1490,8 +1487,7 @@ _item_unselect(Elm_List_Item_Data *it)
1490 (sd->select_mode == ELM_OBJECT_SELECT_MODE_NONE))) 1487 (sd->select_mode == ELM_OBJECT_SELECT_MODE_NONE)))
1491 eo_do(WIDGET(it), eo_event_callback_call 1488 eo_do(WIDGET(it), eo_event_callback_call
1492 (EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, EO_OBJ(it))); 1489 (EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, EO_OBJ(it)));
1493 if (_elm_config->atspi_mode) 1490 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
1494 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
1495 } 1491 }
1496 1492
1497 _elm_list_unwalk(obj, sd); 1493 _elm_list_unwalk(obj, sd);
@@ -2342,8 +2338,7 @@ _item_new(Evas_Object *obj,
2342 eo_do(it->end, elm_interface_atspi_accessible_disabled_set(EINA_TRUE)); 2338 eo_do(it->end, elm_interface_atspi_accessible_disabled_set(EINA_TRUE));
2343 } 2339 }
2344 2340
2345 if (_elm_config->atspi_mode) 2341 elm_interface_atspi_accessible_added(eo_it);
2346 elm_interface_atspi_accessible_added(eo_it);
2347 2342
2348 return it; 2343 return it;
2349} 2344}
@@ -2801,8 +2796,7 @@ _elm_list_item_append(Eo *obj, Elm_List_Data *sd, const char *label, Evas_Object
2801 it->node = eina_list_last(sd->items); 2796 it->node = eina_list_last(sd->items);
2802 elm_box_pack_end(sd->box, VIEW(it)); 2797 elm_box_pack_end(sd->box, VIEW(it));
2803 2798
2804 if (_elm_config->atspi_mode) 2799 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
2805 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
2806 2800
2807 return EO_OBJ(it); 2801 return EO_OBJ(it);
2808} 2802}
@@ -2818,8 +2812,7 @@ _elm_list_item_prepend(Eo *obj, Elm_List_Data *sd, const char *label, Evas_Objec
2818 it->node = sd->items; 2812 it->node = sd->items;
2819 elm_box_pack_start(sd->box, VIEW(it)); 2813 elm_box_pack_start(sd->box, VIEW(it));
2820 2814
2821 if (_elm_config->atspi_mode) 2815 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
2822 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
2823 2816
2824 return EO_OBJ(it); 2817 return EO_OBJ(it);
2825} 2818}
@@ -2840,8 +2833,7 @@ _elm_list_item_insert_before(Eo *obj, Elm_List_Data *sd, Elm_Object_Item *eo_bef
2840 it->node = before_it->node->prev; 2833 it->node = before_it->node->prev;
2841 elm_box_pack_before(sd->box, VIEW(it), VIEW(before_it)); 2834 elm_box_pack_before(sd->box, VIEW(it), VIEW(before_it));
2842 2835
2843 if (_elm_config->atspi_mode) 2836 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
2844 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
2845 2837
2846 return EO_OBJ(it); 2838 return EO_OBJ(it);
2847} 2839}
@@ -2862,8 +2854,7 @@ _elm_list_item_insert_after(Eo *obj, Elm_List_Data *sd, Elm_Object_Item *eo_afte
2862 it->node = after_it->node->next; 2854 it->node = after_it->node->next;
2863 elm_box_pack_after(sd->box, VIEW(it), VIEW(after_it)); 2855 elm_box_pack_after(sd->box, VIEW(it), VIEW(after_it));
2864 2856
2865 if (_elm_config->atspi_mode) 2857 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
2866 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
2867 2858
2868 return EO_OBJ(it); 2859 return EO_OBJ(it);
2869} 2860}
@@ -2893,8 +2884,7 @@ _elm_list_item_sorted_insert(Eo *obj, Elm_List_Data *sd, const char *label, Evas
2893 elm_box_pack_before(sd->box, VIEW(it), VIEW(before)); 2884 elm_box_pack_before(sd->box, VIEW(it), VIEW(before));
2894 } 2885 }
2895 2886
2896 if (_elm_config->atspi_mode) 2887 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
2897 elm_interface_atspi_accessible_children_changed_added_signal_emit(obj, EO_OBJ(it));
2898 2888
2899 return EO_OBJ(it); 2889 return EO_OBJ(it);
2900} 2890}
diff --git a/src/lib/elm_menu.c b/src/lib/elm_menu.c
index 725c45c2b..4dbb34cb8 100644
--- a/src/lib/elm_menu.c
+++ b/src/lib/elm_menu.c
@@ -108,8 +108,7 @@ _submenu_sizing_eval(Elm_Menu_Item_Data *parent_it)
108 { 108 {
109 ELM_MENU_ITEM_DATA_GET(eo_item, item); 109 ELM_MENU_ITEM_DATA_GET(eo_item, item);
110 elm_layout_sizing_eval(VIEW(item)); 110 elm_layout_sizing_eval(VIEW(item));
111 if (_elm_config->atspi_mode) 111 elm_interface_atspi_accessible_state_changed_signal_emit(eo_item, ELM_ATSPI_STATE_SHOWING, EINA_TRUE);
112 elm_interface_atspi_accessible_state_changed_signal_emit(eo_item, ELM_ATSPI_STATE_SHOWING, EINA_TRUE);
113 } 112 }
114 113
115 114
@@ -503,8 +502,7 @@ _menu_item_activate_cb(void *data,
503 } 502 }
504 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(WIDGET(item), ELM_INTERFACE_ATSPI_SELECTION_EVENT_SELECTION_CHANGED, NULL)); 503 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, elm_interface_atspi_accessible_event_emit(WIDGET(item), ELM_INTERFACE_ATSPI_SELECTION_EVENT_SELECTION_CHANGED, NULL));
505 } 504 }
506 if (_elm_config->atspi_mode) 505 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(item), ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
507 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(item), ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
508} 506}
509 507
510static void 508static void
@@ -517,8 +515,7 @@ _menu_item_inactivate_cb(void *data,
517 515
518 item->selected = 0; 516 item->selected = 0;
519 if (item->submenu.open) _submenu_hide(item); 517 if (item->submenu.open) _submenu_hide(item);
520 if (_elm_config->atspi_mode) 518 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(item), ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
521 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(item), ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
522} 519}
523 520
524static Eina_Bool 521static Eina_Bool
@@ -1058,11 +1055,8 @@ _elm_menu_item_add(Eo *obj, Elm_Menu_Data *sd, Elm_Object_Item *parent, const ch
1058 it->dbus_idx = _elm_dbus_menu_item_add(sd->dbus_menu, eo_item); 1055 it->dbus_idx = _elm_dbus_menu_item_add(sd->dbus_menu, eo_item);
1059 it->dbus_menu = sd->dbus_menu; 1056 it->dbus_menu = sd->dbus_menu;
1060 } 1057 }
1061 if (_elm_config->atspi_mode) 1058 elm_interface_atspi_accessible_added(eo_item);
1062 { 1059 elm_interface_atspi_accessible_children_changed_added_signal_emit(parent ? parent : obj, eo_item);
1063 elm_interface_atspi_accessible_added(eo_item);
1064 elm_interface_atspi_accessible_children_changed_added_signal_emit(parent ? parent : obj, eo_item);
1065 }
1066 1060
1067 return eo_item; 1061 return eo_item;
1068} 1062}
diff --git a/src/lib/elm_radio.c b/src/lib/elm_radio.c
index 4c6f5fa3a..54f40019c 100644
--- a/src/lib/elm_radio.c
+++ b/src/lib/elm_radio.c
@@ -71,15 +71,13 @@ _state_set(Evas_Object *obj, Eina_Bool state, Eina_Bool activate)
71 if (activate) elm_layout_signal_emit(obj, "elm,activate,radio,off", "elm"); 71 if (activate) elm_layout_signal_emit(obj, "elm,activate,radio,off", "elm");
72 elm_layout_signal_emit(obj, "elm,state,radio,off", "elm"); 72 elm_layout_signal_emit(obj, "elm,state,radio,off", "elm");
73 } 73 }
74 if (_elm_config->atspi_mode) 74 if (sd->state)
75 { 75 {
76 if (sd->state) 76 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_CHECKED, EINA_TRUE);
77 {
78 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_CHECKED, EINA_TRUE);
79 }
80 else
81 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_CHECKED, EINA_FALSE);
82 } 77 }
78 else
79 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_CHECKED, EINA_FALSE);
80 }
83 } 81 }
84} 82}
85 83
diff --git a/src/lib/elm_slider.c b/src/lib/elm_slider.c
index 6db74da2b..4db8e8274 100644
--- a/src/lib/elm_slider.c
+++ b/src/lib/elm_slider.c
@@ -65,8 +65,7 @@ _delay_change(void *data)
65 sd->delay = NULL; 65 sd->delay = NULL;
66 eo_do(data, eo_event_callback_call(ELM_SLIDER_EVENT_DELAY_CHANGED, NULL)); 66 eo_do(data, eo_event_callback_call(ELM_SLIDER_EVENT_DELAY_CHANGED, NULL));
67 67
68 if (_elm_config->atspi_mode) 68 elm_interface_atspi_accessible_value_changed_signal_emit(data);
69 elm_interface_atspi_accessible_value_changed_signal_emit(data);
70 69
71 return ECORE_CALLBACK_CANCEL; 70 return ECORE_CALLBACK_CANCEL;
72} 71}
@@ -131,8 +130,7 @@ _val_set(Evas_Object *obj)
131 (wd->resize_obj, "elm.dragable.slider", pos, pos); 130 (wd->resize_obj, "elm.dragable.slider", pos, pos);
132 131
133 // emit accessiblity event also if value was chagend by API 132 // emit accessiblity event also if value was chagend by API
134 if (_elm_config->atspi_mode) 133 elm_interface_atspi_accessible_value_changed_signal_emit(obj);
135 elm_interface_atspi_accessible_value_changed_signal_emit(obj);
136} 134}
137 135
138static void 136static void
diff --git a/src/lib/elm_toolbar.c b/src/lib/elm_toolbar.c
index 5f38906f9..79fe0f6ca 100644
--- a/src/lib/elm_toolbar.c
+++ b/src/lib/elm_toolbar.c
@@ -160,8 +160,7 @@ _item_unselect(Elm_Toolbar_Item_Data *item)
160 if (item->icon) 160 if (item->icon)
161 elm_widget_signal_emit(item->icon, "elm,state,unselected", "elm"); 161 elm_widget_signal_emit(item->icon, "elm,state,unselected", "elm");
162 eo_do(WIDGET(item), eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, EO_OBJ(item))); 162 eo_do(WIDGET(item), eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, EO_OBJ(item)));
163 if (_elm_config->atspi_mode) 163 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(item), ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
164 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(item), ELM_ATSPI_STATE_SELECTED, EINA_FALSE);
165} 164}
166 165
167static void 166static void
@@ -636,8 +635,7 @@ _elm_toolbar_item_focused(Elm_Object_Item *eo_it)
636 evas_object_raise(VIEW(it)); 635 evas_object_raise(VIEW(it));
637 eo_do(obj, eo_event_callback_call 636 eo_do(obj, eo_event_callback_call
638 (ELM_TOOLBAR_EVENT_ITEM_FOCUSED, EO_OBJ(it))); 637 (ELM_TOOLBAR_EVENT_ITEM_FOCUSED, EO_OBJ(it)));
639 if (_elm_config->atspi_mode) 638 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
640 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
641} 639}
642 640
643static void 641static void
@@ -663,8 +661,7 @@ _elm_toolbar_item_unfocused(Elm_Object_Item *eo_it)
663 sd->focused_item = NULL; 661 sd->focused_item = NULL;
664 eo_do(obj, eo_event_callback_call 662 eo_do(obj, eo_event_callback_call
665 (ELM_TOOLBAR_EVENT_ITEM_UNFOCUSED, eo_it)); 663 (ELM_TOOLBAR_EVENT_ITEM_UNFOCUSED, eo_it));
666 if (_elm_config->atspi_mode) 664 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
667 elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
668} 665}
669 666
670/* 667/*
@@ -1179,8 +1176,7 @@ _item_select(Elm_Toolbar_Item_Data *it)
1179 } 1176 }
1180 eo_do(obj, eo_event_callback_call(EVAS_CLICKABLE_INTERFACE_EVENT_CLICKED, EO_OBJ(it))); 1177 eo_do(obj, eo_event_callback_call(EVAS_CLICKABLE_INTERFACE_EVENT_CLICKED, EO_OBJ(it)));
1181 eo_do(obj, eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, EO_OBJ(it))); 1178 eo_do(obj, eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, EO_OBJ(it)));
1182 if (_elm_config->atspi_mode) 1179 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
1183 elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_TRUE);
1184} 1180}
1185 1181
1186static void 1182static void
@@ -2468,8 +2464,7 @@ _item_new(Evas_Object *obj,
2468 if ((!sd->items) && (sd->select_mode == ELM_OBJECT_SELECT_MODE_ALWAYS)) 2464 if ((!sd->items) && (sd->select_mode == ELM_OBJECT_SELECT_MODE_ALWAYS))
2469 _item_select(it); 2465 _item_select(it);
2470 2466
2471 if (_elm_config->atspi_mode) 2467 elm_interface_atspi_accessible_added(eo_it);
2472 elm_interface_atspi_accessible_added(eo_it);
2473 2468
2474 return it; 2469 return it;
2475} 2470}
diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c
index 2c4ea8dd2..7fb7d9875 100644
--- a/src/lib/elm_widget.c
+++ b/src/lib/elm_widget.c
@@ -529,12 +529,9 @@ _elm_widget_evas_object_smart_show(Eo *obj, Elm_Widget_Smart_Data *_pd)
529 } 529 }
530 eina_iterator_free(it); 530 eina_iterator_free(it);
531 531
532 if (_elm_config->atspi_mode) 532 elm_interface_atspi_accessible_added(obj);
533 { 533 if (!_pd->on_destroy && _elm_widget_onscreen_is(obj))
534 elm_interface_atspi_accessible_added(obj); 534 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_SHOWING, EINA_TRUE);
535 if (!_pd->on_destroy && _elm_widget_onscreen_is(obj))
536 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_SHOWING, EINA_TRUE);
537 }
538} 535}
539 536
540EOLIAN static void 537EOLIAN static void
@@ -551,7 +548,7 @@ _elm_widget_evas_object_smart_hide(Eo *obj, Elm_Widget_Smart_Data *_pd)
551 } 548 }
552 eina_iterator_free(it); 549 eina_iterator_free(it);
553 550
554 if (_elm_config->atspi_mode && !_pd->on_destroy) 551 if (!_pd->on_destroy)
555 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_SHOWING, EINA_FALSE); 552 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_SHOWING, EINA_FALSE);
556} 553}
557 554
@@ -1199,7 +1196,7 @@ _elm_widget_sub_object_add(Eo *obj, Elm_Widget_Smart_Data *sd, Evas_Object *sobj
1199 1196
1200 elm_widget_display_mode_set(sobj, 1197 elm_widget_display_mode_set(sobj,
1201 evas_object_size_hint_display_mode_get(obj)); 1198 evas_object_size_hint_display_mode_get(obj));
1202 if (_elm_config->atspi_mode && !sd->on_create) 1199 if (!sd->on_create)
1203 { 1200 {
1204 Elm_Interface_Atspi_Accessible *aparent; 1201 Elm_Interface_Atspi_Accessible *aparent;
1205 eo_do(sobj, aparent = elm_interface_atspi_accessible_parent_get()); 1202 eo_do(sobj, aparent = elm_interface_atspi_accessible_parent_get());
@@ -1277,7 +1274,7 @@ _elm_widget_sub_object_del(Eo *obj, Elm_Widget_Smart_Data *sd, Evas_Object *sobj
1277 parent = sdp->parent_obj; 1274 parent = sdp->parent_obj;
1278 } 1275 }
1279 } 1276 }
1280 if (_elm_config->atspi_mode && !sd->on_destroy) 1277 if (!sd->on_destroy)
1281 { 1278 {
1282 Elm_Interface_Atspi_Accessible *aparent; 1279 Elm_Interface_Atspi_Accessible *aparent;
1283 eo_do(sobj, aparent = elm_interface_atspi_accessible_parent_get()); 1280 eo_do(sobj, aparent = elm_interface_atspi_accessible_parent_get());
@@ -5751,7 +5748,7 @@ _elm_widget_on_focus(Eo *obj, Elm_Widget_Smart_Data *sd, Elm_Object_Item *item E
5751 evas_object_focus_set(obj, EINA_TRUE); 5748 evas_object_focus_set(obj, EINA_TRUE);
5752 eo_do(obj, eo_event_callback_call 5749 eo_do(obj, eo_event_callback_call
5753 (ELM_WIDGET_EVENT_FOCUSED, NULL)); 5750 (ELM_WIDGET_EVENT_FOCUSED, NULL));
5754 if (_elm_config->atspi_mode && !elm_widget_child_can_focus_get(obj)) 5751 if (!elm_widget_child_can_focus_get(obj))
5755 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE); 5752 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
5756 } 5753 }
5757 else 5754 else
@@ -5760,7 +5757,7 @@ _elm_widget_on_focus(Eo *obj, Elm_Widget_Smart_Data *sd, Elm_Object_Item *item E
5760 evas_object_focus_set(obj, EINA_FALSE); 5757 evas_object_focus_set(obj, EINA_FALSE);
5761 eo_do(obj, eo_event_callback_call 5758 eo_do(obj, eo_event_callback_call
5762 (ELM_WIDGET_EVENT_UNFOCUSED, NULL)); 5759 (ELM_WIDGET_EVENT_UNFOCUSED, NULL));
5763 if (_elm_config->atspi_mode && !elm_widget_child_can_focus_get(obj)) 5760 if (!elm_widget_child_can_focus_get(obj))
5764 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE); 5761 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_FOCUSED, EINA_FALSE);
5765 } 5762 }
5766 } 5763 }
diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index 050e82b9e..47448a608 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -1130,11 +1130,8 @@ _elm_win_focus_in(Ecore_Evas *ee)
1130 edje_object_signal_emit(sd->frame_obj, "elm,action,focus", "elm"); 1130 edje_object_signal_emit(sd->frame_obj, "elm,action,focus", "elm");
1131 } 1131 }
1132 1132
1133 if (_elm_config->atspi_mode) 1133 elm_interface_atspi_window_activated_signal_emit(obj);
1134 { 1134 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_ACTIVE, EINA_TRUE);
1135 elm_interface_atspi_window_activated_signal_emit(obj);
1136 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_ACTIVE, EINA_TRUE);
1137 }
1138 1135
1139 /* do nothing */ 1136 /* do nothing */
1140 /* else if (sd->img_obj) */ 1137 /* else if (sd->img_obj) */
@@ -1168,11 +1165,8 @@ _elm_win_focus_out(Ecore_Evas *ee)
1168 /* access */ 1165 /* access */
1169 _elm_access_object_highlight_disable(evas_object_evas_get(obj)); 1166 _elm_access_object_highlight_disable(evas_object_evas_get(obj));
1170 1167
1171 if (_elm_config->atspi_mode) 1168 elm_interface_atspi_window_deactivated_signal_emit(obj);
1172 { 1169 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_ACTIVE, EINA_FALSE);
1173 elm_interface_atspi_window_deactivated_signal_emit(obj);
1174 elm_interface_atspi_accessible_state_changed_signal_emit(obj, ELM_ATSPI_STATE_ACTIVE, EINA_FALSE);
1175 }
1176 1170
1177 /* do nothing */ 1171 /* do nothing */
1178 /* if (sd->img_obj) */ 1172 /* if (sd->img_obj) */
@@ -1394,14 +1388,12 @@ _elm_win_state_change(Ecore_Evas *ee)
1394 else if (sd->iconified) 1388 else if (sd->iconified)
1395 { 1389 {
1396 eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_ICONIFIED, NULL)); 1390 eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_ICONIFIED, NULL));
1397 if (_elm_config->atspi_mode) 1391 elm_interface_atspi_window_minimized_signal_emit(obj);
1398 elm_interface_atspi_window_minimized_signal_emit(obj);
1399 } 1392 }
1400 else 1393 else
1401 { 1394 {
1402 eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_NORMAL, NULL)); 1395 eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_NORMAL, NULL));
1403 if (_elm_config->atspi_mode) 1396 elm_interface_atspi_window_restored_signal_emit(obj);
1404 elm_interface_atspi_window_restored_signal_emit(obj);
1405 } 1397 }
1406 } 1398 }
1407 if (ch_sticky) 1399 if (ch_sticky)
@@ -1438,14 +1430,12 @@ _elm_win_state_change(Ecore_Evas *ee)
1438 if (sd->maximized) 1430 if (sd->maximized)
1439 { 1431 {
1440 eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_MAXIMIZED, NULL)); 1432 eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_MAXIMIZED, NULL));
1441 if (_elm_config->atspi_mode) 1433 elm_interface_atspi_window_maximized_signal_emit(obj);
1442 elm_interface_atspi_window_maximized_signal_emit(obj);
1443 } 1434 }
1444 else 1435 else
1445 { 1436 {
1446 eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_UNMAXIMIZED, NULL)); 1437 eo_do(obj, eo_event_callback_call(ELM_WIN_EVENT_UNMAXIMIZED, NULL));
1447 if (_elm_config->atspi_mode) 1438 elm_interface_atspi_window_restored_signal_emit(obj);
1448 elm_interface_atspi_window_restored_signal_emit(obj);
1449 } 1439 }
1450 _elm_win_frame_maximized_state_update(sd, sd->maximized); 1440 _elm_win_frame_maximized_state_update(sd, sd->maximized);
1451 } 1441 }
@@ -1602,6 +1592,7 @@ _elm_win_evas_object_smart_show(Eo *obj, Elm_Win_Data *sd)
1602 if (sd->modal_count) return; 1592 if (sd->modal_count) return;
1603 const Eina_List *l; 1593 const Eina_List *l;
1604 Evas_Object *current; 1594 Evas_Object *current;
1595 Eo *root;
1605 1596
1606 if (!evas_object_visible_get(obj)) 1597 if (!evas_object_visible_get(obj))
1607 _elm_win_state_eval_queue(); 1598 _elm_win_state_eval_queue();
@@ -1616,9 +1607,8 @@ _elm_win_evas_object_smart_show(Eo *obj, Elm_Win_Data *sd)
1616 1607
1617 TRAP(sd, show); 1608 TRAP(sd, show);
1618 1609
1619 if (_elm_config->atspi_mode) 1610 if (elm_atspi_accessible_enabled_is())
1620 { 1611 {
1621 Eo *root;
1622 elm_interface_atspi_window_created_signal_emit(obj); 1612 elm_interface_atspi_window_created_signal_emit(obj);
1623 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, root = elm_interface_atspi_accessible_root_get()); 1613 eo_do(ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN, root = elm_interface_atspi_accessible_root_get());
1624 if (root) 1614 if (root)