summaryrefslogtreecommitdiffstats
path: root/src/gui/widgets/qlineedit.cpp
diff options
context:
space:
mode:
authorKurt Korbatits <kurt.korbatits@nokia.com>2010-04-27 02:31:52 (GMT)
committerKurt Korbatits <kurt.korbatits@nokia.com>2010-04-27 02:31:52 (GMT)
commitc4c6d2ac94e84c38b8ec6fc0710ff91fc04451fe (patch)
tree2725edbde3512d6a8630eacbd4261574df606040 /src/gui/widgets/qlineedit.cpp
parentd1b922bf2e80e04e33d293aeba2d74df060656b7 (diff)
parente4f9e0410df863feddd43e3c813d30080eb2af0b (diff)
downloadQt-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.cpp10
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