ELM_PRIV_ENTRY_SIGNALS(ELM_PRIV_STATIC_VARIABLE_DECLARE);
+#define ENTRY_PASSWORD_MASK_CHARACTER 0x002A
+
static const Evas_Smart_Cb_Description _smart_callbacks[] = {
ELM_PRIV_ENTRY_SIGNALS(ELM_PRIV_SMART_CALLBACKS_DESC)
{SIG_WIDGET_LANG_CHANGED, ""}, /**< handled by elm_widget */
sd->line_wrap = ELM_WRAP_NONE;
elm_entry_input_hint_set(obj, ((sd->input_hints & ~ELM_INPUT_HINT_AUTO_COMPLETE) | ELM_INPUT_HINT_SENSITIVE_DATA));
_entry_selection_callbacks_unregister(obj);
+ elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_PASSWORD_TEXT);
}
else
{
elm_entry_input_hint_set(obj, ((sd->input_hints | ELM_INPUT_HINT_AUTO_COMPLETE) & ~ELM_INPUT_HINT_SENSITIVE_DATA));
_entry_selection_callbacks_register(obj);
+ elm_interface_atspi_accessible_role_set(ELM_ATSPI_ROLE_ENTRY);
}
eo_do(obj, elm_obj_widget_theme_apply());
free(txt);
+ if (_pd->password)
+ ret = ENTRY_PASSWORD_MASK_CHARACTER;
+
return ret;
}
evas_textblock_cursor_free(cur);
evas_textblock_cursor_free(cur2);
+ if (ret && _pd->password)
+ {
+ int i = 0;
+ while (ret[i] != '\0')
+ ret[i++] = ENTRY_PASSWORD_MASK_CHARACTER;
+ }
+
return ret;
fail:
evas_textblock_cursor_free(cur);
evas_textblock_cursor_free(cur2);
+ if (ret && _pd->password)
+ {
+ int i = 0;
+ while (ret[i] != '\0')
+ ret[i++] = ENTRY_PASSWORD_MASK_CHARACTER;
+ }
+
return ret;
fail:
return ret;
}
+EOLIAN static char*
+_elm_entry_elm_interface_atspi_accessible_name_get(Eo *obj EINA_UNUSED, Elm_Entry_Data *sd)
+{
+ const char *ret = edje_object_part_text_get(sd->entry_edje, "elm.guide");
+ return ret ? strdup(ret) : NULL;
+}
+
#include "elm_entry.eo.c"
Elm_Interface_Scrollable.policy.set;
Elm_Interface_Scrollable.bounce_allow.set;
Elm_Interface_Atspi_Accessible.state_set.get;
+ Elm_Interface_Atspi_Accessible.name.get;
Elm_Interface_Atspi_Text.text.get;
Elm_Interface_Atspi_Text.string.get;
Elm_Interface_Atspi_Text.attribute.get;