Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(732)

Unified Diff: third_party/WebKit/Source/core/input/EventHandler.h

Issue 2137113002: Create GestureManager class and move related logic (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebasing Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/input/EventHandler.h
diff --git a/third_party/WebKit/Source/core/input/EventHandler.h b/third_party/WebKit/Source/core/input/EventHandler.h
index 3f44d21a35070704b772816d16cae56856c44d84..39ab435d85a58b6149e4f565c82f1de63726738e 100644
--- a/third_party/WebKit/Source/core/input/EventHandler.h
+++ b/third_party/WebKit/Source/core/input/EventHandler.h
@@ -28,6 +28,7 @@
#include "core/CoreExport.h"
#include "core/events/TextEventInputType.h"
+#include "core/input/GestureManager.h"
#include "core/input/KeyboardEventManager.h"
#include "core/input/PointerEventManager.h"
#include "core/input/ScrollManager.h"
@@ -233,23 +234,28 @@ public:
// If not, use the current focus or last clicked node.
bool logicalScroll(ScrollDirection, ScrollGranularity, Node* startNode = nullptr);
+ // Only called by GestureManager until further refactoring.
mustaq 2016/07/11 18:01:35 I think you meant to comment on the whole block of
Navid Zolghadr 2016/07/11 18:24:32 I thought having all the following lines together
+ WebInputEventResult dispatchMouseEvent(const AtomicString& eventType, Node* target, int clickCount, const PlatformMouseEvent&);
+ WebInputEventResult handleMousePressEvent(const MouseEventWithHitTestResults&);
dtapuska 2016/07/11 17:53:15 This is kind of a weird design where the event han
Navid Zolghadr 2016/07/11 18:24:32 They should be inside MouseEventManager. That chan
+ WebInputEventResult handleMouseReleaseEvent(const MouseEventWithHitTestResults&);
+ WebInputEventResult handleMouseFocus(const MouseEventWithHitTestResults&, InputDeviceCapabilities* sourceCapabilities);
+ void setClickNode(Node*);
+ static ContainerNode* parentForClickEvent(const Node&);
+ bool handleDragDropIfPossible(const GestureEventWithHitTestResults&);
+ // Resets the state that indicates the next events could cause a drag. It is called when
+ // we realize the next events should not cause drag based on the drag heuristics.
+ void clearDragHeuristicState();
+
+
private:
static DragState& dragState();
DataTransfer* createDraggingDataTransfer() const;
WebInputEventResult handleMouseMoveOrLeaveEvent(const PlatformMouseEvent&, HitTestResult* hoveredNode = nullptr, bool onlyUpdateScrollbars = false, bool forceLeave = false);
- WebInputEventResult handleMousePressEvent(const MouseEventWithHitTestResults&);
- WebInputEventResult handleMouseFocus(const MouseEventWithHitTestResults&, InputDeviceCapabilities* sourceCapabilities);
WebInputEventResult handleMouseDraggedEvent(const MouseEventWithHitTestResults&);
- WebInputEventResult handleMouseReleaseEvent(const MouseEventWithHitTestResults&);
- HitTestRequest::HitTestRequestType getHitTypeForGestureType(PlatformEvent::EventType);
void applyTouchAdjustment(PlatformGestureEvent*, HitTestResult*);
- WebInputEventResult handleGestureTapDown(const GestureEventWithHitTestResults&);
- WebInputEventResult handleGestureTap(const GestureEventWithHitTestResults&);
- WebInputEventResult handleGestureLongPress(const GestureEventWithHitTestResults&);
- WebInputEventResult handleGestureLongTap(const GestureEventWithHitTestResults&);
void updateGestureTargetNodeForMouseEvent(const GestureEventWithHitTestResults&);
@@ -277,8 +283,6 @@ private:
MouseEventWithHitTestResults prepareMouseEvent(const HitTestRequest&, const PlatformMouseEvent&);
- WebInputEventResult dispatchMouseEvent(const AtomicString& eventType, Node* target, int clickCount, const PlatformMouseEvent&);
-
// Dispatches ME after corresponding PE provided the PE has not been canceled. The eventType arg
// must be a mouse event that can be gated though a preventDefaulted pointerdown (i.e., one of
// {mousedown, mousemove, mouseup}).
@@ -297,10 +301,6 @@ private:
// Clears drag target and related states. It is called when drag is done or canceled.
void clearDragState();
- // Resets the state that indicates the next events could cause a drag. It is called when
- // we realize the next events should not cause drag based on the drag heuristics.
- void clearDragHeuristicState();
-
WebInputEventResult dispatchDragSrcEvent(const AtomicString& eventType, const PlatformMouseEvent&);
bool dragHysteresisExceeded(const IntPoint&) const;
@@ -321,8 +321,6 @@ private:
bool capturesDragging() const { return m_capturesDragging; }
- WebInputEventResult handleGestureShowPress();
-
void setLastKnownMousePosition(const PlatformMouseEvent&);
bool shouldTopControlsConsumeScroll(FloatSize) const;
@@ -392,19 +390,13 @@ private:
PointerEventManager m_pointerEventManager;
ScrollManager m_scrollManager;
KeyboardEventManager m_keyboardEventManager;
+ GestureManager m_gestureManager;
double m_maxMouseMovedDuration;
- bool m_longTapShouldInvokeContextMenu;
-
Timer<EventHandler> m_activeIntervalTimer;
- double m_lastShowPressTimestamp;
Member<Element> m_lastDeferredTapElement;
- // Set on GestureTapDown if the |pointerdown| event corresponding to the
- // triggering |touchstart| event was canceled. This suppresses mouse event
- // firing for the current gesture sequence (i.e. until next GestureTapDown).
- bool m_suppressMouseEventsFromGestures;
};
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698