diff options
author | Kurt Korbatits <kurt.korbatits@nokia.com> | 2010-04-27 02:31:52 (GMT) |
---|---|---|
committer | Kurt Korbatits <kurt.korbatits@nokia.com> | 2010-04-27 02:31:52 (GMT) |
commit | c4c6d2ac94e84c38b8ec6fc0710ff91fc04451fe (patch) | |
tree | 2725edbde3512d6a8630eacbd4261574df606040 /src/gui/widgets/qlineedit.cpp | |
parent | d1b922bf2e80e04e33d293aeba2d74df060656b7 (diff) | |
parent | e4f9e0410df863feddd43e3c813d30080eb2af0b (diff) | |
download | Qt-c4c6d2ac94e84c38b8ec6fc0710ff91fc04451fe.zip Qt-c4c6d2ac94e84c38b8ec6fc0710ff91fc04451fe.tar.gz Qt-c4c6d2ac94e84c38b8ec6fc0710ff91fc04451fe.tar.bz2 |
Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt-multimedia-staging into 4.6
Diffstat (limited to 'src/gui/widgets/qlineedit.cpp')
-rw-r--r-- | src/gui/widgets/qlineedit.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/gui/widgets/qlineedit.cpp b/src/gui/widgets/qlineedit.cpp index 2d2df92..f041a36 100644 --- a/src/gui/widgets/qlineedit.cpp +++ b/src/gui/widgets/qlineedit.cpp @@ -738,8 +738,14 @@ bool QLineEdit::validateAndSet(const QString &newText, int newPos, setText(oldText); return false; } - setCursorPosition(newPos); - setSelection(qMin(newMarkAnchor, newMarkDrag), qAbs(newMarkAnchor - newMarkDrag)); + int selstart = qMin(newMarkAnchor, newMarkDrag); + int sellength = qAbs(newMarkAnchor - newMarkDrag); + if (selstart == newPos) { + selstart = qMax(newMarkAnchor, newMarkDrag); + sellength = -sellength; + } + //setSelection also set the position + setSelection(selstart, sellength); return true; } #endif //QT3_SUPPORT |