From 4a4842118d2303a8d851d1d8b85fe182d3fe492a Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Mon, 6 May 2019 16:03:37 +0200 Subject: Accessibility: Make sure StaticText is marked read-only MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Test more of the text properties. This is still very incomplete, but a small step forward. Also make sure that editable text reports the editable state. Fixes: QTBUG-75002 Change-Id: I9e43c980d8fa91671acb4e40e5d9162854884ee7 Reviewed-by: Jan Arve Sæther --- src/quick/accessible/qaccessiblequickitem.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/quick/accessible/qaccessiblequickitem.cpp') diff --git a/src/quick/accessible/qaccessiblequickitem.cpp b/src/quick/accessible/qaccessiblequickitem.cpp index 98e7663c96..b87203c3ef 100644 --- a/src/quick/accessible/qaccessiblequickitem.cpp +++ b/src/quick/accessible/qaccessiblequickitem.cpp @@ -382,6 +382,22 @@ QString QAccessibleQuickItem::text(QAccessible::Text textType) const return QString(); } +void QAccessibleQuickItem::setText(QAccessible::Text textType, const QString &text) +{ + if (role() != QAccessible::EditableText) + return; + if (textType != QAccessible::Value) + return; + + if (QTextDocument *doc = textDocument()) { + doc->setPlainText(text); + return; + } + auto textPropertyName = "text"; + if (object()->metaObject()->indexOfProperty(textPropertyName) >= 0) + object()->setProperty(textPropertyName, text); +} + void *QAccessibleQuickItem::interface_cast(QAccessible::InterfaceType t) { QAccessible::Role r = role(); -- cgit v1.2.3