Index: third_party/WebKit/Source/core/page/PageAnimator.cpp |
diff --git a/third_party/WebKit/Source/core/page/PageAnimator.cpp b/third_party/WebKit/Source/core/page/PageAnimator.cpp |
index 93b0e21b80b05b9b7dfee899b61685aae28cf4b0..afeb03978746949de8d9f6d0de01a2064cffe016 100644 |
--- a/third_party/WebKit/Source/core/page/PageAnimator.cpp |
+++ b/third_party/WebKit/Source/core/page/PageAnimator.cpp |
@@ -44,7 +44,10 @@ void PageAnimator::serviceScriptedAnimations(double monotonicAnimationStartTime) |
} |
for (auto& document : documents) { |
+ DocumentAnimations::updateAnimationTimingForAnimationFrame(*document, monotonicAnimationStartTime); |
if (document->view()) { |
+ if (document->view()->shouldThrottleRendering()) |
+ continue; |
document->view()->scrollableArea()->serviceScrollAnimations(monotonicAnimationStartTime); |
if (const FrameView::ScrollableAreaSet* animatingScrollableAreas = document->view()->animatingScrollableAreas()) { |
@@ -56,7 +59,7 @@ void PageAnimator::serviceScriptedAnimations(double monotonicAnimationStartTime) |
scrollableArea->serviceScrollAnimations(monotonicAnimationStartTime); |
} |
} |
- DocumentAnimations::updateAnimationTimingForAnimationFrame(*document, monotonicAnimationStartTime); |
+ // TODO(skyostil): These functions should not run for documents without views. |
SVGDocumentExtensions::serviceOnAnimationFrame(*document, monotonicAnimationStartTime); |
document->serviceScriptedAnimations(monotonicAnimationStartTime); |
} |