| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <errno.h> | 5 #include <errno.h> |
| 6 #include <fcntl.h> | 6 #include <fcntl.h> |
| 7 #include <linux/input.h> | 7 #include <linux/input.h> |
| 8 #include <unistd.h> | 8 #include <unistd.h> |
| 9 | 9 |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 249 dev->ConfigureReadMock(mock_kernel_queue_press, | 249 dev->ConfigureReadMock(mock_kernel_queue_press, |
| 250 arraysize(mock_kernel_queue_press), 0); | 250 arraysize(mock_kernel_queue_press), 0); |
| 251 dev->ReadNow(); | 251 dev->ReadNow(); |
| 252 EXPECT_EQ(1u, size()); | 252 EXPECT_EQ(1u, size()); |
| 253 ui::TouchEventParams event = dispatched_event(0); | 253 ui::TouchEventParams event = dispatched_event(0); |
| 254 EXPECT_EQ(ui::ET_TOUCH_PRESSED, event.type); | 254 EXPECT_EQ(ui::ET_TOUCH_PRESSED, event.type); |
| 255 EXPECT_EQ(base::TimeDelta::FromMicroseconds(1427323282019203), | 255 EXPECT_EQ(base::TimeDelta::FromMicroseconds(1427323282019203), |
| 256 event.timestamp); | 256 event.timestamp); |
| 257 EXPECT_EQ(295, event.location.x()); | 257 EXPECT_EQ(295, event.location.x()); |
| 258 EXPECT_EQ(421, event.location.y()); | 258 EXPECT_EQ(421, event.location.y()); |
| 259 EXPECT_EQ(0, event.touch_id); | 259 EXPECT_EQ(0, event.slot); |
| 260 EXPECT_FLOAT_EQ(58.f, event.radii.x()); | 260 EXPECT_FLOAT_EQ(58.f, event.radii.x()); |
| 261 EXPECT_FLOAT_EQ(0.13333334f, event.pressure); | 261 EXPECT_FLOAT_EQ(0.13333334f, event.pressure); |
| 262 | 262 |
| 263 // Move. | 263 // Move. |
| 264 dev->ConfigureReadMock(mock_kernel_queue_move, | 264 dev->ConfigureReadMock(mock_kernel_queue_move, |
| 265 arraysize(mock_kernel_queue_move), 0); | 265 arraysize(mock_kernel_queue_move), 0); |
| 266 dev->ReadNow(); | 266 dev->ReadNow(); |
| 267 EXPECT_EQ(2u, size()); | 267 EXPECT_EQ(2u, size()); |
| 268 event = dispatched_event(1); | 268 event = dispatched_event(1); |
| 269 EXPECT_EQ(ui::ET_TOUCH_MOVED, event.type); | 269 EXPECT_EQ(ui::ET_TOUCH_MOVED, event.type); |
| 270 EXPECT_EQ(base::TimeDelta::FromMicroseconds(1427323282034693), | 270 EXPECT_EQ(base::TimeDelta::FromMicroseconds(1427323282034693), |
| 271 event.timestamp); | 271 event.timestamp); |
| 272 EXPECT_EQ(312, event.location.x()); | 272 EXPECT_EQ(312, event.location.x()); |
| 273 EXPECT_EQ(432, event.location.y()); | 273 EXPECT_EQ(432, event.location.y()); |
| 274 EXPECT_EQ(0, event.touch_id); | 274 EXPECT_EQ(0, event.slot); |
| 275 EXPECT_FLOAT_EQ(50.f, event.radii.x()); | 275 EXPECT_FLOAT_EQ(50.f, event.radii.x()); |
| 276 EXPECT_FLOAT_EQ(0.16862745f, event.pressure); | 276 EXPECT_FLOAT_EQ(0.16862745f, event.pressure); |
| 277 | 277 |
| 278 // Release. | 278 // Release. |
| 279 dev->ConfigureReadMock(mock_kernel_queue_release, | 279 dev->ConfigureReadMock(mock_kernel_queue_release, |
| 280 arraysize(mock_kernel_queue_release), 0); | 280 arraysize(mock_kernel_queue_release), 0); |
| 281 dev->ReadNow(); | 281 dev->ReadNow(); |
| 282 EXPECT_EQ(3u, size()); | 282 EXPECT_EQ(3u, size()); |
| 283 event = dispatched_event(2); | 283 event = dispatched_event(2); |
| 284 EXPECT_EQ(ui::ET_TOUCH_RELEASED, event.type); | 284 EXPECT_EQ(ui::ET_TOUCH_RELEASED, event.type); |
| 285 EXPECT_EQ(base::TimeDelta::FromMicroseconds(1427323282144540), | 285 EXPECT_EQ(base::TimeDelta::FromMicroseconds(1427323282144540), |
| 286 event.timestamp); | 286 event.timestamp); |
| 287 EXPECT_EQ(312, event.location.x()); | 287 EXPECT_EQ(312, event.location.x()); |
| 288 EXPECT_EQ(432, event.location.y()); | 288 EXPECT_EQ(432, event.location.y()); |
| 289 EXPECT_EQ(0, event.touch_id); | 289 EXPECT_EQ(0, event.slot); |
| 290 EXPECT_FLOAT_EQ(50.f, event.radii.x()); | 290 EXPECT_FLOAT_EQ(50.f, event.radii.x()); |
| 291 EXPECT_FLOAT_EQ(0.16862745f, event.pressure); | 291 EXPECT_FLOAT_EQ(0.16862745f, event.pressure); |
| 292 } | 292 } |
| 293 | 293 |
| 294 TEST_F(TouchEventConverterEvdevTest, TwoFingerGesture) { | 294 TEST_F(TouchEventConverterEvdevTest, TwoFingerGesture) { |
| 295 ui::MockTouchEventConverterEvdev* dev = device(); | 295 ui::MockTouchEventConverterEvdev* dev = device(); |
| 296 | 296 |
| 297 InitPixelTouchscreen(dev); | 297 InitPixelTouchscreen(dev); |
| 298 | 298 |
| 299 struct input_event mock_kernel_queue_press0[] = { | 299 struct input_event mock_kernel_queue_press0[] = { |
| (...skipping 29 matching lines...) Expand all Loading... |
| 329 dev->ReadNow(); | 329 dev->ReadNow(); |
| 330 EXPECT_EQ(4u, size()); | 330 EXPECT_EQ(4u, size()); |
| 331 ui::TouchEventParams ev0 = dispatched_event(2); | 331 ui::TouchEventParams ev0 = dispatched_event(2); |
| 332 ui::TouchEventParams ev1 = dispatched_event(3); | 332 ui::TouchEventParams ev1 = dispatched_event(3); |
| 333 | 333 |
| 334 // Move | 334 // Move |
| 335 EXPECT_EQ(ui::ET_TOUCH_MOVED, ev0.type); | 335 EXPECT_EQ(ui::ET_TOUCH_MOVED, ev0.type); |
| 336 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev0.timestamp); | 336 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev0.timestamp); |
| 337 EXPECT_EQ(40, ev0.location.x()); | 337 EXPECT_EQ(40, ev0.location.x()); |
| 338 EXPECT_EQ(51, ev0.location.y()); | 338 EXPECT_EQ(51, ev0.location.y()); |
| 339 EXPECT_EQ(0, ev0.touch_id); | 339 EXPECT_EQ(0, ev0.slot); |
| 340 EXPECT_FLOAT_EQ(0.17647059f, ev0.pressure); | 340 EXPECT_FLOAT_EQ(0.17647059f, ev0.pressure); |
| 341 | 341 |
| 342 // Press | 342 // Press |
| 343 EXPECT_EQ(ui::ET_TOUCH_PRESSED, ev1.type); | 343 EXPECT_EQ(ui::ET_TOUCH_PRESSED, ev1.type); |
| 344 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev1.timestamp); | 344 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev1.timestamp); |
| 345 EXPECT_EQ(101, ev1.location.x()); | 345 EXPECT_EQ(101, ev1.location.x()); |
| 346 EXPECT_EQ(102, ev1.location.y()); | 346 EXPECT_EQ(102, ev1.location.y()); |
| 347 EXPECT_EQ(1, ev1.touch_id); | 347 EXPECT_EQ(1, ev1.slot); |
| 348 EXPECT_FLOAT_EQ(0.17647059f, ev1.pressure); | 348 EXPECT_FLOAT_EQ(0.17647059f, ev1.pressure); |
| 349 | 349 |
| 350 // Stationary 0, Moves 1. | 350 // Stationary 0, Moves 1. |
| 351 struct input_event mock_kernel_queue_stationary0_move1[] = { | 351 struct input_event mock_kernel_queue_stationary0_move1[] = { |
| 352 {{0, 0}, EV_ABS, ABS_MT_POSITION_X, 40}, {{0, 0}, EV_SYN, SYN_REPORT, 0} | 352 {{0, 0}, EV_ABS, ABS_MT_POSITION_X, 40}, {{0, 0}, EV_SYN, SYN_REPORT, 0} |
| 353 }; | 353 }; |
| 354 dev->ConfigureReadMock(mock_kernel_queue_stationary0_move1, 2, 0); | 354 dev->ConfigureReadMock(mock_kernel_queue_stationary0_move1, 2, 0); |
| 355 dev->ReadNow(); | 355 dev->ReadNow(); |
| 356 EXPECT_EQ(5u, size()); | 356 EXPECT_EQ(5u, size()); |
| 357 ev1 = dispatched_event(4); | 357 ev1 = dispatched_event(4); |
| 358 | 358 |
| 359 EXPECT_EQ(ui::ET_TOUCH_MOVED, ev1.type); | 359 EXPECT_EQ(ui::ET_TOUCH_MOVED, ev1.type); |
| 360 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev1.timestamp); | 360 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev1.timestamp); |
| 361 EXPECT_EQ(40, ev1.location.x()); | 361 EXPECT_EQ(40, ev1.location.x()); |
| 362 EXPECT_EQ(102, ev1.location.y()); | 362 EXPECT_EQ(102, ev1.location.y()); |
| 363 EXPECT_EQ(1, ev1.touch_id); | 363 EXPECT_EQ(1, ev1.slot); |
| 364 EXPECT_FLOAT_EQ(0.17647059f, ev1.pressure); | 364 EXPECT_FLOAT_EQ(0.17647059f, ev1.pressure); |
| 365 | 365 |
| 366 // Move 0, stationary 1. | 366 // Move 0, stationary 1. |
| 367 struct input_event mock_kernel_queue_move0_stationary1[] = { | 367 struct input_event mock_kernel_queue_move0_stationary1[] = { |
| 368 {{0, 0}, EV_ABS, ABS_MT_SLOT, 0}, {{0, 0}, EV_ABS, ABS_MT_POSITION_X, 39}, | 368 {{0, 0}, EV_ABS, ABS_MT_SLOT, 0}, {{0, 0}, EV_ABS, ABS_MT_POSITION_X, 39}, |
| 369 {{0, 0}, EV_SYN, SYN_REPORT, 0} | 369 {{0, 0}, EV_SYN, SYN_REPORT, 0} |
| 370 }; | 370 }; |
| 371 dev->ConfigureReadMock(mock_kernel_queue_move0_stationary1, 3, 0); | 371 dev->ConfigureReadMock(mock_kernel_queue_move0_stationary1, 3, 0); |
| 372 dev->ReadNow(); | 372 dev->ReadNow(); |
| 373 EXPECT_EQ(6u, size()); | 373 EXPECT_EQ(6u, size()); |
| 374 ev0 = dispatched_event(5); | 374 ev0 = dispatched_event(5); |
| 375 | 375 |
| 376 EXPECT_EQ(ui::ET_TOUCH_MOVED, ev0.type); | 376 EXPECT_EQ(ui::ET_TOUCH_MOVED, ev0.type); |
| 377 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev0.timestamp); | 377 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev0.timestamp); |
| 378 EXPECT_EQ(39, ev0.location.x()); | 378 EXPECT_EQ(39, ev0.location.x()); |
| 379 EXPECT_EQ(51, ev0.location.y()); | 379 EXPECT_EQ(51, ev0.location.y()); |
| 380 EXPECT_EQ(0, ev0.touch_id); | 380 EXPECT_EQ(0, ev0.slot); |
| 381 EXPECT_FLOAT_EQ(0.17647059f, ev0.pressure); | 381 EXPECT_FLOAT_EQ(0.17647059f, ev0.pressure); |
| 382 | 382 |
| 383 // Release 0, move 1. | 383 // Release 0, move 1. |
| 384 struct input_event mock_kernel_queue_release0_move1[] = { | 384 struct input_event mock_kernel_queue_release0_move1[] = { |
| 385 {{0, 0}, EV_ABS, ABS_MT_TRACKING_ID, -1}, {{0, 0}, EV_ABS, ABS_MT_SLOT, 1}, | 385 {{0, 0}, EV_ABS, ABS_MT_TRACKING_ID, -1}, {{0, 0}, EV_ABS, ABS_MT_SLOT, 1}, |
| 386 {{0, 0}, EV_ABS, ABS_MT_POSITION_X, 38}, {{0, 0}, EV_SYN, SYN_REPORT, 0} | 386 {{0, 0}, EV_ABS, ABS_MT_POSITION_X, 38}, {{0, 0}, EV_SYN, SYN_REPORT, 0} |
| 387 }; | 387 }; |
| 388 dev->ConfigureReadMock(mock_kernel_queue_release0_move1, 4, 0); | 388 dev->ConfigureReadMock(mock_kernel_queue_release0_move1, 4, 0); |
| 389 dev->ReadNow(); | 389 dev->ReadNow(); |
| 390 EXPECT_EQ(8u, size()); | 390 EXPECT_EQ(8u, size()); |
| 391 ev0 = dispatched_event(6); | 391 ev0 = dispatched_event(6); |
| 392 ev1 = dispatched_event(7); | 392 ev1 = dispatched_event(7); |
| 393 | 393 |
| 394 EXPECT_EQ(ui::ET_TOUCH_RELEASED, ev0.type); | 394 EXPECT_EQ(ui::ET_TOUCH_RELEASED, ev0.type); |
| 395 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev0.timestamp); | 395 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev0.timestamp); |
| 396 EXPECT_EQ(39, ev0.location.x()); | 396 EXPECT_EQ(39, ev0.location.x()); |
| 397 EXPECT_EQ(51, ev0.location.y()); | 397 EXPECT_EQ(51, ev0.location.y()); |
| 398 EXPECT_EQ(0, ev0.touch_id); | 398 EXPECT_EQ(0, ev0.slot); |
| 399 EXPECT_FLOAT_EQ(0.17647059f, ev0.pressure); | 399 EXPECT_FLOAT_EQ(0.17647059f, ev0.pressure); |
| 400 | 400 |
| 401 EXPECT_EQ(ui::ET_TOUCH_MOVED, ev1.type); | 401 EXPECT_EQ(ui::ET_TOUCH_MOVED, ev1.type); |
| 402 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev1.timestamp); | 402 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev1.timestamp); |
| 403 EXPECT_EQ(38, ev1.location.x()); | 403 EXPECT_EQ(38, ev1.location.x()); |
| 404 EXPECT_EQ(102, ev1.location.y()); | 404 EXPECT_EQ(102, ev1.location.y()); |
| 405 EXPECT_EQ(1, ev1.touch_id); | 405 EXPECT_EQ(1, ev1.slot); |
| 406 EXPECT_FLOAT_EQ(0.17647059f, ev1.pressure); | 406 EXPECT_FLOAT_EQ(0.17647059f, ev1.pressure); |
| 407 | 407 |
| 408 // Release 1. | 408 // Release 1. |
| 409 struct input_event mock_kernel_queue_release1[] = { | 409 struct input_event mock_kernel_queue_release1[] = { |
| 410 {{0, 0}, EV_ABS, ABS_MT_TRACKING_ID, -1}, {{0, 0}, EV_SYN, SYN_REPORT, 0}, | 410 {{0, 0}, EV_ABS, ABS_MT_TRACKING_ID, -1}, {{0, 0}, EV_SYN, SYN_REPORT, 0}, |
| 411 }; | 411 }; |
| 412 dev->ConfigureReadMock(mock_kernel_queue_release1, 2, 0); | 412 dev->ConfigureReadMock(mock_kernel_queue_release1, 2, 0); |
| 413 dev->ReadNow(); | 413 dev->ReadNow(); |
| 414 EXPECT_EQ(9u, size()); | 414 EXPECT_EQ(9u, size()); |
| 415 ev1 = dispatched_event(8); | 415 ev1 = dispatched_event(8); |
| 416 | 416 |
| 417 EXPECT_EQ(ui::ET_TOUCH_RELEASED, ev1.type); | 417 EXPECT_EQ(ui::ET_TOUCH_RELEASED, ev1.type); |
| 418 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev1.timestamp); | 418 EXPECT_EQ(base::TimeDelta::FromMicroseconds(0), ev1.timestamp); |
| 419 EXPECT_EQ(38, ev1.location.x()); | 419 EXPECT_EQ(38, ev1.location.x()); |
| 420 EXPECT_EQ(102, ev1.location.y()); | 420 EXPECT_EQ(102, ev1.location.y()); |
| 421 EXPECT_EQ(1, ev1.touch_id); | 421 EXPECT_EQ(1, ev1.slot); |
| 422 EXPECT_FLOAT_EQ(0.17647059f, ev1.pressure); | 422 EXPECT_FLOAT_EQ(0.17647059f, ev1.pressure); |
| 423 } | 423 } |
| 424 | 424 |
| 425 TEST_F(TouchEventConverterEvdevTest, Unsync) { | 425 TEST_F(TouchEventConverterEvdevTest, Unsync) { |
| 426 ui::MockTouchEventConverterEvdev* dev = device(); | 426 ui::MockTouchEventConverterEvdev* dev = device(); |
| 427 | 427 |
| 428 InitPixelTouchscreen(dev); | 428 InitPixelTouchscreen(dev); |
| 429 | 429 |
| 430 struct input_event mock_kernel_queue_press0[] = { | 430 struct input_event mock_kernel_queue_press0[] = { |
| 431 {{0, 0}, EV_ABS, ABS_MT_TRACKING_ID, 684}, | 431 {{0, 0}, EV_ABS, ABS_MT_TRACKING_ID, 684}, |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 481 {{0, 0}, EV_SYN, SYN_REPORT, 0}, | 481 {{0, 0}, EV_SYN, SYN_REPORT, 0}, |
| 482 }; | 482 }; |
| 483 | 483 |
| 484 dev->ConfigureReadMock(mock_kernel_queue_empty_report, | 484 dev->ConfigureReadMock(mock_kernel_queue_empty_report, |
| 485 arraysize(mock_kernel_queue_empty_report), 0); | 485 arraysize(mock_kernel_queue_empty_report), 0); |
| 486 dev->ReadNow(); | 486 dev->ReadNow(); |
| 487 EXPECT_EQ(1u, size()); | 487 EXPECT_EQ(1u, size()); |
| 488 | 488 |
| 489 ui::TouchEventParams ev = dispatched_event(0); | 489 ui::TouchEventParams ev = dispatched_event(0); |
| 490 EXPECT_EQ(ET_TOUCH_PRESSED, ev.type); | 490 EXPECT_EQ(ET_TOUCH_PRESSED, ev.type); |
| 491 EXPECT_EQ(0, ev.touch_id); | 491 EXPECT_EQ(0, ev.slot); |
| 492 EXPECT_FLOAT_EQ(50.f, ev.radii.x()); | 492 EXPECT_FLOAT_EQ(50.f, ev.radii.x()); |
| 493 EXPECT_FLOAT_EQ(0.f, ev.radii.y()); | 493 EXPECT_FLOAT_EQ(0.f, ev.radii.y()); |
| 494 EXPECT_FLOAT_EQ(0.50196081f, ev.pressure); | 494 EXPECT_FLOAT_EQ(0.50196081f, ev.pressure); |
| 495 } | 495 } |
| 496 | 496 |
| 497 // crbug.com/407386 | 497 // crbug.com/407386 |
| 498 TEST_F(TouchEventConverterEvdevTest, | 498 TEST_F(TouchEventConverterEvdevTest, |
| 499 DontChangeMultitouchPositionFromLegacyAxes) { | 499 DontChangeMultitouchPositionFromLegacyAxes) { |
| 500 ui::MockTouchEventConverterEvdev* dev = device(); | 500 ui::MockTouchEventConverterEvdev* dev = device(); |
| 501 | 501 |
| (...skipping 21 matching lines...) Expand all Loading... |
| 523 dev->ReadNow(); | 523 dev->ReadNow(); |
| 524 | 524 |
| 525 const unsigned int kExpectedEventCount = 2; | 525 const unsigned int kExpectedEventCount = 2; |
| 526 EXPECT_EQ(kExpectedEventCount, size()); | 526 EXPECT_EQ(kExpectedEventCount, size()); |
| 527 if (kExpectedEventCount != size()) | 527 if (kExpectedEventCount != size()) |
| 528 return; | 528 return; |
| 529 | 529 |
| 530 ui::TouchEventParams ev0 = dispatched_event(0); | 530 ui::TouchEventParams ev0 = dispatched_event(0); |
| 531 ui::TouchEventParams ev1 = dispatched_event(1); | 531 ui::TouchEventParams ev1 = dispatched_event(1); |
| 532 | 532 |
| 533 EXPECT_EQ(0, ev0.touch_id); | 533 EXPECT_EQ(0, ev0.slot); |
| 534 EXPECT_EQ(999, ev0.location.x()); | 534 EXPECT_EQ(999, ev0.location.x()); |
| 535 EXPECT_EQ(888, ev0.location.y()); | 535 EXPECT_EQ(888, ev0.location.y()); |
| 536 EXPECT_FLOAT_EQ(0.21568628f, ev0.pressure); | 536 EXPECT_FLOAT_EQ(0.21568628f, ev0.pressure); |
| 537 | 537 |
| 538 EXPECT_EQ(1, ev1.touch_id); | 538 EXPECT_EQ(1, ev1.slot); |
| 539 EXPECT_EQ(777, ev1.location.x()); | 539 EXPECT_EQ(777, ev1.location.x()); |
| 540 EXPECT_EQ(666, ev1.location.y()); | 540 EXPECT_EQ(666, ev1.location.y()); |
| 541 EXPECT_FLOAT_EQ(0.17254902f, ev1.pressure); | 541 EXPECT_FLOAT_EQ(0.17254902f, ev1.pressure); |
| 542 } | 542 } |
| 543 | 543 |
| 544 // crbug.com/446939 | 544 // crbug.com/446939 |
| 545 TEST_F(TouchEventConverterEvdevTest, CheckSlotLimit) { | 545 TEST_F(TouchEventConverterEvdevTest, CheckSlotLimit) { |
| 546 ui::MockTouchEventConverterEvdev* dev = device(); | 546 ui::MockTouchEventConverterEvdev* dev = device(); |
| 547 | 547 |
| 548 struct input_event mock_kernel_queue[] = { | 548 struct input_event mock_kernel_queue[] = { |
| (...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 722 ASSERT_EQ(0u, size()); | 722 ASSERT_EQ(0u, size()); |
| 723 | 723 |
| 724 EventTypeTouchNoiseFilter* filter = | 724 EventTypeTouchNoiseFilter* filter = |
| 725 static_cast<EventTypeTouchNoiseFilter*>(first_filter()); | 725 static_cast<EventTypeTouchNoiseFilter*>(first_filter()); |
| 726 EXPECT_EQ(1u, filter->num_events(ET_TOUCH_PRESSED)); | 726 EXPECT_EQ(1u, filter->num_events(ET_TOUCH_PRESSED)); |
| 727 EXPECT_EQ(2u, filter->num_events(ET_TOUCH_MOVED)); | 727 EXPECT_EQ(2u, filter->num_events(ET_TOUCH_MOVED)); |
| 728 EXPECT_EQ(1u, filter->num_events(ET_TOUCH_RELEASED)); | 728 EXPECT_EQ(1u, filter->num_events(ET_TOUCH_RELEASED)); |
| 729 } | 729 } |
| 730 | 730 |
| 731 } // namespace ui | 731 } // namespace ui |
| OLD | NEW |