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

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

Issue 1809603003: Separate mouse transition events from pointerevent (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add the missing test result Created 4 years, 9 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/PointerEventManager.h
diff --git a/third_party/WebKit/Source/core/input/PointerEventManager.h b/third_party/WebKit/Source/core/input/PointerEventManager.h
index 5b74b984e4a43ed8ff323c057a6b17beac280d19..cb96d1885d2a33439080deb3f55902d785836d99 100644
--- a/third_party/WebKit/Source/core/input/PointerEventManager.h
+++ b/third_party/WebKit/Source/core/input/PointerEventManager.h
@@ -29,7 +29,8 @@ public:
PassRefPtrWillBeRawPtr<Node>, const AtomicString& type,
int clickCount, const PlatformMouseEvent&,
PassRefPtrWillBeRawPtr<Node> relatedTarget,
- PassRefPtrWillBeRawPtr<AbstractView>);
+ PassRefPtrWillBeRawPtr<AbstractView>,
+ PassRefPtrWillBeRawPtr<Node> lastNodeUnderMouse);
// Returns whether the event is consumed or not
WebInputEventResult sendTouchPointerEvent(
@@ -45,15 +46,11 @@ public:
void sendNodeTransitionEvents(PassRefPtrWillBeRawPtr<Node> exitedNode,
PassRefPtrWillBeRawPtr<Node> enteredNode,
const PlatformMouseEvent&,
- PassRefPtrWillBeRawPtr<AbstractView>);
+ PassRefPtrWillBeRawPtr<AbstractView>, bool);
// Clear all the existing ids.
void clear();
- // May clear PREVENT MOUSE EVENT flag as per pointer event spec:
- // https://w3c.github.io/pointerevents/#compatibility-mapping-with-mouse-events
- void conditionallyEnableMouseEventForPointerTypeMouse(unsigned);
-
void elementRemoved(EventTarget*);
void setPointerCapture(int, EventTarget*);
void releasePointerCapture(int, EventTarget*);
@@ -86,12 +83,25 @@ private:
const PlatformMouseEvent& = PlatformMouseEvent(),
bool sendMouseEvent = false);
void setNodeUnderPointer(PassRefPtrWillBeRawPtr<PointerEvent>,
- PassRefPtrWillBeRawPtr<EventTarget>);
- void processPendingPointerCapture(
+ PassRefPtrWillBeRawPtr<EventTarget>, bool sendEvent = true);
+
+ // Returns whether the pointer capture is changed. In this case this
+ // function will take care of transition events and setNodeUnderPointer
+ // should not send transition events.
+ bool processPendingPointerCapture(
const PassRefPtrWillBeRawPtr<PointerEvent>,
const PassRefPtrWillBeRawPtr<EventTarget>,
const PlatformMouseEvent& = PlatformMouseEvent(),
bool sendMouseEvent = false);
+
+ void prepareForFiringPointerEvent(
+ const PassRefPtrWillBeRawPtr<PointerEvent>,
+ const PassRefPtrWillBeRawPtr<EventTarget> hitTestTarget,
+ const PassRefPtrWillBeRawPtr<EventTarget> lastNodeUnderMouse = nullptr,
+ const PlatformMouseEvent& = PlatformMouseEvent(),
+ bool sendMouseEvent = false,
+ bool isFrameBoundaryTransition = true);
+
void removeTargetFromPointerCapturingMapping(
PointerCapturingMap&, const EventTarget*);
PassRefPtrWillBeRawPtr<EventTarget> getEffectiveTargetForPointerEvent(

Powered by Google App Engine
This is Rietveld 408576698