summaryrefslogtreecommitdiffstats
path: root/src/declarative/fx/qfxflickable.cpp
diff options
context:
space:
mode:
authorWarwick Allison <warwick.allison@nokia.com>2009-10-27 06:30:08 (GMT)
committerWarwick Allison <warwick.allison@nokia.com>2009-10-27 06:30:08 (GMT)
commitd72970e54390f00be28efaac148b55f027a1eb69 (patch)
treeefeb095eebca0c2cf29391d08f3bc58d5baa1f68 /src/declarative/fx/qfxflickable.cpp
parentfc4dd3eab91fc1959e216a754620a96cf05932d7 (diff)
parentf2c0f63c2db21e3a0dd2fb78312084a835840be8 (diff)
downloadQt-d72970e54390f00be28efaac148b55f027a1eb69.zip
Qt-d72970e54390f00be28efaac148b55f027a1eb69.tar.gz
Qt-d72970e54390f00be28efaac148b55f027a1eb69.tar.bz2
Merge branch 'kinetic-declarativeui' of git@scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
Diffstat (limited to 'src/declarative/fx/qfxflickable.cpp')
-rw-r--r--src/declarative/fx/qfxflickable.cpp27
1 files changed, 21 insertions, 6 deletions
diff --git a/src/declarative/fx/qfxflickable.cpp b/src/declarative/fx/qfxflickable.cpp
index a83ee66..cbfe9f6 100644
--- a/src/declarative/fx/qfxflickable.cpp
+++ b/src/declarative/fx/qfxflickable.cpp
@@ -618,11 +618,18 @@ void QFxFlickablePrivate::handleMouseMoveEvent(QGraphicsSceneMouseEvent *event)
newY = minY + (newY - minY) / 2;
if (newY < maxY && maxY - minY < 0)
newY = maxY + (newY - maxY) / 2;
- if (q->overShoot() || (newY <= minY && newY >= maxY)) {
+ if (!q->overShoot() && (newY > minY || newY < maxY)) {
+ if (newY > minY)
+ newY = minY;
+ else if (newY < maxY)
+ newY = maxY;
+ else
+ rejectY = true;
+ }
+ if (!rejectY) {
_moveY.setValue(newY);
moved = true;
- } else if (!q->overShoot())
- rejectY = true;
+ }
if (qAbs(dy) > DragThreshold)
stealMouse = true;
}
@@ -638,11 +645,19 @@ void QFxFlickablePrivate::handleMouseMoveEvent(QGraphicsSceneMouseEvent *event)
newX = minX + (newX - minX) / 2;
if (newX < maxX && maxX - minX < 0)
newX = maxX + (newX - maxX) / 2;
- if (q->overShoot() || (newX <= minX && newX >= maxX)) {
+ if (!q->overShoot() && (newX > minX || newX < maxX)) {
+ if (newX > minX)
+ newX = minX;
+ else if (newX < maxX)
+ newX = maxX;
+ else
+ rejectX = true;
+ }
+ if (!rejectX) {
_moveX.setValue(newX);
moved = true;
- } else if (!q->overShoot())
- rejectX = true;
+ }
+
if (qAbs(dx) > DragThreshold)
stealMouse = true;
}