| Index: ui/events/x/events_x.cc
|
| diff --git a/ui/events/x/events_x.cc b/ui/events/x/events_x.cc
|
| index 59e16cd3fccd34820672cd4ce85ef619e35f73c4..0b4888f6d228002b45391ee8065911dfffb2b3e1 100644
|
| --- a/ui/events/x/events_x.cc
|
| +++ b/ui/events/x/events_x.cc
|
| @@ -459,8 +459,21 @@ gfx::Point EventLocationFromNative(const base::NativeEvent& native_event) {
|
| case GenericEvent: {
|
| XIDeviceEvent* xievent =
|
| static_cast<XIDeviceEvent*>(native_event->xcookie.data);
|
| - return gfx::Point(static_cast<int>(xievent->event_x),
|
| - static_cast<int>(xievent->event_y));
|
| + float x = xievent->event_x;
|
| + float y = xievent->event_y;
|
| +#if defined(OS_CHROMEOS)
|
| + switch (xievent->evtype) {
|
| + case XI_TouchBegin:
|
| + case XI_TouchUpdate:
|
| + case XI_TouchEnd:
|
| + ui::DeviceDataManager::GetInstance()->ApplyTouchTransformer(
|
| + xievent->deviceid, &x, &y);
|
| + break;
|
| + default:
|
| + break;
|
| + }
|
| +#endif // defined(OS_CHROMEOS)
|
| + return gfx::Point(static_cast<int>(x), static_cast<int>(y));
|
| }
|
| }
|
| return gfx::Point();
|
|
|