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

Unified Diff: ui/events/event.h

Issue 2655303004: Add id properties to PointerEvent (Closed)
Patch Set: change id type to uint32_t Created 3 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 | « ui/events/blink/web_input_event_unittest.cc ('k') | ui/events/event.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/events/event.h
diff --git a/ui/events/event.h b/ui/events/event.h
index d07fc639222a4b78e672b850b5bf38d452603308..8671b643abc77ff9e40fee01c4cb0723ff7ed44f 100644
--- a/ui/events/event.h
+++ b/ui/events/event.h
@@ -408,10 +408,8 @@ class EVENTS_EXPORT LocatedEvent : public Event {
// PointerEvents API.
struct EVENTS_EXPORT PointerDetails {
public:
- PointerDetails() {}
- explicit PointerDetails(EventPointerType pointer_type)
- : pointer_type(pointer_type),
- force(std::numeric_limits<float>::quiet_NaN()) {}
+ PointerDetails();
+ explicit PointerDetails(EventPointerType pointer_type);
PointerDetails(EventPointerType pointer_type,
float radius_x,
float radius_y,
@@ -419,21 +417,10 @@ struct EVENTS_EXPORT PointerDetails {
float tilt_x,
float tilt_y,
float tangential_pressure = 0.0f,
- int twist = 0)
- : pointer_type(pointer_type),
- // If we aren't provided with a radius on one axis, use the
- // information from the other axis.
- radius_x(radius_x > 0 ? radius_x : radius_y),
- radius_y(radius_y > 0 ? radius_y : radius_x),
- force(force),
- tilt_x(tilt_x),
- tilt_y(tilt_y),
- tangential_pressure(tangential_pressure),
- twist(twist) {}
- PointerDetails(EventPointerType pointer_type, const gfx::Vector2d& offset)
- : pointer_type(pointer_type),
- force(std::numeric_limits<float>::quiet_NaN()),
- offset(offset) {}
+ int twist = 0,
+ uint32_t id = 0);
+ PointerDetails(EventPointerType pointer_type, const gfx::Vector2d& offset);
+ PointerDetails(const PointerDetails& other);
bool operator==(const PointerDetails& other) const {
return pointer_type == other.pointer_type && radius_x == other.radius_x &&
@@ -442,7 +429,7 @@ struct EVENTS_EXPORT PointerDetails {
(std::isnan(force) && std::isnan(other.force))) &&
tilt_x == other.tilt_x && tilt_y == other.tilt_y &&
tangential_pressure == other.tangential_pressure &&
- twist == other.twist && offset == other.offset;
+ twist == other.twist && id == other.id && offset == other.offset;
}
// The type of pointer device.
@@ -474,6 +461,9 @@ struct EVENTS_EXPORT PointerDetails {
// degrees in the range [0,359]. Always 0 if the device does not support it.
int twist = 0;
+ // An identifier that uniquely identifies a pointer during its lifetime.
+ uint32_t id = 0;
mustaq 2017/01/31 00:24:13 Where do we set the id from lower level events? Do
+
sadrul 2017/01/31 17:05:13 ui::TouchEvent has a touch_id(), and a unique_even
lanwei 2017/02/01 02:58:12 This id in PointerDetails makes more senses for st
sadrul 2017/02/01 20:59:39 Replacing TouchEvent::touch_id() (and I guess Poin
// Only used by mouse wheel events. The amount to scroll. This is in multiples
// of kWheelDelta.
// Note: offset_.x() > 0/offset_.y() > 0 means scroll left/up.
« no previous file with comments | « ui/events/blink/web_input_event_unittest.cc ('k') | ui/events/event.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698