#include "third_party/blink/renderer/core/scroll/scroll_animator.h"
#include <memory>
#include "base/functional/callback_helpers.h"
#include "base/memory/scoped_refptr.h"
#include "build/build_config.h"
#include "cc/animation/animation_id_provider.h"
#include "cc/animation/scroll_offset_animation_curve_factory.h"
#include "cc/layers/picture_layer.h"
#include "third_party/blink/public/platform/platform.h"
#include "third_party/blink/renderer/core/scroll/scrollable_area.h"
#include "third_party/blink/renderer/platform/instrumentation/tracing/trace_event.h"
#if defined(_WINDOWS_)
#error Windows.h was included unexpectedly.
#endif
namespace blink {
ScrollAnimatorBase* ScrollAnimatorBase::Create(
ScrollableArea* scrollable_area) { … }
ScrollAnimator::ScrollAnimator(ScrollableArea* scrollable_area,
const base::TickClock* tick_clock)
: … { … }
ScrollAnimator::~ScrollAnimator() { … }
ScrollOffset ScrollAnimator::DesiredTargetOffset() const { … }
bool ScrollAnimator::HasRunningAnimation() const { … }
ScrollOffset ScrollAnimator::ComputeDeltaToConsume(
const ScrollOffset& delta) const { … }
void ScrollAnimator::ResetAnimationState() { … }
ScrollResult ScrollAnimator::UserScroll(
ui::ScrollGranularity granularity,
const ScrollOffset& delta,
ScrollableArea::ScrollCallback on_finish) { … }
bool ScrollAnimator::WillAnimateToOffset(const ScrollOffset& target_offset) { … }
void ScrollAnimator::AdjustAnimation(const gfx::Vector2d& adjustment) { … }
void ScrollAnimator::ScrollToOffsetWithoutAnimation(
const ScrollOffset& offset) { … }
void ScrollAnimator::TickAnimation(base::TimeTicks monotonic_time) { … }
bool ScrollAnimator::SendAnimationToCompositor() { … }
void ScrollAnimator::CreateAnimationCurve() { … }
void ScrollAnimator::UpdateCompositorAnimations() { … }
void ScrollAnimator::NotifyCompositorAnimationAborted(int group_id) { … }
void ScrollAnimator::NotifyCompositorAnimationFinished(int group_id) { … }
void ScrollAnimator::CancelAnimation() { … }
void ScrollAnimator::TakeOverCompositorAnimation() { … }
bool ScrollAnimator::RegisterAndScheduleAnimation() { … }
void ScrollAnimator::Trace(Visitor* visitor) const { … }
}