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..47e2121b0c15ae620be3323ce68a22ef999eccd7 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( |
@@ -41,19 +42,19 @@ public: |
void sendTouchCancelPointerEvent(PassRefPtrWillBeRawPtr<EventTarget>, |
const PlatformTouchPoint&); |
- // Sends node transition events (pointer|mouse)(out|leave|over|enter) to the corresponding targets |
- void sendNodeTransitionEvents(PassRefPtrWillBeRawPtr<Node> exitedNode, |
+ // Sends node transition events mouseout/leave/over/enter to the |
+ // corresponding targets. This function does send pointerout/leave/over/enter |
+ // only when the transition is beyond the document boundary which is specified |
mustaq
2016/03/23 18:49:07
The last line is not clear to me, should perhaps s
Navid Zolghadr
2016/03/23 19:47:48
I changed the wording of the last sentence. Does i
mustaq
2016/03/23 20:02:33
Yes, this is clear now.
|
+ // by isFrameBoundaryTransition. |
+ void sendMouseAndPossiblyPointerNodeTransitionEvents( |
+ PassRefPtrWillBeRawPtr<Node> exitedNode, |
PassRefPtrWillBeRawPtr<Node> enteredNode, |
const PlatformMouseEvent&, |
- PassRefPtrWillBeRawPtr<AbstractView>); |
+ PassRefPtrWillBeRawPtr<AbstractView>, bool isFrameBoundaryTransition); |
// 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 +87,28 @@ 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); |
+ |
+ // Processes the capture state of a pointer, updates node under |
+ // pointer, and sends corresponding transition events for pointer and mouse |
+ // if necessary. |
mustaq
2016/03/23 18:49:07
Comment on the |setPointerPosition| param.
Navid Zolghadr
2016/03/23 19:47:48
Done.
|
+ void processCaptureAndPositionOfPointerEvent( |
+ const PassRefPtrWillBeRawPtr<PointerEvent>, |
+ const PassRefPtrWillBeRawPtr<EventTarget> hitTestTarget, |
+ const PassRefPtrWillBeRawPtr<EventTarget> lastNodeUnderMouse = nullptr, |
+ const PlatformMouseEvent& = PlatformMouseEvent(), |
+ bool sendMouseEvent = false, |
+ bool setPointerPosition = true); |
+ |
void removeTargetFromPointerCapturingMapping( |
PointerCapturingMap&, const EventTarget*); |
PassRefPtrWillBeRawPtr<EventTarget> getEffectiveTargetForPointerEvent( |