OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "core/events/PointerEvent.h" | 5 #include "core/events/PointerEvent.h" |
6 | 6 |
7 #include "core/dom/Element.h" | 7 #include "core/dom/Element.h" |
8 #include "core/events/EventDispatcher.h" | 8 #include "core/events/EventDispatcher.h" |
9 | 9 |
10 namespace blink { | 10 namespace blink { |
(...skipping 17 matching lines...) Expand all Loading... |
28 if (initializer.hasPressure()) | 28 if (initializer.hasPressure()) |
29 m_pressure = initializer.pressure(); | 29 m_pressure = initializer.pressure(); |
30 if (initializer.hasTiltX()) | 30 if (initializer.hasTiltX()) |
31 m_tiltX = initializer.tiltX(); | 31 m_tiltX = initializer.tiltX(); |
32 if (initializer.hasTiltY()) | 32 if (initializer.hasTiltY()) |
33 m_tiltY = initializer.tiltY(); | 33 m_tiltY = initializer.tiltY(); |
34 if (initializer.hasPointerType()) | 34 if (initializer.hasPointerType()) |
35 m_pointerType = initializer.pointerType(); | 35 m_pointerType = initializer.pointerType(); |
36 if (initializer.hasIsPrimary()) | 36 if (initializer.hasIsPrimary()) |
37 m_isPrimary = initializer.isPrimary(); | 37 m_isPrimary = initializer.isPrimary(); |
| 38 if (initializer.hasCoalescedEvents()) { |
| 39 for (auto coalescedEvent : initializer.coalescedEvents()) |
| 40 m_coalescedEvents.append(coalescedEvent); |
| 41 } |
38 } | 42 } |
39 | 43 |
40 bool PointerEvent::isMouseEvent() const { | 44 bool PointerEvent::isMouseEvent() const { |
41 return false; | 45 return false; |
42 } | 46 } |
43 | 47 |
44 bool PointerEvent::isPointerEvent() const { | 48 bool PointerEvent::isPointerEvent() const { |
45 return true; | 49 return true; |
46 } | 50 } |
47 | 51 |
48 EventDispatchMediator* PointerEvent::createMediator() { | 52 EventDispatchMediator* PointerEvent::createMediator() { |
49 return PointerEventDispatchMediator::create(this); | 53 return PointerEventDispatchMediator::create(this); |
50 } | 54 } |
51 | 55 |
| 56 HeapVector<Member<PointerEvent>> PointerEvent::getCoalescedEvents() const { |
| 57 return m_coalescedEvents; |
| 58 } |
| 59 |
52 DEFINE_TRACE(PointerEvent) { | 60 DEFINE_TRACE(PointerEvent) { |
| 61 visitor->trace(m_coalescedEvents); |
53 MouseEvent::trace(visitor); | 62 MouseEvent::trace(visitor); |
54 } | 63 } |
55 | 64 |
56 PointerEventDispatchMediator* PointerEventDispatchMediator::create( | 65 PointerEventDispatchMediator* PointerEventDispatchMediator::create( |
57 PointerEvent* pointerEvent) { | 66 PointerEvent* pointerEvent) { |
58 return new PointerEventDispatchMediator(pointerEvent); | 67 return new PointerEventDispatchMediator(pointerEvent); |
59 } | 68 } |
60 | 69 |
61 PointerEventDispatchMediator::PointerEventDispatchMediator( | 70 PointerEventDispatchMediator::PointerEventDispatchMediator( |
62 PointerEvent* pointerEvent) | 71 PointerEvent* pointerEvent) |
(...skipping 13 matching lines...) Expand all Loading... |
76 | 85 |
77 DCHECK(!event().target() || event().target() != event().relatedTarget()); | 86 DCHECK(!event().target() || event().target() != event().relatedTarget()); |
78 | 87 |
79 event().eventPath().adjustForRelatedTarget(dispatcher.node(), | 88 event().eventPath().adjustForRelatedTarget(dispatcher.node(), |
80 event().relatedTarget()); | 89 event().relatedTarget()); |
81 | 90 |
82 return dispatcher.dispatch(); | 91 return dispatcher.dispatch(); |
83 } | 92 } |
84 | 93 |
85 } // namespace blink | 94 } // namespace blink |
OLD | NEW |