elm_access/efl_ui_widget: Remove markup from accessible name 01/280301/6
authorArtur Świgoń <a.swigon@samsung.com>
Fri, 26 Aug 2022 10:14:07 +0000 (12:14 +0200)
committerArtur Świgoń <a.swigon@samsung.com>
Wed, 12 Oct 2022 09:10:28 +0000 (11:10 +0200)
@tizen_only

Change-Id: I784e92aa5a8acadbb7c4c1470f01c65016a1ec55

src/lib/elementary/efl_access_object.c
src/lib/elementary/efl_ui_widget.c
src/lib/elementary/elm_access.c

index ba3ba74..b48e067 100644 (file)
@@ -389,10 +389,16 @@ _efl_access_object_i18n_name_get(const Eo *obj EINA_UNUSED, Efl_Access_Object_Da
      ret = pd->name_cb_item.cb((void *)pd->name_cb_item.data, (Eo *)obj);
    if (ret)
      {
+        //TIZEN_ONLY(20220826): Remove markup from accessible name
+        char *text;
+
+        text = _elm_util_mkup_to_text(ret);
         eina_stringshare_replace(&pd->translation_domain, NULL);
         pd->translation_domain = NULL;
-        eina_stringshare_replace(&pd->name, ret);
+        eina_stringshare_replace(&pd->name, text);
+        free(text);
         free(ret);
+        //
      }
    //
 #ifdef ENABLE_NLS
@@ -405,7 +411,13 @@ _efl_access_object_i18n_name_get(const Eo *obj EINA_UNUSED, Efl_Access_Object_Da
 EOLIAN static void
 _efl_access_object_i18n_name_set(Eo *obj EINA_UNUSED, Efl_Access_Object_Data *pd, const char *val)
 {
-   eina_stringshare_replace(&pd->name, val);
+   //TIZEN_ONLY(20220826): Remove markup from accessible name
+   char *text;
+
+   text = _elm_util_mkup_to_text(val); // NULL is OK
+   eina_stringshare_replace(&pd->name, text);
+   free(text);
+   //
 }
 
 //TIZEN_ONLY(20190922): add name callback, description callback.
index 53977cf..0a02e26 100644 (file)
@@ -7451,10 +7451,13 @@ elm_widget_scroll_item_align_enabled_get(const Evas_Object *obj)
 EOLIAN void
 _efl_ui_widget_efl_access_object_i18n_name_set(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data* _pd EINA_UNUSED, const char *name)
 {
-   if (_pd->name)
-     eina_stringshare_del(_pd->name);
+   //TIZEN_ONLY(20220826): Remove markup from accessible name
+   char *text;
 
-   _pd->name = eina_stringshare_add(name);
+   text = _elm_util_mkup_to_text(name); // NULL is OK
+   eina_stringshare_replace(&_pd->name, text);
+   free(text);
+   //
 }
 //
 
@@ -7545,10 +7548,13 @@ _elm_widget_item_efl_access_object_description_get(const Eo *obj EINA_UNUSED, El
 EOLIAN void
 _elm_widget_item_efl_access_object_i18n_name_set(Eo *obj EINA_UNUSED, Elm_Widget_Item_Data* _pd EINA_UNUSED, const char *name)
 {
-   if (_pd->name)
-     eina_stringshare_del(_pd->name);
+   //TIZEN_ONLY(20220826): Remove markup from accessible name
+   char *text;
 
-   _pd->name = eina_stringshare_add(name);
+   text = _elm_util_mkup_to_text(name); // NULL is OK
+   eina_stringshare_replace(&_pd->name, text);
+   free(text);
+   //
 }
 
 EOLIAN const char*
index 1263f2b..e464a92 100644 (file)
@@ -1591,6 +1591,9 @@ EOLIAN static const char*
 _elm_access_efl_access_object_i18n_name_get(const Eo *obj, void *pd EINA_UNUSED)
 {
    char *accessible_name;
+   //TIZEN_ONLY(20220826): Remove markup from accessible name
+   char *accessible_plain_name;
+   //
    const char *ret = efl_access_object_i18n_name_get(efl_super(obj, MY_CLASS));
    if (ret) return ret;
 
@@ -1598,7 +1601,11 @@ _elm_access_efl_access_object_i18n_name_get(const Eo *obj, void *pd EINA_UNUSED)
 
    accessible_name = elm_access_info_get(obj, ELM_ACCESS_INFO);
    eina_stringshare_del(wd->accessible_name);
-   wd->accessible_name = eina_stringshare_add(accessible_name);
+   //TIZEN_ONLY(20220826): Remove markup from accessible name
+   accessible_plain_name = _elm_util_mkup_to_text(accessible_name);
+   wd->accessible_name = eina_stringshare_add(accessible_plain_name);
+   free(accessible_plain_name);
+   //
    free(accessible_name);
    return wd->accessible_name;
 }