#include "content/browser/renderer_host/input/mouse_wheel_phase_handler.h"
#include "base/functional/bind.h"
#include "base/trace_event/trace_event.h"
#include "components/input/render_widget_host_input_event_router.h"
#include "content/browser/renderer_host/render_widget_host_impl.h"
#include "content/browser/renderer_host/render_widget_host_view_base.h"
#include "ui/events/base_event_utils.h"
namespace content {
MouseWheelPhaseHandler::MouseWheelPhaseHandler(
RenderWidgetHostViewBase* const host_view)
: … { … }
void MouseWheelPhaseHandler::AddPhaseIfNeededAndScheduleEndEvent(
blink::WebMouseWheelEvent& mouse_wheel_event,
bool should_route_event) { … }
void MouseWheelPhaseHandler::DispatchPendingWheelEndEvent() { … }
void MouseWheelPhaseHandler::IgnorePendingWheelEndEvent() { … }
void MouseWheelPhaseHandler::ResetTouchpadScrollSequence() { … }
void MouseWheelPhaseHandler::SendWheelEndForTouchpadScrollingIfNeeded(
bool should_route_event) { … }
void MouseWheelPhaseHandler::TouchpadScrollingMayBegin() { … }
void MouseWheelPhaseHandler::SendSyntheticWheelEventWithPhaseEnded(
bool should_route_event) { … }
void MouseWheelPhaseHandler::ScheduleMouseWheelEndDispatching(
bool should_route_event,
const base::TimeDelta timeout) { … }
bool MouseWheelPhaseHandler::IsWithinSlopRegion(
const blink::WebMouseWheelEvent& wheel_event) const { … }
bool MouseWheelPhaseHandler::HasDifferentModifiers(
const blink::WebMouseWheelEvent& wheel_event) const { … }
bool MouseWheelPhaseHandler::ShouldBreakLatchingDueToDirectionChange(
const blink::WebMouseWheelEvent& wheel_event) const { … }
void MouseWheelPhaseHandler::GestureEventAck(
const blink::WebGestureEvent& event,
blink::mojom::InputEventResultState ack_result) { … }
}