Index: third_party/WebKit/Source/core/input/PointerEventManager.cpp |
diff --git a/third_party/WebKit/Source/core/input/PointerEventManager.cpp b/third_party/WebKit/Source/core/input/PointerEventManager.cpp |
index de73cdadcf841a1cb3d8b65287ccf0058570dd7e..3124e056dadff03a7e2682d5a7182ac01a872ec7 100644 |
--- a/third_party/WebKit/Source/core/input/PointerEventManager.cpp |
+++ b/third_party/WebKit/Source/core/input/PointerEventManager.cpp |
@@ -598,16 +598,16 @@ void PointerEventManager::processPendingPointerCapture( |
m_pointerEventFactory.createPointerCaptureEvent( |
pointerEvent, EventTypeNames::lostpointercapture)); |
} |
- // Note that If pendingPointerCaptureTarget is null dispatchPointerEvent |
- // automatically does nothing. |
- dispatchPointerEvent(pendingPointerCaptureTarget, |
- m_pointerEventFactory.createPointerCaptureEvent( |
- pointerEvent, EventTypeNames::gotpointercapture)); |
- if (pendingPointerCaptureTarget) |
+ if (pendingPointerCaptureTarget) { |
+ setNodeUnderPointer(pointerEvent, pendingPointerCaptureTarget); |
+ dispatchPointerEvent(pendingPointerCaptureTarget, |
+ m_pointerEventFactory.createPointerCaptureEvent( |
+ pointerEvent, EventTypeNames::gotpointercapture)); |
m_pointerCaptureTarget.set(pointerId, pendingPointerCaptureTarget); |
- else |
+ } else { |
m_pointerCaptureTarget.remove(pointerId); |
+ } |
} |
void PointerEventManager::removeTargetFromPointerCapturingMapping( |