From 93d9489819848d7e185c07d3e9ae74dc5fa97310 Mon Sep 17 00:00:00 2001 From: Lukasz Stanislawski Date: Thu, 5 Nov 2015 10:52:28 +0100 Subject: [PATCH] atspi: add missing SELECTED changed signals @fix --- legacy/elementary/src/lib/elm_gengrid.c | 4 ++++ legacy/elementary/src/lib/elm_genlist.c | 4 ++++ legacy/elementary/src/lib/elm_list.c | 4 ++++ legacy/elementary/src/lib/elm_toolbar.c | 4 ++++ 4 files changed, 16 insertions(+) diff --git a/legacy/elementary/src/lib/elm_gengrid.c b/legacy/elementary/src/lib/elm_gengrid.c index 01c72ccef6..ce189120a7 100644 --- a/legacy/elementary/src/lib/elm_gengrid.c +++ b/legacy/elementary/src/lib/elm_gengrid.c @@ -536,6 +536,8 @@ _item_unselect(Elm_Gen_Item *it) 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) + elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_FALSE); } } @@ -4127,6 +4129,8 @@ _item_select(Elm_Gen_Item *it) 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) + 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); } diff --git a/legacy/elementary/src/lib/elm_genlist.c b/legacy/elementary/src/lib/elm_genlist.c index 2e4bd8bf7f..a706bd947b 100644 --- a/legacy/elementary/src/lib/elm_genlist.c +++ b/legacy/elementary/src/lib/elm_genlist.c @@ -3713,6 +3713,8 @@ _item_unselect(Elm_Gen_Item *it) sd->selected = eina_list_remove(sd->selected, EO_OBJ(it)); eo_do(WIDGET(it), eo_event_callback_call (EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, EO_OBJ(it))); + if (_elm_config->atspi_mode) + elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_FALSE); } static void @@ -5785,6 +5787,8 @@ _item_select(Elm_Gen_Item *it) // delete item if it's requested deletion in the above callbacks. if ((it->base)->on_deletion) goto item_deleted; eo_do(WIDGET(it), eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, eo_it)); + if (_elm_config->atspi_mode) + elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_TRUE); // delete item if it's requested deletion in the above callbacks. if ((it->base)->on_deletion) goto item_deleted; it->walking--; diff --git a/legacy/elementary/src/lib/elm_list.c b/legacy/elementary/src/lib/elm_list.c index 065caa4e42..00be140fb1 100644 --- a/legacy/elementary/src/lib/elm_list.c +++ b/legacy/elementary/src/lib/elm_list.c @@ -1420,6 +1420,8 @@ call: 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) + elm_interface_atspi_accessible_state_changed_signal_emit(eo_it, ELM_ATSPI_STATE_SELECTED, EINA_TRUE); sd->last_selected_item = eo_it; _elm_list_unwalk(obj, sd); @@ -1488,6 +1490,8 @@ _item_unselect(Elm_List_Item_Data *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) + elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_FALSE); } _elm_list_unwalk(obj, sd); diff --git a/legacy/elementary/src/lib/elm_toolbar.c b/legacy/elementary/src/lib/elm_toolbar.c index ef38744f28..5d46d1f24a 100644 --- a/legacy/elementary/src/lib/elm_toolbar.c +++ b/legacy/elementary/src/lib/elm_toolbar.c @@ -160,6 +160,8 @@ _item_unselect(Elm_Toolbar_Item_Data *item) if (item->icon) elm_widget_signal_emit(item->icon, "elm,state,unselected", "elm"); eo_do(WIDGET(item), eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_UNSELECTED, EO_OBJ(item))); + if (_elm_config->atspi_mode) + elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(item), ELM_ATSPI_STATE_SELECTED, EINA_FALSE); } static void @@ -1168,6 +1170,8 @@ _item_select(Elm_Toolbar_Item_Data *it) } eo_do(obj, eo_event_callback_call(EVAS_CLICKABLE_INTERFACE_EVENT_CLICKED, EO_OBJ(it))); eo_do(obj, eo_event_callback_call(EVAS_SELECTABLE_INTERFACE_EVENT_SELECTED, EO_OBJ(it))); + if (_elm_config->atspi_mode) + elm_interface_atspi_accessible_state_changed_signal_emit(EO_OBJ(it), ELM_ATSPI_STATE_SELECTED, EINA_TRUE); } static void