diff options
author | Andrew den Exter <andrew.den-exter@nokia.com> | 2011-04-19 15:11:36 +1000 |
---|---|---|
committer | Andrew den Exter <andrew.den-exter@nokia.com> | 2011-04-21 15:22:57 +1000 |
commit | 60198a071dd76e57ab799215f0fbddc8d550ba30 (patch) | |
tree | f5801fea0958e2fb572e3a7de62ff6fe6e735c46 /tests/auto/declarative/qdeclarativetextinput | |
parent | 2f173e4945dd8414636c1061acfaf9c2d8b718d8 (diff) | |
download | qt4-tools-60198a071dd76e57ab799215f0fbddc8d550ba30.tar.gz |
Fix TextInput cursor position unchanged when selection length is 0.
Move the cursor position to the start position when both the new and
old selections are empty as would happen if either was non-empty.
Change-Id: I493e52c551b47e009fd13b3e95856ff012ee5d95
Task-number: QTBUG-18768
Reviewed-by: Martin Jones
Diffstat (limited to 'tests/auto/declarative/qdeclarativetextinput')
-rw-r--r-- | tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp index 79d95d3e7a..baaf862918 100644 --- a/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp +++ b/tests/auto/declarative/qdeclarativetextinput/tst_qdeclarativetextinput.cpp @@ -375,6 +375,13 @@ void tst_qdeclarativetextinput::selection() QCOMPARE(textinputObject->selectionEnd(), i); QVERIFY(textinputObject->selectedText().isNull()); } + //Test cursor follows selection + for(int i=0; i<= testStr.size(); i++) { + textinputObject->select(i,i); + QCOMPARE(textinputObject->cursorPosition(), i); + QCOMPARE(textinputObject->selectionStart(), i); + QCOMPARE(textinputObject->selectionEnd(), i); + } textinputObject->setCursorPosition(0); QVERIFY(textinputObject->cursorPosition() == 0); @@ -399,10 +406,12 @@ void tst_qdeclarativetextinput::selection() for(int i=0; i<= testStr.size(); i++) { textinputObject->select(0,i); QCOMPARE(testStr.mid(0,i), textinputObject->selectedText()); + QCOMPARE(textinputObject->cursorPosition(), i); } for(int i=0; i<= testStr.size(); i++) { textinputObject->select(i,testStr.size()); QCOMPARE(testStr.mid(i,testStr.size()-i), textinputObject->selectedText()); + QCOMPARE(textinputObject->cursorPosition(), testStr.size()); } textinputObject->setCursorPosition(0); |