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

Unified Diff: sky/engine/core/events/PointerEvent.cpp

Issue 845313011: Add blink::WebPointerEvent (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 11 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
« no previous file with comments | « sky/engine/core/events/PointerEvent.h ('k') | sky/engine/public/platform/WebInputEvent.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sky/engine/core/events/PointerEvent.cpp
diff --git a/sky/engine/core/events/PointerEvent.cpp b/sky/engine/core/events/PointerEvent.cpp
index eb1c682aa5bd716f43b3128aa6c826da14268385..cbfc1c47a8f0f0b1bf5cc66d8c6f5d5005bd0ecf 100644
--- a/sky/engine/core/events/PointerEvent.cpp
+++ b/sky/engine/core/events/PointerEvent.cpp
@@ -7,6 +7,34 @@
namespace blink {
+static AtomicString stringForType(WebInputEvent::Type type)
+{
+ if (type == WebInputEvent::PointerDown)
+ return EventTypeNames::pointerdown;
+ if (type == WebInputEvent::PointerUp)
+ return EventTypeNames::pointerup;
+ if (type == WebInputEvent::PointerMove)
+ return EventTypeNames::pointermove;
+ if (type == WebInputEvent::PointerCancel)
+ return EventTypeNames::pointercancel;
+ ASSERT_NOT_REACHED();
+ return EventTypeNames::pointercancel;
+}
+
+static String stringForKind(WebPointerEvent::Kind kind)
+{
+ switch (kind) {
+ case WebPointerEvent::Touch:
+ return "touch";
+ case WebPointerEvent::Mouse:
+ return "mouse";
+ case WebPointerEvent::Stylus:
+ return "stylus";
+ }
+ ASSERT_NOT_REACHED();
+ return String();
+}
+
PointerEvent::~PointerEvent()
{
}
@@ -16,8 +44,36 @@ PointerEvent::PointerEvent()
{
}
+PointerEvent::PointerEvent(const WebPointerEvent& event)
+ : Event(stringForType(event.type), true, true)
+ , m_pointer(event.pointer)
+ , m_kind(stringForKind(event.kind))
+ , m_x(event.x)
+ , m_y(event.y)
+ , m_dx(event.dx)
+ , m_dy(event.dy)
+ , m_buttons(event.buttons)
+ , m_down(false)
+ , m_primary(false)
+ , m_obscured(false)
+ , m_pressure(event.pressure)
+ , m_pressureMin(event.pressureMin)
+ , m_pressureMax(event.pressureMax)
+ , m_distance(event.distance)
+ , m_distanceMin(event.distanceMin)
+ , m_distanceMax(event.distanceMax)
+ , m_radiusMajor(event.radiusMajor)
+ , m_radiusMinor(event.radiusMinor)
+ , m_radiusMin(event.radiusMin)
+ , m_radiusMax(event.radiusMax)
+ , m_orientation(event.orientation)
+ , m_tilt(event.tilt)
+{
+}
+
PointerEvent::PointerEvent(const AtomicString& type, const PointerEventInit& initializer)
- : m_pointer(initializer.pointer)
+ : Event(type, initializer)
+ , m_pointer(initializer.pointer)
, m_kind(initializer.kind)
, m_x(initializer.x)
, m_y(initializer.y)
« no previous file with comments | « sky/engine/core/events/PointerEvent.h ('k') | sky/engine/public/platform/WebInputEvent.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698