#include "third_party/blink/renderer/core/page/page_animator.h"
#include "base/auto_reset.h"
#include "base/time/time.h"
#include "cc/animation/animation_host.h"
#include "third_party/blink/renderer/core/animation/document_animations.h"
#include "third_party/blink/renderer/core/animation/document_timeline.h"
#include "third_party/blink/renderer/core/css/css_value.h"
#include "third_party/blink/renderer/core/dom/document_lifecycle.h"
#include "third_party/blink/renderer/core/dom/events/event.h"
#include "third_party/blink/renderer/core/dom/scripted_animation_controller.h"
#include "third_party/blink/renderer/core/event_type_names.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/frame/local_frame.h"
#include "third_party/blink/renderer/core/frame/local_frame_view.h"
#include "third_party/blink/renderer/core/loader/document_loader.h"
#include "third_party/blink/renderer/core/page/chrome_client.h"
#include "third_party/blink/renderer/core/page/page.h"
#include "third_party/blink/renderer/core/page/scrolling/sync_scroll_attempt_heuristic.h"
#include "third_party/blink/renderer/core/page/validation_message_client.h"
#include "third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h"
#include "third_party/blink/renderer/core/svg/svg_document_extensions.h"
#include "third_party/blink/renderer/core/timing/time_clamper.h"
#include "third_party/blink/renderer/core/view_transition/page_reveal_event.h"
#include "third_party/blink/renderer/core/view_transition/view_transition.h"
#include "third_party/blink/renderer/core/view_transition/view_transition_supplement.h"
#include "third_party/blink/renderer/core/view_transition/view_transition_utils.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "third_party/blink/renderer/platform/instrumentation/tracing/trace_event.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
#include "third_party/blink/renderer/platform/wtf/functional.h"
namespace blink {
namespace {
DocumentsVector GetAllDocuments(Frame* main_frame) { … }
}
PageAnimator::PageAnimator(Page& page)
: … { … }
void PageAnimator::Trace(Visitor* visitor) const { … }
void PageAnimator::ServiceScriptedAnimations(
base::TimeTicks monotonic_animation_start_time) { … }
void PageAnimator::ServiceScriptedAnimations(
base::TimeTicks monotonic_time_now,
const ControllersVector& controllers) { … }
void PageAnimator::PostAnimate() { … }
void PageAnimator::SetHasCanvasInvalidation() { … }
void PageAnimator::ReportFrameAnimations(cc::AnimationHost* animation_host) { … }
void PageAnimator::SetSuppressFrameRequestsWorkaroundFor704763Only(
bool suppress_frame_requests) { … }
void PageAnimator::SetHasInlineStyleMutation() { … }
void PageAnimator::SetHasSmilAnimation() { … }
void PageAnimator::SetCurrentFrameHadRaf() { … }
void PageAnimator::SetNextFrameHasPendingRaf() { … }
void PageAnimator::SetHasViewTransition(bool has_view_transition) { … }
DISABLE_CFI_PERF
void PageAnimator::ScheduleVisualUpdate(LocalFrame* frame) { … }
void PageAnimator::UpdateAllLifecyclePhases(LocalFrame& root_frame,
DocumentUpdateReason reason) { … }
void PageAnimator::UpdateLifecycleToPrePaintClean(LocalFrame& root_frame,
DocumentUpdateReason reason) { … }
void PageAnimator::UpdateLifecycleToLayoutClean(LocalFrame& root_frame,
DocumentUpdateReason reason) { … }
HeapVector<Member<Animation>> PageAnimator::GetAnimations(
const TreeScope& tree_scope) { … }
}