void AnimationBase::freezeAtTime(double t) { if (!m_compAnim) return; if (!m_startTime) { // If we haven't started yet, make it as if we started. m_animState = AnimationStateStartWaitResponse; onAnimationStartResponse(beginAnimationUpdateTime()); } ASSERT(m_startTime); // if m_startTime is zero, we haven't started yet, so we'll get a bad pause time. if (t <= m_animation->delay()) m_pauseTime = m_startTime; else m_pauseTime = m_startTime + t - m_animation->delay(); if (m_object && m_object->isComposited()) toRenderBoxModelObject(m_object)->suspendAnimations(m_pauseTime); }
void AnimationBase::freezeAtTime(double t) { if (!m_compAnim) return; if (!m_startTime) { // If we haven't started yet, make it as if we started. LOG(Animations, "%p AnimationState %s -> StartWaitResponse", this, nameForState(m_animState)); m_animState = AnimationStateStartWaitResponse; onAnimationStartResponse(monotonicallyIncreasingTime()); } ASSERT(m_startTime); // if m_startTime is zero, we haven't started yet, so we'll get a bad pause time. if (t <= m_animation->delay()) m_pauseTime = m_startTime; else m_pauseTime = m_startTime + t - m_animation->delay(); if (m_object && m_object->isComposited()) toRenderBoxModelObject(m_object)->suspendAnimations(m_pauseTime); }