#include "third_party/blink/renderer/core/input/scroll_manager.h"
#include <utility>
#include "third_party/blink/renderer/core/dom/dom_node_ids.h"
#include "third_party/blink/renderer/core/dom/node_computed_style.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/frame/local_frame_view.h"
#include "third_party/blink/renderer/core/frame/root_frame_viewport.h"
#include "third_party/blink/renderer/core/frame/visual_viewport.h"
#include "third_party/blink/renderer/core/html/html_frame_owner_element.h"
#include "third_party/blink/renderer/core/input/event_handler.h"
#include "third_party/blink/renderer/core/input/keyboard_event_manager.h"
#include "third_party/blink/renderer/core/layout/layout_block.h"
#include "third_party/blink/renderer/core/layout/layout_embedded_content.h"
#include "third_party/blink/renderer/core/layout/layout_view.h"
#include "third_party/blink/renderer/core/page/autoscroll_controller.h"
#include "third_party/blink/renderer/core/page/page.h"
#include "third_party/blink/renderer/core/paint/paint_layer.h"
#include "third_party/blink/renderer/core/paint/paint_layer_scrollable_area.h"
#include "ui/gfx/geometry/point_conversions.h"
namespace blink {
ScrollManager::ScrollManager(LocalFrame& frame) : … { … }
void ScrollManager::Clear() { … }
void ScrollManager::Trace(Visitor* visitor) const { … }
void ScrollManager::StopAutoscroll() { … }
void ScrollManager::StopMiddleClickAutoscroll() { … }
bool ScrollManager::MiddleClickAutoscrollInProgress() const { … }
AutoscrollController* ScrollManager::GetAutoscrollController() const { … }
bool ScrollManager::CanPropagate(const LayoutBox* layout_box,
ScrollPropagationDirection direction) { … }
void ScrollManager::RecomputeScrollChain(const Node& start_node,
Deque<DOMNodeId>& scroll_chain,
bool is_autoscroll) { … }
bool ScrollManager::CanScroll(const Node& current_node, bool for_autoscroll) { … }
bool ScrollManager::LogicalScroll(mojom::blink::ScrollDirection direction,
ui::ScrollGranularity granularity,
Node* start_node,
Node* mouse_press_node,
bool scrolling_via_key) { … }
bool ScrollManager::BubblingScroll(mojom::blink::ScrollDirection direction,
ui::ScrollGranularity granularity,
Node* starting_node,
Node* mouse_press_node,
bool scrolling_via_key) { … }
bool ScrollManager::InResizeMode() const { … }
void ScrollManager::Resize(const WebMouseEvent& evt) { … }
void ScrollManager::ClearResizeScrollableArea(bool should_not_be_null) { … }
void ScrollManager::SetResizeScrollableArea(PaintLayer* layer, gfx::Point p) { … }
}