| Index: ui/events/ozone/evdev/touch_event_converter_evdev.cc
|
| diff --git a/ui/events/ozone/evdev/touch_event_converter_evdev.cc b/ui/events/ozone/evdev/touch_event_converter_evdev.cc
|
| index 95d0d77101ae69eb477db66ed934e98626dc8b18..9581373fa7bf2e81dcf3d03e743f74b52c874243 100644
|
| --- a/ui/events/ozone/evdev/touch_event_converter_evdev.cc
|
| +++ b/ui/events/ozone/evdev/touch_event_converter_evdev.cc
|
| @@ -90,7 +90,8 @@ TouchEventConverterEvdev::TouchEventConverterEvdev(
|
| has_mt_(false),
|
| touch_points_(0),
|
| next_tracking_id_(0),
|
| - current_slot_(0) {
|
| + current_slot_(0),
|
| + touch_id_offset_(0) {
|
| if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
| switches::kExtraTouchNoiseFiltering)) {
|
| touch_noise_finder_.reset(new TouchNoiseFinder);
|
| @@ -198,6 +199,10 @@ int TouchEventConverterEvdev::GetTouchPoints() const {
|
| return touch_points_;
|
| }
|
|
|
| +void TouchEventConverterEvdev::SetTouchIdOffset(int offset) {
|
| + touch_id_offset_ = offset;
|
| +}
|
| +
|
| void TouchEventConverterEvdev::OnFileCanReadWithoutBlocking(int fd) {
|
| input_event inputs[kNumTouchEvdevSlots * 6 + 1];
|
| ssize_t read_size = read(fd, inputs, sizeof(inputs));
|
| @@ -357,10 +362,11 @@ EventType TouchEventConverterEvdev::GetEventTypeForTouch(
|
| void TouchEventConverterEvdev::ReportEvent(const InProgressTouchEvdev& event,
|
| EventType event_type,
|
| const base::TimeDelta& timestamp) {
|
| - dispatcher_->DispatchTouchEvent(TouchEventParams(
|
| - id_, event.slot, event_type, gfx::PointF(event.x, event.y),
|
| - gfx::Vector2dF(event.radius_x, event.radius_y), event.pressure,
|
| - timestamp));
|
| + dispatcher_->DispatchTouchEvent(
|
| + TouchEventParams(id_, touch_id_offset_ + event.slot, event_type,
|
| + gfx::PointF(event.x, event.y),
|
| + gfx::Vector2dF(event.radius_x, event.radius_y),
|
| + event.pressure, timestamp));
|
| }
|
|
|
| void TouchEventConverterEvdev::ReportEvents(base::TimeDelta delta) {
|
|
|