diff options
author | Andre de la Rocha <andre.rocha@qt.io> | 2020-04-30 07:17:18 +0200 |
---|---|---|
committer | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2020-05-19 06:19:40 +0200 |
commit | f703881b8176dfcc85b8d1cb3b8449722bb0ebf8 (patch) | |
tree | af9ebe961dbceea76b9f1019428b42686d658382 /src/quick | |
parent | 87d948b34004ab7c44bd85d73dc0c6144db15853 (diff) |
Fix Narrator spelling password characters in Quick TextInput
Quick was not setting the "passwordEdit" accessible state for TextInput
controls set with a password-editing echo mode. Thus the platform
accessibility layer would not let the accessibility client (Microsoft
Narrator, in the reported case) know that the text being edited was a
password, making it spell the letters instead of something like "hidden".
Fixes: QTBUG-82433
Change-Id: Ic659f031f6bad2ae3d7e500333dc8e2f27797a08
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
(cherry picked from commit 788a3a183f8c49c1a88270c1456c3d47423df240)
Diffstat (limited to 'src/quick')
-rw-r--r-- | src/quick/accessible/qaccessiblequickitem.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/quick/accessible/qaccessiblequickitem.cpp b/src/quick/accessible/qaccessiblequickitem.cpp index b87203c3ef..5e1ae25c38 100644 --- a/src/quick/accessible/qaccessiblequickitem.cpp +++ b/src/quick/accessible/qaccessiblequickitem.cpp @@ -43,6 +43,7 @@ #include "QtQuick/private/qquickitem_p.h" #include "QtQuick/private/qquicktext_p.h" +#include "QtQuick/private/qquicktextinput_p.h" #include "QtQuick/private/qquickaccessibleattached_p.h" #include "QtQuick/qquicktextdocument.h" QT_BEGIN_NAMESPACE @@ -197,6 +198,9 @@ QAccessible::State QAccessibleQuickItem::state() const state.focusable = true; if (item()->hasActiveFocus()) state.focused = true; + if (role() == QAccessible::EditableText) + if (auto ti = qobject_cast<QQuickTextInput *>(item())) + state.passwordEdit = ti->echoMode() != QQuickTextInput::Normal; return state; } |