aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/quick/items/qquickanimatedsprite.cpp9
-rw-r--r--src/quick/items/qquickanimatedsprite_p.h9
-rw-r--r--tests/auto/quick/qquickanimatedsprite/qquickanimatedsprite.pro1
3 files changed, 11 insertions, 8 deletions
diff --git a/src/quick/items/qquickanimatedsprite.cpp b/src/quick/items/qquickanimatedsprite.cpp
index acb38863be..79a8d007c7 100644
--- a/src/quick/items/qquickanimatedsprite.cpp
+++ b/src/quick/items/qquickanimatedsprite.cpp
@@ -400,7 +400,8 @@ void QQuickAnimatedSprite::componentComplete()
void QQuickAnimatedSprite::start()
{
- if (m_running)
+ m_running = true;
+ if (!isComponentComplete())
return;
m_curLoop = 0;
m_timestamp.start();
@@ -409,16 +410,16 @@ void QQuickAnimatedSprite::start()
m_spriteEngine->updateSprites(0);
m_spriteEngine->start(0);
}
- m_running = true;
+ emit currentFrameChanged(0);
emit runningChanged(true);
update();
}
void QQuickAnimatedSprite::stop()
{
- if (!m_running)
- return;
m_running = false;
+ if (!isComponentComplete())
+ return;
m_pauseOffset = 0;
emit runningChanged(false);
}
diff --git a/src/quick/items/qquickanimatedsprite_p.h b/src/quick/items/qquickanimatedsprite_p.h
index 4d9c008c36..0e5ccc2244 100644
--- a/src/quick/items/qquickanimatedsprite_p.h
+++ b/src/quick/items/qquickanimatedsprite_p.h
@@ -250,7 +250,8 @@ public slots:
if (m_sprite->m_frameSync != arg) {
m_sprite->setFrameSync(arg);
emit frameSyncChanged(arg);
- restart();
+ if (m_running)
+ restart();
}
}
@@ -304,7 +305,8 @@ public slots:
if (m_sprite->m_frameRate != arg) {
m_sprite->setFrameRate(arg);
emit frameRateChanged(arg);
- restart();
+ if (m_running)
+ restart();
}
}
@@ -313,7 +315,8 @@ public slots:
if (m_sprite->m_frameDuration != arg) {
m_sprite->setFrameDuration(arg);
emit frameDurationChanged(arg);
- restart();
+ if (m_running)
+ restart();
}
}
diff --git a/tests/auto/quick/qquickanimatedsprite/qquickanimatedsprite.pro b/tests/auto/quick/qquickanimatedsprite/qquickanimatedsprite.pro
index 9176362ab6..04298673b6 100644
--- a/tests/auto/quick/qquickanimatedsprite/qquickanimatedsprite.pro
+++ b/tests/auto/quick/qquickanimatedsprite/qquickanimatedsprite.pro
@@ -11,4 +11,3 @@ TESTDATA = data/*
CONFIG += parallel_test
QT += core-private gui-private qml-private quick-private network testlib
-CONFIG += insignificant_test