#include "third_party/blink/renderer/core/layout/anchor_position_scroll_data.h"
#include "third_party/blink/renderer/core/dom/document.h"
#include "third_party/blink/renderer/core/frame/local_frame_view.h"
#include "third_party/blink/renderer/core/layout/anchor_position_visibility_observer.h"
#include "third_party/blink/renderer/core/layout/layout_view.h"
#include "third_party/blink/renderer/core/layout/non_overflowing_scroll_range.h"
#include "third_party/blink/renderer/core/paint/paint_layer.h"
#include "third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h"
namespace blink {
namespace {
const LayoutObject* PositionAnchorObject(const LayoutBox& box) { … }
const HeapVector<NonOverflowingScrollRange>* GetNonOverflowingScrollRanges(
const LayoutObject* layout_object) { … }
std::pair<bool, bool> CheckHasDefaultAnchorReferences(
const LayoutObject* layout_object) { … }
}
AnchorPositionScrollData::AnchorPositionScrollData(Element* anchored_element)
: … { … }
AnchorPositionScrollData::~AnchorPositionScrollData() = default;
bool AnchorPositionScrollData::IsActive() const { … }
gfx::Vector2dF AnchorPositionScrollData::TotalOffset(
const LayoutObject& anchor_object) const { … }
AnchorPositionScrollData::AdjustmentData
AnchorPositionScrollData::ComputeAdjustmentContainersData(
const LayoutObject& anchor) const { … }
AnchorPositionScrollData::AdjustmentData
AnchorPositionScrollData::ComputeDefaultAnchorAdjustmentData() const { … }
AnchorPositionScrollData::SnapshotDiff
AnchorPositionScrollData::TakeAndCompareSnapshot(bool update) { … }
bool AnchorPositionScrollData::IsFallbackPositionValid(
const AdjustmentData& new_adjustment_data) const { … }
void AnchorPositionScrollData::UpdateSnapshot() { … }
bool AnchorPositionScrollData::ValidateSnapshot() { … }
bool AnchorPositionScrollData::ShouldScheduleNextService() { … }
AnchorPositionVisibilityObserver&
AnchorPositionScrollData::EnsureAnchorPositionVisibilityObserver() { … }
void AnchorPositionScrollData::InvalidateLayoutAndPaint() { … }
void AnchorPositionScrollData::InvalidatePaint() { … }
void AnchorPositionScrollData::Trace(Visitor* visitor) const { … }
}