summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarko Kangas <marko.kangas@theqtcompany.com>2016-03-22 12:47:11 +0200
committerMarko Kangas <marko.kangas@theqtcompany.com>2016-03-23 09:46:24 +0000
commit1bbbb682b56df0a212dc5a7e249fa3b630111a10 (patch)
tree4c809cb84a817d5796985784101bd6b1cf982a90
parent4ccfb1eb926e8a6b26ea11e3e38df5b2dd3d0de4 (diff)
Initialize input method for read-only QTextBrowser
Set input method attribute to be aligned with read-only value in QTextBrowser initialization Task-number: QTBUG-52071 Change-Id: If0e64bf09e2a2d505ed66fcbfb8cd12ae39844d3 Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
-rw-r--r--src/widgets/widgets/qtextbrowser.cpp1
-rw-r--r--tests/auto/widgets/widgets/qtextbrowser/tst_qtextbrowser.cpp11
2 files changed, 12 insertions, 0 deletions
diff --git a/src/widgets/widgets/qtextbrowser.cpp b/src/widgets/widgets/qtextbrowser.cpp
index 2c073342b0..206667c651 100644
--- a/src/widgets/widgets/qtextbrowser.cpp
+++ b/src/widgets/widgets/qtextbrowser.cpp
@@ -653,6 +653,7 @@ void QTextBrowserPrivate::init()
#ifndef QT_NO_CURSOR
viewport->setCursor(oldCursor);
#endif
+ q->setAttribute(Qt::WA_InputMethodEnabled, !q->isReadOnly());
q->setUndoRedoEnabled(false);
viewport->setMouseTracking(true);
QObject::connect(q->document(), SIGNAL(contentsChanged()), q, SLOT(_q_documentModified()));
diff --git a/tests/auto/widgets/widgets/qtextbrowser/tst_qtextbrowser.cpp b/tests/auto/widgets/widgets/qtextbrowser/tst_qtextbrowser.cpp
index adc768f828..8c9e908228 100644
--- a/tests/auto/widgets/widgets/qtextbrowser/tst_qtextbrowser.cpp
+++ b/tests/auto/widgets/widgets/qtextbrowser/tst_qtextbrowser.cpp
@@ -92,6 +92,7 @@ private slots:
void clearHistory();
void sourceInsideLoadResource();
void textInteractionFlags_vs_readOnly();
+ void inputMethodAttribute_vs_readOnly();
void anchorsWithSelfBuiltHtml();
void relativeNonLocalUrls();
void adjacentAnchors();
@@ -455,6 +456,16 @@ void tst_QTextBrowser::textInteractionFlags_vs_readOnly()
QCOMPARE(browser->textInteractionFlags(), Qt::TextBrowserInteraction);
}
+void tst_QTextBrowser::inputMethodAttribute_vs_readOnly()
+{
+ QVERIFY(browser->isReadOnly());
+ QVERIFY(!browser->testAttribute(Qt::WA_InputMethodEnabled));
+ browser->setReadOnly(false);
+ QVERIFY(browser->testAttribute(Qt::WA_InputMethodEnabled));
+ browser->setReadOnly(true);
+ QVERIFY(!browser->testAttribute(Qt::WA_InputMethodEnabled));
+}
+
void tst_QTextBrowser::anchorsWithSelfBuiltHtml()
{
browser->setHtml("<p>Hello <a href=\"#anchor\">Link</a>"