| Index: Source/core/page/PageAnimator.cpp
|
| diff --git a/Source/core/page/PageAnimator.cpp b/Source/core/page/PageAnimator.cpp
|
| index 93b0e21b80b05b9b7dfee899b61685aae28cf4b0..7449bf907a4cf8cd4185014d81272012a2131c35 100644
|
| --- a/Source/core/page/PageAnimator.cpp
|
| +++ b/Source/core/page/PageAnimator.cpp
|
| @@ -39,8 +39,13 @@ void PageAnimator::serviceScriptedAnimations(double monotonicAnimationStartTime)
|
|
|
| WillBeHeapVector<RefPtrWillBeMember<Document>> documents;
|
| for (Frame* frame = m_page->mainFrame(); frame; frame = frame->tree().traverseNext()) {
|
| - if (frame->isLocalFrame())
|
| - documents.append(toLocalFrame(frame)->document());
|
| + if (!frame->isLocalFrame())
|
| + continue;
|
| + LocalFrame* localFrame = toLocalFrame(frame);
|
| + // FIXME: Keep the animation timing ticking while throttled.
|
| + if (localFrame->shouldThrottleRenderingPipeline())
|
| + continue;
|
| + documents.append(localFrame->document());
|
| }
|
|
|
| for (auto& document : documents) {
|
| @@ -91,7 +96,7 @@ void PageAnimator::updateLayoutAndStyleForPainting(LocalFrame* rootFrame)
|
|
|
| // setFrameRect may have the side-effect of causing existing page layout to
|
| // be invalidated, so layout needs to be called last.
|
| - view->updateAllLifecyclePhases();
|
| + view->updateAllLifecyclePhases(DocumentLifecycle::ThrottlingMode::Allow);
|
| }
|
|
|
| }
|
|
|