[atspi] add widget/widget_item accessible_description_set/get
authorShinwoo Kim <cinoo.kim@samsung.com>
Fri, 11 Nov 2016 12:12:16 +0000 (21:12 +0900)
committerJunsuChoi <jsuya.choi@samsung.com>
Thu, 17 Nov 2016 08:07:49 +0000 (17:07 +0900)
Because the translatable domain exits in widget/widget_item data, it does not work with base interface description_set/get.

http://suprem.sec.samsung.net/jira/browse/TSAM-9930

Change-Id: I54258ef6167a9bf0aeb808f1f2751513fed31629

src/lib/elm_widget.c
src/lib/elm_widget.eo
src/lib/elm_widget_item.eo

index 6dee44d..0428e3b 100644 (file)
@@ -6236,6 +6236,30 @@ _elm_widget_elm_interface_atspi_accessible_name_get(Eo *obj EINA_UNUSED, Elm_Wid
    free(accessible_name);
    return _pd->accessible_name;
 }
+//TIZEN_ONLY(20161111) add widget/widget_item description get/set
+EOLIAN void
+_elm_widget_elm_interface_atspi_accessible_description_set(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data* _pd EINA_UNUSED, const char *description)
+{
+   if (_pd->description)
+     eina_stringshare_del(_pd->description);
+
+   _pd->description = eina_stringshare_add(description);
+}
+
+EOLIAN static const char*
+_elm_widget_elm_interface_atspi_accessible_description_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *_pd EINA_UNUSED)
+{
+   char *ret = NULL;
+   eo_do_super(obj, ELM_WIDGET_ITEM_CLASS, ret = elm_interface_atspi_accessible_description_get());
+   if (ret) return ret;
+
+#ifdef HAVE_GETTEXT
+   if (_pd->atspi_translation_domain)
+     return dgettext(_pd->atspi_translation_domain, _pd->description);
+#endif
+   return _pd->description;
+}
+//
 
 //TIZEN_ONLY(20150713) : add atspi name setter to widget_item
 EOLIAN void
@@ -6268,7 +6292,30 @@ _elm_widget_item_elm_interface_atspi_accessible_name_get(Eo *obj EINA_UNUSED, El
    return NULL;
 }
 //
+//TIZEN_ONLY(20161111) add widget/widget_item description get/set
+EOLIAN void
+_elm_widget_item_elm_interface_atspi_accessible_description_set(Eo *obj EINA_UNUSED, Elm_Widget_Item_Data* _pd EINA_UNUSED, const char *description)
+{
+   if (_pd->description)
+     eina_stringshare_del(_pd->description);
+
+   _pd->description = eina_stringshare_add(description);
+}
+
+EOLIAN const char*
+_elm_widget_item_elm_interface_atspi_accessible_description_get(Eo *obj EINA_UNUSED, Elm_Widget_Item_Data *_pd EINA_UNUSED)
+{
+   char *ret = NULL;
+   eo_do_super(obj, ELM_WIDGET_ITEM_CLASS, ret = elm_interface_atspi_accessible_description_get());
+   if (ret) return ret;
 
+#ifdef HAVE_GETTEXT
+   if (_pd->atspi_translation_domain)
+     return dgettext(_pd->atspi_translation_domain, _pd->description);
+#endif
+   return _pd->description;
+}
+//
 //TIZEN_ONLY(20150709) : spatially sort atspi children
 static int _sort_vertically(const void *data1, const void *data2)
 {
index 94f4307..e3674aa 100644 (file)
@@ -872,6 +872,10 @@ abstract Elm.Widget (Evas.Object_Smart, Elm_Interface_Atspi_Accessible,
       //TIZEN_ONLY(20150717) add widget name setter
       Elm_Interface_Atspi_Accessible.name.set;
       //
+      //TIZEN_ONLY(20161111) add widget/widget_item description get/set
+      Elm_Interface_Atspi_Accessible.description.set;
+      Elm_Interface_Atspi_Accessible.description.get;
+      //
       Elm_Interface_Atspi_Accessible.state_set.get;
       Elm_Interface_Atspi_Accessible.children.get;
       Elm_Interface_Atspi_Accessible.parent.get;
index bdd9481..388c9a3 100644 (file)
@@ -625,6 +625,10 @@ class Elm.Widget_Item (Eo.Base, Elm_Interface_Atspi_Accessible,
            Elm_Interface_Atspi_Accessible.name.get;
            Elm_Interface_Atspi_Accessible.name.set;
            //
+           //TIZEN_ONLY(20161111) add widget/widget_item description get/set
+           Elm_Interface_Atspi_Accessible.description.set;
+           Elm_Interface_Atspi_Accessible.description.get;
+           //
            Elm_Interface_Atspi_Accessible.state_set.get;
            Elm_Interface_Atspi_Accessible.parent.get;
            //TIZEN_ONLY(20150709) : atspi relations api