stanluk pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=db3c4bdd2ffaba8cc02c18467e5fd0290b42218b

commit db3c4bdd2ffaba8cc02c18467e5fd0290b42218b
Author: Lukasz Stanislawski <l.stanisl...@samsung.com>
Date:   Thu Dec 17 09:36:02 2015 +0100

    atspi: return previous name in overloaded getters
    
    Some overloaded accessible name getters did not respect
    values set by developer.
    
    @fix
---
 src/lib/elm_entry.c   | 5 ++++-
 src/lib/elm_gengrid.c | 5 ++++-
 src/lib/elm_genlist.c | 6 ++++--
 src/lib/elm_list.c    | 5 ++++-
 src/lib/elm_menu.c    | 5 ++++-
 src/lib/elm_spinner.c | 3 +++
 src/lib/elm_toolbar.c | 5 ++++-
 src/lib/elm_win.c     | 7 +++++--
 8 files changed, 32 insertions(+), 9 deletions(-)

diff --git a/src/lib/elm_entry.c b/src/lib/elm_entry.c
index ec6e502..baedc27 100644
--- a/src/lib/elm_entry.c
+++ b/src/lib/elm_entry.c
@@ -5718,8 +5718,11 @@ 
_elm_entry_elm_interface_atspi_accessible_state_set_get(Eo *obj, Elm_Entry_Data
 }
 
 EOLIAN static char*
-_elm_entry_elm_interface_atspi_accessible_name_get(Eo *obj EINA_UNUSED, 
Elm_Entry_Data *sd)
+_elm_entry_elm_interface_atspi_accessible_name_get(Eo *obj, Elm_Entry_Data *sd)
 {
+   char *name;
+   eo_do_super(obj, ELM_ENTRY_CLASS, name = 
elm_interface_atspi_accessible_name_get());
+   if (name && strncmp("", name, 1)) return name;
    const char *ret = edje_object_part_text_get(sd->entry_edje, "elm.guide");
    return ret ? strdup(ret) : NULL;
 }
diff --git a/src/lib/elm_gengrid.c b/src/lib/elm_gengrid.c
index 093f5e4..26d753d 100644
--- a/src/lib/elm_gengrid.c
+++ b/src/lib/elm_gengrid.c
@@ -5492,11 +5492,14 @@ 
_elm_gengrid_item_elm_interface_atspi_accessible_state_set_get(Eo *eo_it, Elm_Ge
 }
 
 EOLIAN char*
