summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/widgets/widgets/qwidgetlinecontrol_p.h2
-rw-r--r--tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp8
2 files changed, 9 insertions, 1 deletions
diff --git a/src/widgets/widgets/qwidgetlinecontrol_p.h b/src/widgets/widgets/qwidgetlinecontrol_p.h
index 8ebed25084..a8fffd23dc 100644
--- a/src/widgets/widgets/qwidgetlinecontrol_p.h
+++ b/src/widgets/widgets/qwidgetlinecontrol_p.h
@@ -217,7 +217,7 @@ public:
void cursorWordBackward(bool mark) { moveCursor(m_textLayout.previousCursorPosition(m_cursor, QTextLayout::SkipWords), mark); }
void home(bool mark) { moveCursor(0, mark); }
- void end(bool mark) { moveCursor(text().length(), mark); }
+ void end(bool mark) { moveCursor(m_text.length(), mark); }
int xToPos(int x, QTextLine::CursorPosition = QTextLine::CursorBetweenCharacters) const;
QRect rectForPos(int pos) const;
diff --git a/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp b/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp
index 0cfbc651ad..d37fb5c173 100644
--- a/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp
+++ b/tests/auto/widgets/widgets/qlineedit/tst_qlineedit.cpp
@@ -762,6 +762,14 @@ void tst_QLineEdit::keypress_inputMask_data()
}
{
QTestEventList keys;
+ // inserting at end
+ addKeySequenceStandardKey(keys, QKeySequence::MoveToEndOfLine);
+ keys.addKeyClick(Qt::Key_Left);
+ keys.addKeyClick(Qt::Key_0);
+ QTest::newRow("insert at end") << QString("9-9-9") << keys << QString("--0") << QString(" - -0");
+ }
+ {
+ QTestEventList keys;
// inserting '12.12' then two backspaces
addKeySequenceStandardKey(keys, QKeySequence::MoveToStartOfLine);
keys.addKeyClick(Qt::Key_1);