| Index: ui/events/ozone/evdev/touch_event_converter_evdev_unittest.cc
|
| diff --git a/ui/events/ozone/evdev/touch_event_converter_evdev_unittest.cc b/ui/events/ozone/evdev/touch_event_converter_evdev_unittest.cc
|
| index e2bc3a4d7010735a797ac362f8d1683b98b9cc4e..cc30bf6cc847e006e38aa0e379b1a50b70f14213 100644
|
| --- a/ui/events/ozone/evdev/touch_event_converter_evdev_unittest.cc
|
| +++ b/ui/events/ozone/evdev/touch_event_converter_evdev_unittest.cc
|
| @@ -563,6 +563,46 @@ TEST_F(TouchEventConverterEvdevTest, CheckSlotLimit) {
|
| EXPECT_EQ(1u, size());
|
| }
|
|
|
| +// crbug.com/472308
|
| +TEST_F(TouchEventConverterEvdevTest, TestTouchIdOffset) {
|
| + ui::MockTouchEventConverterEvdev* dev = device();
|
| + InitPixelTouchscreen(dev);
|
| +
|
| + const int kTouchIdOffset = 20;
|
| + dev->SetTouchIdOffset(kTouchIdOffset);
|
| +
|
| + struct input_event mock_kernel_queue[] = {
|
| + {{0, 0}, EV_ABS, ABS_MT_SLOT, 0},
|
| + {{0, 0}, EV_ABS, ABS_MT_TRACKING_ID, 100},
|
| + {{0, 0}, EV_ABS, ABS_MT_POSITION_X, 999},
|
| + {{0, 0}, EV_ABS, ABS_MT_POSITION_Y, 888},
|
| + {{0, 0}, EV_ABS, ABS_MT_PRESSURE, 55},
|
| + {{0, 0}, EV_ABS, ABS_MT_SLOT, 1},
|
| + {{0, 0}, EV_ABS, ABS_MT_TRACKING_ID, 200},
|
| + {{0, 0}, EV_ABS, ABS_MT_PRESSURE, 44},
|
| + {{0, 0}, EV_ABS, ABS_MT_POSITION_X, 777},
|
| + {{0, 0}, EV_ABS, ABS_MT_POSITION_Y, 666},
|
| + {{0, 0}, EV_ABS, ABS_X, 999},
|
| + {{0, 0}, EV_ABS, ABS_Y, 888},
|
| + {{0, 0}, EV_ABS, ABS_PRESSURE, 55},
|
| + {{0, 0}, EV_SYN, SYN_REPORT, 0},
|
| + };
|
| +
|
| + // Check that two events are generated.
|
| + dev->ConfigureReadMock(mock_kernel_queue, arraysize(mock_kernel_queue), 0);
|
| + dev->ReadNow();
|
| +
|
| + const unsigned int kExpectedEventCount = 2;
|
| + EXPECT_EQ(kExpectedEventCount, size());
|
| + if (kExpectedEventCount != size())
|
| + return;
|
| +
|
| + ui::TouchEventParams ev0 = dispatched_event(0);
|
| + ui::TouchEventParams ev1 = dispatched_event(1);
|
| + EXPECT_EQ(ev0.touch_id, kTouchIdOffset + 0);
|
| + EXPECT_EQ(ev1.touch_id, kTouchIdOffset + 1);
|
| +}
|
| +
|
| namespace {
|
|
|
| // TouchNoiseFilter which:
|
|
|