summaryrefslogtreecommitdiffstats
path: root/src/runtime/q3dsslideplayer_p.h
diff options
context:
space:
mode:
authorChristian Strømme <christian.stromme@qt.io>2018-02-19 15:21:29 +0100
committerChristian Stromme <christian.stromme@qt.io>2018-02-19 15:18:37 +0000
commita75b41d845858b0b96783236c85ca289e9f06f00 (patch)
tree8ea32dcf8867deaa21b7291552eafca058851721 /src/runtime/q3dsslideplayer_p.h
parentd60811d68376fcf58e66739c24bfe8cb72bcb2a5 (diff)
Fix handling of StopAtEnd in the slide player
The player made a distinction between "stopped" and "paused", assuming that stop meant that the animations would be reset to the starting point. This differs from how runtime 1.0 handles stop and StopAtEnd. In addition to stop having different meaning, we would not properly reset the animatables values to their initial values, as the values from seeking and the rollback values could be update in the wrong order, so we now do a forced reset when stop is called, to avoid getting stale values from Qt3d. Task-number: QT3DS-1145 Change-Id: I3c1cca6648faf3ede4bbed46189fe6bade4dff65 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Diffstat (limited to 'src/runtime/q3dsslideplayer_p.h')
-rw-r--r--src/runtime/q3dsslideplayer_p.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/runtime/q3dsslideplayer_p.h b/src/runtime/q3dsslideplayer_p.h
index 3984d69..6d14ca8 100644
--- a/src/runtime/q3dsslideplayer_p.h
+++ b/src/runtime/q3dsslideplayer_p.h
@@ -130,7 +130,9 @@ private:
void onDurationChanged(float duration);
Q_INVOKABLE void onSlideFinished(void *slide);
- void handleCurrentSlideChanged(Q3DSSlide *slide, Q3DSSlide *previousSlide);
+ void handleCurrentSlideChanged(Q3DSSlide *slide,
+ Q3DSSlide *previousSlide,
+ bool forceUpdate = false);
// TODO: Move out to a "slide manager"?
void updateSlideVisibility(Q3DSSlide *slide, bool visible);