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

Unified Diff: ui/events/event.cc

Issue 103173004: Target touches to the correct display. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years 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
Index: ui/events/event.cc
diff --git a/ui/events/event.cc b/ui/events/event.cc
index 246e39721f2f6a20ec8c75c339ea95721c1f3a6a..34c9c00425f3bd26791efe6cf76e5cecd07b9e27 100644
--- a/ui/events/event.cc
+++ b/ui/events/event.cc
@@ -5,6 +5,7 @@
#include "ui/events/event.h"
#if defined(USE_X11)
+#include <X11/extensions/XInput2.h>
#include <X11/Xlib.h>
#endif
@@ -436,7 +437,8 @@ TouchEvent::TouchEvent(const base::NativeEvent& native_event)
radius_x_(GetTouchRadiusX(native_event)),
radius_y_(GetTouchRadiusY(native_event)),
rotation_angle_(GetTouchAngle(native_event)),
- force_(GetTouchForce(native_event)) {
+ force_(GetTouchForce(native_event)),
+ source_device_id_(-1) {
latency()->AddLatencyNumberWithTimestamp(
INPUT_EVENT_LATENCY_ORIGINAL_COMPONENT,
0,
@@ -444,6 +446,13 @@ TouchEvent::TouchEvent(const base::NativeEvent& native_event)
base::TimeTicks::FromInternalValue(time_stamp().ToInternalValue()),
1,
true);
+
+#if defined(USE_X11)
+ XIEvent* event = static_cast<XIEvent*>(native_event->xcookie.data);
+ XIDeviceEvent* xiev = reinterpret_cast<XIDeviceEvent*>(event);
sadrul 2014/01/08 20:50:52 You don't need XIEvent. Just directly static_cast<
tdresser 2014/01/09 19:07:35 Done.
+ source_device_id_ = xiev->deviceid;
+#endif
+
latency()->AddLatencyNumber(INPUT_EVENT_LATENCY_UI_COMPONENT, 0, 0);
}
@@ -456,7 +465,8 @@ TouchEvent::TouchEvent(EventType type,
radius_x_(0.0f),
radius_y_(0.0f),
rotation_angle_(0.0f),
- force_(0.0f) {
+ force_(0.0f),
+ source_device_id_(-1) {
latency()->AddLatencyNumber(INPUT_EVENT_LATENCY_UI_COMPONENT, 0, 0);
}
@@ -474,7 +484,8 @@ TouchEvent::TouchEvent(EventType type,
radius_x_(radius_x),
radius_y_(radius_y),
rotation_angle_(angle),
- force_(force) {
+ force_(force),
+ source_device_id_(-1){
sadrul 2014/01/08 20:50:52 space before {
tdresser 2014/01/09 19:07:35 Done.
latency()->AddLatencyNumber(INPUT_EVENT_LATENCY_UI_COMPONENT, 0, 0);
}
« ui/events/event.h ('K') | « ui/events/event.h ('k') | ui/events/gestures/gesture_point.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698