-_elm_gengrid_item_elm_interface_atspi_accessible_name_get(Eo *eo_it 
EINA_UNUSED, Elm_Gen_Item *it)
+_elm_gengrid_item_elm_interface_atspi_accessible_name_get(Eo *eo_it, 
Elm_Gen_Item *it)
 {
    char *ret;
    Eina_Strbuf *buf;
 
+   eo_do_super(eo_it, ELM_GENGRID_ITEM_CLASS, ret = 
elm_interface_atspi_accessible_name_get());
+   if (ret) return ret;
+
    buf = eina_strbuf_new();
 
    if (it->itc->func.text_get)
diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
index 0c84c8f..e6ff721 100644
--- a/src/lib/elm_genlist.c
+++ b/src/lib/elm_genlist.c
@@ -8038,12 +8038,14 @@ 
_elm_genlist_item_elm_interface_atspi_accessible_state_set_get(Eo *eo_it, Elm_Ge
 }
 
 EOLIAN char*
-_elm_genlist_item_elm_interface_atspi_accessible_name_get(Eo *eo_it 
EINA_UNUSED,
-                                                          Elm_Gen_Item *it)
+_elm_genlist_item_elm_interface_atspi_accessible_name_get(Eo *eo_it, 
Elm_Gen_Item *it)
 {
    char *ret;
    Eina_Strbuf *buf;
 
+   eo_do_super(eo_it, ELM_GENLIST_ITEM_CLASS, ret = 
elm_interface_atspi_accessible_name_get());
+   if (ret) return ret;
+
    buf = eina_strbuf_new();
 
    if (it->itc->func.text_get)
diff --git a/src/lib/elm_list.c b/src/lib/elm_list.c
index a4fbffe..1e81b74 100644
--- a/src/lib/elm_list.c
+++ b/src/lib/elm_list.c
@@ -2152,8 +2152,11 @@ 
_elm_list_item_elm_interface_atspi_accessible_state_set_get(Eo *eo_it, Elm_List_
 }
 
 EOLIAN static char*
-_elm_list_item_elm_interface_atspi_accessible_name_get(Eo *eo_it EINA_UNUSED, 
Elm_List_Item_Data *data)
+_elm_list_item_elm_interface_atspi_accessible_name_get(Eo *eo_it, 
Elm_List_Item_Data *data)
 {
+   char *ret;
+   eo_do_super(eo_it, ELM_LIST_ITEM_CLASS, ret = 
elm_interface_atspi_accessible_name_get());
+   if (ret) return ret;
    return data->label ? strdup(data->label) : NULL;
 }
 
diff --git a/src/lib/elm_menu.c b/src/lib/elm_menu.c
index c5ca878..5d7cd15 100644
--- a/src/lib/elm_menu.c
+++ b/src/lib/elm_menu.c
@@ -1315,8 +1315,11 @@ 
_elm_menu_item_elm_interface_atspi_accessible_role_get(Eo *obj EINA_UNUSED, Elm_
 }
 
 EOLIAN static char*
-_elm_menu_item_elm_interface_atspi_accessible_name_get(Eo *obj EINA_UNUSED, 
Elm_Menu_Item_Data *sd)
+_elm_menu_item_elm_interface_atspi_accessible_name_get(Eo *obj, 
Elm_Menu_Item_Data *sd)
 {
+   char *ret;
+   eo_do_super(obj, ELM_MENU_ITEM_CLASS, ret = 
elm_interface_atspi_accessible_name_get());
+   if (ret) return ret;
    return sd->label ? strdup(sd->label) : NULL;
 }
 
diff --git a/src/lib/elm_spinner.c b/src/lib/elm_spinner.c
index 019ad4d..116b606 100644
--- a/src/lib/elm_spinner.c
+++ b/src/lib/elm_spinner.c
@@ -1654,6 +1654,9 @@ _elm_spinner_elm_interface_atspi_value_increment_get(Eo 
*obj EINA_UNUSED, Elm_Sp
 EOLIAN static char*
 _elm_spinner_elm_interface_atspi_accessible_name_get(Eo *obj, Elm_Spinner_Data 
*sd EINA_UNUSED)
 {
+   char *name;
+   eo_do_super(obj, ELM_SPINNER_CLASS, name = 
elm_interface_atspi_accessible_name_get());
+   if (name) return name;
    const char *ret = elm_layout_text_get(obj, "elm.text");
    return ret ? strdup(ret) : NULL;
 }
diff --git a/src/lib/elm_toolbar.c b/src/lib/elm_toolbar.c
index 4fc055b..0d193ed 100644
--- a/src/lib/elm_toolbar.c
+++ b/src/lib/elm_toolbar.c
@@ -3797,8 +3797,11 @@ _elm_toolbar_item_bring_in(Eo *eo_item EINA_UNUSED, 
Elm_Toolbar_Item_Data *item,
 }
 
 EOLIAN static char*
-_elm_toolbar_item_elm_interface_atspi_accessible_name_get(Eo *eo_item 
EINA_UNUSED, Elm_Toolbar_Item_Data *item)
+_elm_toolbar_item_elm_interface_atspi_accessible_name_get(Eo *eo_item, 
Elm_Toolbar_Item_Data *item)
 {
+   char *ret;
+   eo_do_super(eo_item, ELM_TOOLBAR_ITEM_CLASS, ret = 
elm_interface_atspi_accessible_name_get());
+   if (ret) return ret;
    return item->label ? strdup(item->label) : NULL;
 }
 
diff --git a/src/lib/elm_win.c b/src/lib/elm_win.c
index ad91669..b1a05ae 100644
--- a/src/lib/elm_win.c
+++ b/src/lib/elm_win.c
@@ -5810,8 +5810,11 @@ _elm_win_elm_interface_atspi_accessible_state_set_get(Eo 
*obj, Elm_Win_Data *sd
 EOLIAN static char*
 _elm_win_elm_interface_atspi_accessible_name_get(Eo *obj, Elm_Win_Data *sd 
EINA_UNUSED)
 {
-   const char *ret = elm_win_title_get(obj);
-   return ret ? strdup(ret) : strdup("");
+   char *ret;
+   eo_do_super(obj, ELM_WIN_CLASS, ret = 
elm_interface_atspi_accessible_name_get());
+   if (ret) return ret;
+   const char *name = elm_win_title_get(obj);
+   return name ? strdup(name) : NULL;
 }
 
 #include "elm_win.eo.c"

-- 


Reply via email to