summaryrefslogtreecommitdiffstats
path: root/src/declarative/util/qdeclarativesmoothedanimation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/declarative/util/qdeclarativesmoothedanimation.cpp')
-rw-r--r--src/declarative/util/qdeclarativesmoothedanimation.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/declarative/util/qdeclarativesmoothedanimation.cpp b/src/declarative/util/qdeclarativesmoothedanimation.cpp
index b2f02e6..c3fa7cf 100644
--- a/src/declarative/util/qdeclarativesmoothedanimation.cpp
+++ b/src/declarative/util/qdeclarativesmoothedanimation.cpp
@@ -214,22 +214,23 @@ void QSmoothedAnimation::init()
}
bool hasReversed = trackVelocity != 0. &&
- ((trackVelocity > 0) == ((initialValue - to) > 0));
+ ((!invert) == ((initialValue - to) > 0));
if (hasReversed) {
switch (reversingMode) {
default:
case QDeclarativeSmoothedAnimation::Eased:
+ initialVelocity = -trackVelocity;
break;
case QDeclarativeSmoothedAnimation::Sync:
QDeclarativePropertyPrivate::write(target, to,
QDeclarativePropertyPrivate::BypassInterceptor
| QDeclarativePropertyPrivate::DontRemoveBinding);
+ trackVelocity = 0;
stop();
return;
case QDeclarativeSmoothedAnimation::Immediate:
initialVelocity = 0;
- delayedStop();
break;
}
}