summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp b/tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp
index 0cc812cbca..b81e4df123 100644
--- a/tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp
+++ b/tests/auto/widgets/widgets/qtextedit/tst_qtextedit.cpp
@@ -191,6 +191,7 @@ private slots:
void inputMethodQuery();
void inputMethodQueryImHints_data();
void inputMethodQueryImHints();
+ void inputMethodCursorRect();
void highlightLongLine();
@@ -2473,6 +2474,18 @@ void tst_QTextEdit::inputMethodQueryImHints()
QCOMPARE(static_cast<Qt::InputMethodHints>(value.toInt()), hints);
}
+// QTBUG-51923: Verify that the cursor rectangle returned by the input
+// method query correctly reflects the viewport offset.
+void tst_QTextEdit::inputMethodCursorRect()
+{
+ ed->setPlainText("Line1\nLine2Line3\nLine3");
+ ed->moveCursor(QTextCursor::End);
+ const QRectF cursorRect = ed->cursorRect();
+ const QVariant cursorRectV = ed->inputMethodQuery(Qt::ImCursorRectangle);
+ QCOMPARE(cursorRectV.type(), QVariant::RectF);
+ QCOMPARE(cursorRectV.toRect(), cursorRect.toRect());
+}
+
void tst_QTextEdit::highlightLongLine()
{
QTextEdit edit;