Index: Source/core/page/PageAnimator.cpp |
diff --git a/Source/core/page/PageAnimator.cpp b/Source/core/page/PageAnimator.cpp |
index 0412bd9adc3d5e2601c605b812c633d12494a35e..4e722bbbca3f5dd5f36b740ae355fe427d461e3a 100644 |
--- a/Source/core/page/PageAnimator.cpp |
+++ b/Source/core/page/PageAnimator.cpp |
@@ -4,7 +4,6 @@ |
#include "config.h" |
#include "core/page/PageAnimator.h" |
- |
#include "core/animation/DocumentAnimations.h" |
#include "core/frame/FrameView.h" |
#include "core/frame/LocalFrame.h" |
@@ -12,6 +11,7 @@ |
#include "core/page/ChromeClient.h" |
#include "core/page/Page.h" |
#include "core/svg/SVGDocumentExtensions.h" |
+#include "wtf/Vector.h" |
namespace blink { |
@@ -28,6 +28,11 @@ void PageAnimator::serviceScriptedAnimations(double monotonicAnimationStartTime) |
m_animationFramePending = false; |
TemporaryChange<bool> servicing(m_servicingAnimations, true); |
+ // Sending monotonicAnimationStartTime over to worker global scopes. |
+ for (unsigned i = 0; i < m_page->m_ProxyMap->workerVector.size(); i++) { |
+ m_page->m_ProxyMap->workerVector.at(i)->processRAF(monotonicAnimationStartTime); |
+ } |
+ m_page->m_ProxyMap->checkForReportStartTime(); |
for (RefPtr<Frame> frame = m_page->mainFrame(); frame; frame = frame->tree().traverseNext()) { |
if (frame->isLocalFrame()) { |
RefPtr<LocalFrame> localFrame = toLocalFrame(frame.get()); |