#include "third_party/blink/renderer/core/page/scrolling/snap_coordinator.h"
#include "third_party/blink/renderer/core/dom/dom_node_ids.h"
#include "third_party/blink/renderer/core/dom/element.h"
#include "third_party/blink/renderer/core/dom/node.h"
#include "third_party/blink/renderer/core/frame/local_frame_view.h"
#include "third_party/blink/renderer/core/frame/web_feature.h"
#include "third_party/blink/renderer/core/layout/geometry/box_strut.h"
#include "third_party/blink/renderer/core/layout/layout_block.h"
#include "third_party/blink/renderer/core/layout/layout_box.h"
#include "third_party/blink/renderer/core/layout/layout_view.h"
#include "third_party/blink/renderer/core/layout/physical_box_fragment.h"
#include "third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h"
#include "third_party/blink/renderer/platform/geometry/length_functions.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
namespace blink {
namespace {
constexpr float kProximityRatio = …;
cc::SnapAlignment AdjustForRtlWritingMode(cc::SnapAlignment align) { … }
cc::ScrollSnapType GetPhysicalSnapType(const LayoutBox& snap_container) { … }
}
bool SnapCoordinator::UpdateSnapContainerData(LayoutBox& snap_container) { … }
static cc::ScrollSnapAlign GetPhysicalAlignment(
const ComputedStyle& area_style,
const ComputedStyle& container_style,
const PhysicalRect& area_rect,
const PhysicalRect& container_rect) { … }
cc::SnapAreaData SnapCoordinator::CalculateSnapAreaData(
const LayoutBox& snap_area,
const LayoutBox& snap_container) { … }
}