atspi: do not expose name of PASSWORD_TEXT 91/172891/5
authorShinwoo Kim <cinoo.kim@samsung.com>
Fri, 16 Mar 2018 13:15:54 +0000 (22:15 +0900)
committerGerrit Code Review <gerrit@review.ap-northeast-2.compute.internal>
Mon, 26 Mar 2018 05:55:01 +0000 (05:55 +0000)
The AT-client could get the name of PASSWORD_TEXT.
This could be fixed in _elm_entry_elm_interface_atspi_accessible_name_get,
but user defined accessible name should be accessible by the AT-client,
so _elm_widget_elm_interface_atspi_accessible_name_get is proper place.

Change-Id: I7ababb86e60dedb6882662dca6f66e35bba20024

src/lib/elm_entry.c
src/lib/elm_widget.c

index 05841889e6f39f6c07533f22b1dcc371c6360ce6..cf3baf4a58fd6b6f9466c5a43c596db5608deea9 100644 (file)
@@ -7847,10 +7847,15 @@ _elm_entry_elm_interface_atspi_accessible_name_get(Eo *obj, Elm_Entry_Data *sd)
    eo_do_super(obj, ELM_ENTRY_CLASS, name = elm_interface_atspi_accessible_name_get());
    if (name && strncmp("", name, 1)) return name;
 
-   if (sd->password) return NULL;
-
-   name = _elm_widget_accessible_plain_name_get(obj, elm_entry_entry_get(obj));
-   if (name && strncmp("", name, 1)) return name;
+   if (sd->password)
+     {
+        if (sd->has_text) return NULL;
+     }
+   else
+     {
+        name = _elm_widget_accessible_plain_name_get(obj, elm_entry_entry_get(obj));
+        if (name && strncmp("", name, 1)) return name;
+     }
 
    const char *ret = edje_object_part_text_get(sd->entry_edje, "elm.guide");
    return _elm_widget_accessible_plain_name_get(obj, ret);
index 3e26ecbd67a1cce0e9ef7f4409c30b94538b4973..85a678241843f96ac1585d5bcb2af66a0869f8ae 100644 (file)
@@ -6685,7 +6685,7 @@ _elm_widget_elm_interface_atspi_accessible_name_get(Eo *obj, Elm_Widget_Smart_Da
    //TIZEN_ONLY(20170110) : Ignore text from elm_object_text_set in accessible_name_get
    Elm_Atspi_Role role;
    eo_do(obj, role = elm_interface_atspi_accessible_role_get());
-   if(role == ELM_ATSPI_ROLE_DIALOG)
+   if(role == ELM_ATSPI_ROLE_DIALOG || role == ELM_ATSPI_ROLE_PASSWORD_TEXT)
      return NULL;
    //