widget: add atspi name setter 07/65607/3
authorLukasz Stanislawski <l.stanislaws@samsung.com>
Fri, 17 Jul 2015 15:32:50 +0000 (17:32 +0200)
committerPrasoon Singh <prasoon.16@samsung.com>
Thu, 21 Apr 2016 06:55:01 +0000 (12:25 +0530)
Conflicts:
src/lib/elm_widget.c
src/lib/elm_widget.eo

Change-Id: I6693a7e9f99ed4933e96ed6b7ccee78e67aa1c4c

src/lib/elm_widget.c
src/lib/elm_widget.eo
src/lib/elm_widget.h

index ab1aca9..3421d17 100644 (file)
@@ -5785,6 +5785,11 @@ _elm_widget_eo_base_destructor(Eo *obj, Elm_Widget_Smart_Data *sd EINA_UNUSED)
    if (sd->atspi_custom_relations)
      elm_atspi_relation_set_free(&sd->atspi_custom_relations);
    //
+   //TIZEN_ONLY(20150717) add widget name setter
+   if (sd->name)
+     eina_stringshare_del(sd->name);
+   ///
+
    eo_do_super(obj, ELM_WIDGET_CLASS, eo_destructor());
    sd->on_destroy = EINA_FALSE;
 
@@ -5899,10 +5904,10 @@ EOLIAN static char*
 _elm_widget_elm_interface_atspi_accessible_name_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *_pd EINA_UNUSED)
 {
    const char *ret;
-   char *name;
-   eo_do_super(obj, ELM_WIDGET_CLASS, name = elm_interface_atspi_accessible_name_get());
-
-   if (name) return name;
+   //TIZEN_ONLY(20150717) add widget name setter
+   if (_pd->name)
+     return strdup(_pd->name);
+   ///
 
    ret = elm_object_text_get(obj);
    if (!ret) return NULL;
@@ -6169,6 +6174,18 @@ _elm_widget_item_elm_interface_atspi_component_alpha_get(Eo *obj EINA_UNUSED, El
    return (double)alpha / 255.0;
 }
 
+///////////////////////////////////
+//TIZEN_ONLY(20150717) add widget name setter
+EOLIAN void
+_elm_widget_elm_interface_atspi_accessible_name_set(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data* _pd EINA_UNUSED, char *name)
+{
+   if (_pd->name)
+     eina_stringshare_del(_pd->name);
+
+   _pd->name = eina_stringshare_add(name);
+}
+///
+
 //TIZEN_ONLY(20160329): widget: improve accessibile_at_point getter (a8aff0423202b9a55dbb3843205875226678fbd6)
 EOLIAN static Eo *
 _elm_widget_elm_interface_atspi_component_accessible_at_point_get(Eo *obj, Elm_Widget_Smart_Data *_pd EINA_UNUSED, Eina_Bool screen_coords, int x, int y)
index 8a7b404..1f82db7 100644 (file)
@@ -767,6 +767,9 @@ abstract Elm.Widget (Evas.Object_Smart, Elm_Interface_Atspi_Accessible, Elm_Inte
       @virtual .focus_next;
       @virtual .parent_widget.get;
       Elm_Interface_Atspi_Accessible.name.get;
+      //TIZEN_ONLY(20150717) add widget name setter
+      Elm_Interface_Atspi_Accessible.name.set;
+      ///
       Elm_Interface_Atspi_Accessible.state_set.get;
       Elm_Interface_Atspi_Accessible.children.get;
       Elm_Interface_Atspi_Accessible.parent.get;
index 1dba1a7..4113cd7 100644 (file)
@@ -413,6 +413,9 @@ typedef struct _Elm_Widget_Smart_Data
 
    int                          role;         /**< Accessibility role */
    const char                   *description; /**< Accessibility description */
+   //TIZEN_ONLY(20150717) add widget name setter
+   const char                   *name;
+   ///
    Eo                           *atspi_custom_parent; /**< Accessibility parent if different then parent_obj */
    //TIZEN_ONLY(20150709) add relations atpi
    Elm_Atspi_Relation_Set       atspi_custom_relations; /**< Developer-defined accessiblity relations */