if (!animation)
return false;
animation->clearRenderer();
- return animation->isSuspended();
+ return animation->suspended();
}
void AnimationControllerPrivate::updateAnimationTimer(bool callSetChanged/* = false*/)
RenderObjectAnimationMap::const_iterator animationsEnd = m_compositeAnimations.end();
for (RenderObjectAnimationMap::const_iterator it = m_compositeAnimations.begin(); it != animationsEnd; ++it) {
CompositeAnimation* compAnim = it->second.get();
- if (!compAnim->isSuspended() && compAnim->hasAnimations()) {
+ if (!compAnim->suspended() && compAnim->hasAnimations()) {
double t = compAnim->timeToNextService();
if (t != -1 && (t < needsService || needsService == -1))
needsService = t;
return animation->isAnimatingProperty(property, true, isRunningNow);
}
-void AnimationControllerPrivate::suspendAnimations(Document* document)
+void AnimationControllerPrivate::suspendAnimations()
+{
+ suspendAnimationsForDocument(m_frame->document());
+
+ // Traverse subframes
+ for (Frame* child = m_frame->tree()->firstChild(); child; child = child->tree()->nextSibling())
+ child->animation()->suspendAnimations();
+}
+
+void AnimationControllerPrivate::resumeAnimations()
+{
+ resumeAnimationsForDocument(m_frame->document());
+
+ // Traverse subframes
+ for (Frame* child = m_frame->tree()->firstChild(); child; child = child->tree()->nextSibling())
+ child->animation()->resumeAnimations();
+}
+
+void AnimationControllerPrivate::suspendAnimationsForDocument(Document* document)
{
setBeginAnimationUpdateTime(cBeginAnimationUpdateTimeNotSet);
updateAnimationTimer();
}
-void AnimationControllerPrivate::resumeAnimations(Document* document)
+void AnimationControllerPrivate::resumeAnimationsForDocument(Document* document)
{
setBeginAnimationUpdateTime(cBeginAnimationUpdateTimeNotSet);
return m_data->isRunningAcceleratedAnimationOnRenderer(renderer, property, isRunningNow);
}
-void AnimationController::suspendAnimations(Document* document)
+void AnimationController::suspendAnimations()
+{
+ m_data->suspendAnimations();
+}
+
+void AnimationController::resumeAnimations()
+{
+ m_data->resumeAnimations();
+}
+
+void AnimationController::suspendAnimationsForDocument(Document* document)
{
- m_data->suspendAnimations(document);
+ m_data->suspendAnimationsForDocument(document);
}
-void AnimationController::resumeAnimations(Document* document)
+void AnimationController::resumeAnimationsForDocument(Document* document)
{
- m_data->resumeAnimations(document);
+ m_data->resumeAnimationsForDocument(document);
}
void AnimationController::beginAnimationUpdate()