SMILTime SMILTimeContainer::elapsed() const { if (!m_beginTime) return 0; if (isPaused()) return m_accumulatedActiveTime; return currentTime() + m_accumulatedActiveTime - lastResumeTime(); }
void SMILTimeContainer::pause() { ASSERT(!isPaused()); m_pauseTime = currentTime(); if (m_beginTime) { m_accumulatedActiveTime += m_pauseTime - lastResumeTime(); cancelAnimationFrame(); } m_resumeTime = 0; }
void SMILTimeContainer::pause() { if (!handleAnimationPolicy(CancelOnceTimer)) return; ASSERT(!isPaused()); m_pauseTime = currentTime(); if (m_beginTime) { m_accumulatedActiveTime += m_pauseTime - lastResumeTime(); cancelAnimationFrame(); } m_resumeTime = 0; }