| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "base/memory/scoped_vector.h" | 5 #include "base/memory/scoped_vector.h" |
| 6 #include "base/string_number_conversions.h" | 6 #include "base/string_number_conversions.h" |
| 7 #include "base/timer.h" | 7 #include "base/timer.h" |
| 8 #include "testing/gtest/include/gtest/gtest.h" | 8 #include "testing/gtest/include/gtest/gtest.h" |
| 9 #include "ui/aura/event.h" | 9 #include "ui/aura/event.h" |
| 10 #include "ui/aura/root_window.h" | 10 #include "ui/aura/root_window.h" |
| (...skipping 18 matching lines...) Expand all Loading... |
| 29 return consumer && !consumer->ignores_events() ? | 29 return consumer && !consumer->ignores_events() ? |
| 30 base::IntToString(static_cast<Window*>(consumer)->id()) : "?"; | 30 base::IntToString(static_cast<Window*>(consumer)->id()) : "?"; |
| 31 } | 31 } |
| 32 | 32 |
| 33 // A delegate that keeps track of gesture events. | 33 // A delegate that keeps track of gesture events. |
| 34 class GestureEventConsumeDelegate : public TestWindowDelegate { | 34 class GestureEventConsumeDelegate : public TestWindowDelegate { |
| 35 public: | 35 public: |
| 36 GestureEventConsumeDelegate() | 36 GestureEventConsumeDelegate() |
| 37 : tap_(false), | 37 : tap_(false), |
| 38 tap_down_(false), | 38 tap_down_(false), |
| 39 begin_(false), | 39 tap_up_(false), |
| 40 end_(false), | |
| 41 double_tap_(false), | 40 double_tap_(false), |
| 42 scroll_begin_(false), | 41 scroll_begin_(false), |
| 43 scroll_update_(false), | 42 scroll_update_(false), |
| 44 scroll_end_(false), | 43 scroll_end_(false), |
| 45 pinch_begin_(false), | 44 pinch_begin_(false), |
| 46 pinch_update_(false), | 45 pinch_update_(false), |
| 47 pinch_end_(false), | 46 pinch_end_(false), |
| 48 long_press_(false), | 47 long_press_(false), |
| 49 fling_(false), | 48 fling_(false), |
| 50 two_finger_tap_(false), | 49 two_finger_tap_(false), |
| 51 scroll_x_(0), | 50 scroll_x_(0), |
| 52 scroll_y_(0), | 51 scroll_y_(0), |
| 53 velocity_x_(0), | 52 velocity_x_(0), |
| 54 velocity_y_(0), | 53 velocity_y_(0), |
| 55 radius_x_(0), | 54 radius_x_(0), |
| 56 radius_y_(0) { | 55 radius_y_(0) { |
| 57 } | 56 } |
| 58 | 57 |
| 59 virtual ~GestureEventConsumeDelegate() {} | 58 virtual ~GestureEventConsumeDelegate() {} |
| 60 | 59 |
| 61 void Reset() { | 60 void Reset() { |
| 62 tap_ = false; | 61 tap_ = false; |
| 63 tap_down_ = false; | 62 tap_down_ = false; |
| 64 begin_ = false; | 63 tap_up_ = false; |
| 65 end_ = false; | |
| 66 double_tap_ = false; | 64 double_tap_ = false; |
| 67 scroll_begin_ = false; | 65 scroll_begin_ = false; |
| 68 scroll_update_ = false; | 66 scroll_update_ = false; |
| 69 scroll_end_ = false; | 67 scroll_end_ = false; |
| 70 pinch_begin_ = false; | 68 pinch_begin_ = false; |
| 71 pinch_update_ = false; | 69 pinch_update_ = false; |
| 72 pinch_end_ = false; | 70 pinch_end_ = false; |
| 73 long_press_ = false; | 71 long_press_ = false; |
| 74 fling_ = false; | 72 fling_ = false; |
| 75 two_finger_tap_ = false; | 73 two_finger_tap_ = false; |
| 76 | 74 |
| 77 scroll_begin_position_.SetPoint(0, 0); | 75 scroll_begin_position_.SetPoint(0, 0); |
| 78 tap_location_.SetPoint(0, 0); | 76 tap_location_.SetPoint(0, 0); |
| 79 | 77 |
| 80 scroll_x_ = 0; | 78 scroll_x_ = 0; |
| 81 scroll_y_ = 0; | 79 scroll_y_ = 0; |
| 82 velocity_x_ = 0; | 80 velocity_x_ = 0; |
| 83 velocity_y_ = 0; | 81 velocity_y_ = 0; |
| 84 radius_x_ = 0; | 82 radius_x_ = 0; |
| 85 radius_y_ = 0; | 83 radius_y_ = 0; |
| 86 } | 84 } |
| 87 | 85 |
| 88 bool tap() const { return tap_; } | 86 bool tap() const { return tap_; } |
| 89 bool tap_down() const { return tap_down_; } | 87 bool tap_down() const { return tap_down_; } |
| 90 bool begin() const { return begin_; } | 88 bool tap_up() const { return tap_up_; } |
| 91 bool end() const { return end_; } | |
| 92 bool double_tap() const { return double_tap_; } | 89 bool double_tap() const { return double_tap_; } |
| 93 bool scroll_begin() const { return scroll_begin_; } | 90 bool scroll_begin() const { return scroll_begin_; } |
| 94 bool scroll_update() const { return scroll_update_; } | 91 bool scroll_update() const { return scroll_update_; } |
| 95 bool scroll_end() const { return scroll_end_; } | 92 bool scroll_end() const { return scroll_end_; } |
| 96 bool pinch_begin() const { return pinch_begin_; } | 93 bool pinch_begin() const { return pinch_begin_; } |
| 97 bool pinch_update() const { return pinch_update_; } | 94 bool pinch_update() const { return pinch_update_; } |
| 98 bool pinch_end() const { return pinch_end_; } | 95 bool pinch_end() const { return pinch_end_; } |
| 99 bool long_press() const { return long_press_; } | 96 bool long_press() const { return long_press_; } |
| 100 bool fling() const { return fling_; } | 97 bool fling() const { return fling_; } |
| 101 bool two_finger_tap() const { return two_finger_tap_; } | 98 bool two_finger_tap() const { return two_finger_tap_; } |
| (...skipping 18 matching lines...) Expand all Loading... |
| 120 switch (gesture->type()) { | 117 switch (gesture->type()) { |
| 121 case ui::ET_GESTURE_TAP: | 118 case ui::ET_GESTURE_TAP: |
| 122 radius_x_ = gesture->delta_x(); | 119 radius_x_ = gesture->delta_x(); |
| 123 radius_y_ = gesture->delta_y(); | 120 radius_y_ = gesture->delta_y(); |
| 124 tap_location_ = gesture->location(); | 121 tap_location_ = gesture->location(); |
| 125 tap_ = true; | 122 tap_ = true; |
| 126 break; | 123 break; |
| 127 case ui::ET_GESTURE_TAP_DOWN: | 124 case ui::ET_GESTURE_TAP_DOWN: |
| 128 tap_down_ = true; | 125 tap_down_ = true; |
| 129 break; | 126 break; |
| 130 case ui::ET_GESTURE_BEGIN: | 127 case ui::ET_GESTURE_TAP_UP: |
| 131 begin_ = true; | 128 tap_up_ = true; |
| 132 break; | |
| 133 case ui::ET_GESTURE_END: | |
| 134 end_ = true; | |
| 135 break; | 129 break; |
| 136 case ui::ET_GESTURE_DOUBLE_TAP: | 130 case ui::ET_GESTURE_DOUBLE_TAP: |
| 137 double_tap_ = true; | 131 double_tap_ = true; |
| 138 break; | 132 break; |
| 139 case ui::ET_GESTURE_SCROLL_BEGIN: | 133 case ui::ET_GESTURE_SCROLL_BEGIN: |
| 140 scroll_begin_ = true; | 134 scroll_begin_ = true; |
| 141 scroll_begin_position_ = gesture->location(); | 135 scroll_begin_position_ = gesture->location(); |
| 142 break; | 136 break; |
| 143 case ui::ET_GESTURE_SCROLL_UPDATE: | 137 case ui::ET_GESTURE_SCROLL_UPDATE: |
| 144 scroll_update_ = true; | 138 scroll_update_ = true; |
| (...skipping 27 matching lines...) Expand all Loading... |
| 172 break; | 166 break; |
| 173 default: | 167 default: |
| 174 NOTREACHED(); | 168 NOTREACHED(); |
| 175 } | 169 } |
| 176 return ui::GESTURE_STATUS_CONSUMED; | 170 return ui::GESTURE_STATUS_CONSUMED; |
| 177 } | 171 } |
| 178 | 172 |
| 179 private: | 173 private: |
| 180 bool tap_; | 174 bool tap_; |
| 181 bool tap_down_; | 175 bool tap_down_; |
| 182 bool begin_; | 176 bool tap_up_; |
| 183 bool end_; | |
| 184 bool double_tap_; | 177 bool double_tap_; |
| 185 bool scroll_begin_; | 178 bool scroll_begin_; |
| 186 bool scroll_update_; | 179 bool scroll_update_; |
| 187 bool scroll_end_; | 180 bool scroll_end_; |
| 188 bool pinch_begin_; | 181 bool pinch_begin_; |
| 189 bool pinch_update_; | 182 bool pinch_update_; |
| 190 bool pinch_end_; | 183 bool pinch_end_; |
| 191 bool long_press_; | 184 bool long_press_; |
| 192 bool fling_; | 185 bool fling_; |
| 193 bool two_finger_tap_; | 186 bool two_finger_tap_; |
| (...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 403 gfx::Rect bounds(100, 200, kWindowWidth, kWindowHeight); | 396 gfx::Rect bounds(100, 200, kWindowWidth, kWindowHeight); |
| 404 scoped_ptr<aura::Window> window(CreateTestWindowWithDelegate( | 397 scoped_ptr<aura::Window> window(CreateTestWindowWithDelegate( |
| 405 delegate.get(), -1234, bounds, NULL)); | 398 delegate.get(), -1234, bounds, NULL)); |
| 406 | 399 |
| 407 delegate->Reset(); | 400 delegate->Reset(); |
| 408 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), | 401 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), |
| 409 kTouchId, GetTime()); | 402 kTouchId, GetTime()); |
| 410 root_window()->DispatchTouchEvent(&press); | 403 root_window()->DispatchTouchEvent(&press); |
| 411 EXPECT_FALSE(delegate->tap()); | 404 EXPECT_FALSE(delegate->tap()); |
| 412 EXPECT_TRUE(delegate->tap_down()); | 405 EXPECT_TRUE(delegate->tap_down()); |
| 413 EXPECT_TRUE(delegate->begin()); | |
| 414 EXPECT_FALSE(delegate->double_tap()); | 406 EXPECT_FALSE(delegate->double_tap()); |
| 415 EXPECT_FALSE(delegate->scroll_begin()); | 407 EXPECT_FALSE(delegate->scroll_begin()); |
| 416 EXPECT_FALSE(delegate->scroll_update()); | 408 EXPECT_FALSE(delegate->scroll_update()); |
| 417 EXPECT_FALSE(delegate->scroll_end()); | 409 EXPECT_FALSE(delegate->scroll_end()); |
| 418 EXPECT_FALSE(delegate->long_press()); | 410 EXPECT_FALSE(delegate->long_press()); |
| 419 | 411 |
| 420 // Make sure there is enough delay before the touch is released so that it is | 412 // Make sure there is enough delay before the touch is released so that it is |
| 421 // recognized as a tap. | 413 // recognized as a tap. |
| 422 delegate->Reset(); | 414 delegate->Reset(); |
| 423 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(101, 201), | 415 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(101, 201), |
| 424 kTouchId, press.time_stamp() + | 416 kTouchId, press.time_stamp() + |
| 425 base::TimeDelta::FromMilliseconds(50)); | 417 base::TimeDelta::FromMilliseconds(50)); |
| 426 | 418 |
| 427 root_window()->DispatchTouchEvent(&release); | 419 root_window()->DispatchTouchEvent(&release); |
| 428 EXPECT_TRUE(delegate->tap()); | 420 EXPECT_TRUE(delegate->tap()); |
| 429 EXPECT_FALSE(delegate->tap_down()); | 421 EXPECT_FALSE(delegate->tap_down()); |
| 430 EXPECT_FALSE(delegate->begin()); | |
| 431 EXPECT_TRUE(delegate->end()); | |
| 432 EXPECT_FALSE(delegate->double_tap()); | 422 EXPECT_FALSE(delegate->double_tap()); |
| 433 EXPECT_FALSE(delegate->scroll_begin()); | 423 EXPECT_FALSE(delegate->scroll_begin()); |
| 434 EXPECT_FALSE(delegate->scroll_update()); | 424 EXPECT_FALSE(delegate->scroll_update()); |
| 435 EXPECT_FALSE(delegate->scroll_end()); | 425 EXPECT_FALSE(delegate->scroll_end()); |
| 436 } | 426 } |
| 437 | 427 |
| 438 // Check that appropriate touch events generate tap gesture events | 428 // Check that appropriate touch events generate tap gesture events |
| 439 // when information about the touch radii are provided. | 429 // when information about the touch radii are provided. |
| 440 TEST_F(GestureRecognizerTest, GestureEventTapRegion) { | 430 TEST_F(GestureRecognizerTest, GestureEventTapRegion) { |
| 441 scoped_ptr<GestureEventConsumeDelegate> delegate( | 431 scoped_ptr<GestureEventConsumeDelegate> delegate( |
| 442 new GestureEventConsumeDelegate()); | 432 new GestureEventConsumeDelegate()); |
| 443 const int kWindowWidth = 800; | 433 const int kWindowWidth = 800; |
| 444 const int kWindowHeight = 600; | 434 const int kWindowHeight = 600; |
| 445 const int kTouchId = 2; | 435 const int kTouchId = 2; |
| 446 gfx::Rect bounds(0, 0, kWindowWidth, kWindowHeight); | 436 gfx::Rect bounds(0, 0, kWindowWidth, kWindowHeight); |
| 447 scoped_ptr<aura::Window> window(CreateTestWindowWithDelegate( | 437 scoped_ptr<aura::Window> window(CreateTestWindowWithDelegate( |
| 448 delegate.get(), -1234, bounds, NULL)); | 438 delegate.get(), -1234, bounds, NULL)); |
| 449 | 439 |
| 450 // Test with no ET_TOUCH_MOVED events. | 440 // Test with no ET_TOUCH_MOVED events. |
| 451 { | 441 { |
| 452 delegate->Reset(); | 442 delegate->Reset(); |
| 453 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), | 443 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), |
| 454 kTouchId, GetTime()); | 444 kTouchId, GetTime()); |
| 455 press.set_radius_x(5); | 445 press.set_radius_x(5); |
| 456 press.set_radius_y(12); | 446 press.set_radius_y(12); |
| 457 root_window()->DispatchTouchEvent(&press); | 447 root_window()->DispatchTouchEvent(&press); |
| 458 EXPECT_FALSE(delegate->tap()); | 448 EXPECT_FALSE(delegate->tap()); |
| 459 EXPECT_TRUE(delegate->tap_down()); | 449 EXPECT_TRUE(delegate->tap_down()); |
| 460 EXPECT_TRUE(delegate->begin()); | |
| 461 EXPECT_FALSE(delegate->double_tap()); | 450 EXPECT_FALSE(delegate->double_tap()); |
| 462 EXPECT_FALSE(delegate->scroll_begin()); | 451 EXPECT_FALSE(delegate->scroll_begin()); |
| 463 EXPECT_FALSE(delegate->scroll_update()); | 452 EXPECT_FALSE(delegate->scroll_update()); |
| 464 EXPECT_FALSE(delegate->scroll_end()); | 453 EXPECT_FALSE(delegate->scroll_end()); |
| 465 EXPECT_FALSE(delegate->long_press()); | 454 EXPECT_FALSE(delegate->long_press()); |
| 466 | 455 |
| 467 // Make sure there is enough delay before the touch is released so that it | 456 // Make sure there is enough delay before the touch is released so that it |
| 468 // is recognized as a tap. | 457 // is recognized as a tap. |
| 469 delegate->Reset(); | 458 delegate->Reset(); |
| 470 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(101, 201), | 459 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(101, 201), |
| 471 kTouchId, press.time_stamp() + | 460 kTouchId, press.time_stamp() + |
| 472 base::TimeDelta::FromMilliseconds(50)); | 461 base::TimeDelta::FromMilliseconds(50)); |
| 473 release.set_radius_x(5); | 462 release.set_radius_x(5); |
| 474 release.set_radius_y(12); | 463 release.set_radius_y(12); |
| 475 | 464 |
| 476 root_window()->DispatchTouchEvent(&release); | 465 root_window()->DispatchTouchEvent(&release); |
| 477 EXPECT_TRUE(delegate->tap()); | 466 EXPECT_TRUE(delegate->tap()); |
| 478 EXPECT_FALSE(delegate->tap_down()); | 467 EXPECT_FALSE(delegate->tap_down()); |
| 479 EXPECT_FALSE(delegate->begin()); | |
| 480 EXPECT_TRUE(delegate->end()); | |
| 481 EXPECT_FALSE(delegate->double_tap()); | 468 EXPECT_FALSE(delegate->double_tap()); |
| 482 EXPECT_FALSE(delegate->scroll_begin()); | 469 EXPECT_FALSE(delegate->scroll_begin()); |
| 483 EXPECT_FALSE(delegate->scroll_update()); | 470 EXPECT_FALSE(delegate->scroll_update()); |
| 484 EXPECT_FALSE(delegate->scroll_end()); | 471 EXPECT_FALSE(delegate->scroll_end()); |
| 485 | 472 |
| 486 gfx::Point actual_point(delegate->tap_location()); | 473 gfx::Point actual_point(delegate->tap_location()); |
| 487 EXPECT_EQ(12, delegate->radius_x()); | 474 EXPECT_EQ(12, delegate->radius_x()); |
| 488 EXPECT_EQ(12, delegate->radius_y()); | 475 EXPECT_EQ(12, delegate->radius_y()); |
| 489 EXPECT_EQ(100, actual_point.x()); | 476 EXPECT_EQ(100, actual_point.x()); |
| 490 EXPECT_EQ(200, actual_point.y()); | 477 EXPECT_EQ(200, actual_point.y()); |
| 491 } | 478 } |
| 492 | 479 |
| 493 // Test with no ET_TOUCH_MOVED events but different touch points and radii. | 480 // Test with no ET_TOUCH_MOVED events but different touch points and radii. |
| 494 { | 481 { |
| 495 delegate->Reset(); | 482 delegate->Reset(); |
| 496 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(365, 290), | 483 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(365, 290), |
| 497 kTouchId, GetTime()); | 484 kTouchId, GetTime()); |
| 498 press.set_radius_x(8); | 485 press.set_radius_x(8); |
| 499 press.set_radius_y(14); | 486 press.set_radius_y(14); |
| 500 root_window()->DispatchTouchEvent(&press); | 487 root_window()->DispatchTouchEvent(&press); |
| 501 EXPECT_FALSE(delegate->tap()); | 488 EXPECT_FALSE(delegate->tap()); |
| 502 EXPECT_TRUE(delegate->tap_down()); | 489 EXPECT_TRUE(delegate->tap_down()); |
| 503 EXPECT_TRUE(delegate->begin()); | |
| 504 EXPECT_FALSE(delegate->double_tap()); | 490 EXPECT_FALSE(delegate->double_tap()); |
| 505 EXPECT_FALSE(delegate->scroll_begin()); | 491 EXPECT_FALSE(delegate->scroll_begin()); |
| 506 EXPECT_FALSE(delegate->scroll_update()); | 492 EXPECT_FALSE(delegate->scroll_update()); |
| 507 EXPECT_FALSE(delegate->scroll_end()); | 493 EXPECT_FALSE(delegate->scroll_end()); |
| 508 EXPECT_FALSE(delegate->long_press()); | 494 EXPECT_FALSE(delegate->long_press()); |
| 509 | 495 |
| 510 delegate->Reset(); | 496 delegate->Reset(); |
| 511 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(377, 291), | 497 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(377, 291), |
| 512 kTouchId, press.time_stamp() + | 498 kTouchId, press.time_stamp() + |
| 513 base::TimeDelta::FromMilliseconds(50)); | 499 base::TimeDelta::FromMilliseconds(50)); |
| 514 release.set_radius_x(20); | 500 release.set_radius_x(20); |
| 515 release.set_radius_y(13); | 501 release.set_radius_y(13); |
| 516 | 502 |
| 517 root_window()->DispatchTouchEvent(&release); | 503 root_window()->DispatchTouchEvent(&release); |
| 518 EXPECT_TRUE(delegate->tap()); | 504 EXPECT_TRUE(delegate->tap()); |
| 519 EXPECT_FALSE(delegate->tap_down()); | 505 EXPECT_FALSE(delegate->tap_down()); |
| 520 EXPECT_FALSE(delegate->begin()); | |
| 521 EXPECT_TRUE(delegate->end()); | |
| 522 EXPECT_FALSE(delegate->double_tap()); | 506 EXPECT_FALSE(delegate->double_tap()); |
| 523 EXPECT_FALSE(delegate->scroll_begin()); | 507 EXPECT_FALSE(delegate->scroll_begin()); |
| 524 EXPECT_FALSE(delegate->scroll_update()); | 508 EXPECT_FALSE(delegate->scroll_update()); |
| 525 EXPECT_FALSE(delegate->scroll_end()); | 509 EXPECT_FALSE(delegate->scroll_end()); |
| 526 | 510 |
| 527 gfx::Point actual_point(delegate->tap_location()); | 511 gfx::Point actual_point(delegate->tap_location()); |
| 528 EXPECT_EQ(23, delegate->radius_x()); | 512 EXPECT_EQ(23, delegate->radius_x()); |
| 529 EXPECT_EQ(20, delegate->radius_y()); | 513 EXPECT_EQ(20, delegate->radius_y()); |
| 530 EXPECT_EQ(373, actual_point.x()); | 514 EXPECT_EQ(373, actual_point.x()); |
| 531 EXPECT_EQ(290, actual_point.y()); | 515 EXPECT_EQ(290, actual_point.y()); |
| 532 } | 516 } |
| 533 | 517 |
| 534 // Test with a single ET_TOUCH_MOVED event. | 518 // Test with a single ET_TOUCH_MOVED event. |
| 535 { | 519 { |
| 536 delegate->Reset(); | 520 delegate->Reset(); |
| 537 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(46, 205), | 521 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(46, 205), |
| 538 kTouchId, GetTime()); | 522 kTouchId, GetTime()); |
| 539 press.set_radius_x(6); | 523 press.set_radius_x(6); |
| 540 press.set_radius_y(10); | 524 press.set_radius_y(10); |
| 541 root_window()->DispatchTouchEvent(&press); | 525 root_window()->DispatchTouchEvent(&press); |
| 542 EXPECT_FALSE(delegate->tap()); | 526 EXPECT_FALSE(delegate->tap()); |
| 543 EXPECT_TRUE(delegate->tap_down()); | 527 EXPECT_TRUE(delegate->tap_down()); |
| 544 EXPECT_TRUE(delegate->begin()); | |
| 545 EXPECT_FALSE(delegate->double_tap()); | 528 EXPECT_FALSE(delegate->double_tap()); |
| 546 EXPECT_FALSE(delegate->scroll_begin()); | 529 EXPECT_FALSE(delegate->scroll_begin()); |
| 547 EXPECT_FALSE(delegate->scroll_update()); | 530 EXPECT_FALSE(delegate->scroll_update()); |
| 548 EXPECT_FALSE(delegate->scroll_end()); | 531 EXPECT_FALSE(delegate->scroll_end()); |
| 549 EXPECT_FALSE(delegate->long_press()); | 532 EXPECT_FALSE(delegate->long_press()); |
| 550 | 533 |
| 551 delegate->Reset(); | 534 delegate->Reset(); |
| 552 TouchEvent move(ui::ET_TOUCH_MOVED, gfx::Point(52, 200), | 535 TouchEvent move(ui::ET_TOUCH_MOVED, gfx::Point(52, 200), |
| 553 kTouchId, press.time_stamp() + | 536 kTouchId, press.time_stamp() + |
| 554 base::TimeDelta::FromMilliseconds(50)); | 537 base::TimeDelta::FromMilliseconds(50)); |
| 555 move.set_radius_x(8); | 538 move.set_radius_x(8); |
| 556 move.set_radius_y(12); | 539 move.set_radius_y(12); |
| 557 root_window()->DispatchTouchEvent(&move); | 540 root_window()->DispatchTouchEvent(&move); |
| 558 EXPECT_FALSE(delegate->tap()); | 541 EXPECT_FALSE(delegate->tap()); |
| 559 EXPECT_FALSE(delegate->tap_down()); | 542 EXPECT_FALSE(delegate->tap_down()); |
| 560 EXPECT_FALSE(delegate->begin()); | |
| 561 EXPECT_FALSE(delegate->double_tap()); | 543 EXPECT_FALSE(delegate->double_tap()); |
| 562 EXPECT_FALSE(delegate->scroll_begin()); | 544 EXPECT_FALSE(delegate->scroll_begin()); |
| 563 EXPECT_FALSE(delegate->scroll_update()); | 545 EXPECT_FALSE(delegate->scroll_update()); |
| 564 EXPECT_FALSE(delegate->scroll_end()); | 546 EXPECT_FALSE(delegate->scroll_end()); |
| 565 EXPECT_FALSE(delegate->long_press()); | 547 EXPECT_FALSE(delegate->long_press()); |
| 566 | 548 |
| 567 delegate->Reset(); | 549 delegate->Reset(); |
| 568 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(50, 195), | 550 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(50, 195), |
| 569 kTouchId, press.time_stamp() + | 551 kTouchId, press.time_stamp() + |
| 570 base::TimeDelta::FromMilliseconds(50)); | 552 base::TimeDelta::FromMilliseconds(50)); |
| 571 release.set_radius_x(4); | 553 release.set_radius_x(4); |
| 572 release.set_radius_y(8); | 554 release.set_radius_y(8); |
| 573 | 555 |
| 574 root_window()->DispatchTouchEvent(&release); | 556 root_window()->DispatchTouchEvent(&release); |
| 575 EXPECT_TRUE(delegate->tap()); | 557 EXPECT_TRUE(delegate->tap()); |
| 576 EXPECT_FALSE(delegate->tap_down()); | 558 EXPECT_FALSE(delegate->tap_down()); |
| 577 EXPECT_FALSE(delegate->begin()); | |
| 578 EXPECT_TRUE(delegate->end()); | |
| 579 EXPECT_FALSE(delegate->double_tap()); | 559 EXPECT_FALSE(delegate->double_tap()); |
| 580 EXPECT_FALSE(delegate->scroll_begin()); | 560 EXPECT_FALSE(delegate->scroll_begin()); |
| 581 EXPECT_FALSE(delegate->scroll_update()); | 561 EXPECT_FALSE(delegate->scroll_update()); |
| 582 EXPECT_FALSE(delegate->scroll_end()); | 562 EXPECT_FALSE(delegate->scroll_end()); |
| 583 | 563 |
| 584 gfx::Point actual_point(delegate->tap_location()); | 564 gfx::Point actual_point(delegate->tap_location()); |
| 585 EXPECT_EQ(14, delegate->radius_x()); | 565 EXPECT_EQ(14, delegate->radius_x()); |
| 586 EXPECT_EQ(14, delegate->radius_y()); | 566 EXPECT_EQ(14, delegate->radius_y()); |
| 587 EXPECT_EQ(49, actual_point.x()); | 567 EXPECT_EQ(49, actual_point.x()); |
| 588 EXPECT_EQ(200, actual_point.y()); | 568 EXPECT_EQ(200, actual_point.y()); |
| 589 } | 569 } |
| 590 | 570 |
| 591 // Test with a few ET_TOUCH_MOVED events. | 571 // Test with a few ET_TOUCH_MOVED events. |
| 592 { | 572 { |
| 593 delegate->Reset(); | 573 delegate->Reset(); |
| 594 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(400, 150), | 574 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(400, 150), |
| 595 kTouchId, GetTime()); | 575 kTouchId, GetTime()); |
| 596 press.set_radius_x(7); | 576 press.set_radius_x(7); |
| 597 press.set_radius_y(10); | 577 press.set_radius_y(10); |
| 598 root_window()->DispatchTouchEvent(&press); | 578 root_window()->DispatchTouchEvent(&press); |
| 599 EXPECT_FALSE(delegate->tap()); | 579 EXPECT_FALSE(delegate->tap()); |
| 600 EXPECT_TRUE(delegate->tap_down()); | 580 EXPECT_TRUE(delegate->tap_down()); |
| 601 EXPECT_TRUE(delegate->begin()); | |
| 602 EXPECT_FALSE(delegate->double_tap()); | 581 EXPECT_FALSE(delegate->double_tap()); |
| 603 EXPECT_FALSE(delegate->scroll_begin()); | 582 EXPECT_FALSE(delegate->scroll_begin()); |
| 604 EXPECT_FALSE(delegate->scroll_update()); | 583 EXPECT_FALSE(delegate->scroll_update()); |
| 605 EXPECT_FALSE(delegate->scroll_end()); | 584 EXPECT_FALSE(delegate->scroll_end()); |
| 606 EXPECT_FALSE(delegate->long_press()); | 585 EXPECT_FALSE(delegate->long_press()); |
| 607 | 586 |
| 608 delegate->Reset(); | 587 delegate->Reset(); |
| 609 TouchEvent move(ui::ET_TOUCH_MOVED, gfx::Point(397, 155), | 588 TouchEvent move(ui::ET_TOUCH_MOVED, gfx::Point(397, 155), |
| 610 kTouchId, press.time_stamp() + | 589 kTouchId, press.time_stamp() + |
| 611 base::TimeDelta::FromMilliseconds(50)); | 590 base::TimeDelta::FromMilliseconds(50)); |
| 612 move.set_radius_x(13); | 591 move.set_radius_x(13); |
| 613 move.set_radius_y(12); | 592 move.set_radius_y(12); |
| 614 root_window()->DispatchTouchEvent(&move); | 593 root_window()->DispatchTouchEvent(&move); |
| 615 EXPECT_FALSE(delegate->tap()); | 594 EXPECT_FALSE(delegate->tap()); |
| 616 EXPECT_FALSE(delegate->tap_down()); | 595 EXPECT_FALSE(delegate->tap_down()); |
| 617 EXPECT_FALSE(delegate->begin()); | |
| 618 EXPECT_FALSE(delegate->double_tap()); | 596 EXPECT_FALSE(delegate->double_tap()); |
| 619 EXPECT_FALSE(delegate->scroll_begin()); | 597 EXPECT_FALSE(delegate->scroll_begin()); |
| 620 EXPECT_FALSE(delegate->scroll_update()); | 598 EXPECT_FALSE(delegate->scroll_update()); |
| 621 EXPECT_FALSE(delegate->scroll_end()); | 599 EXPECT_FALSE(delegate->scroll_end()); |
| 622 EXPECT_FALSE(delegate->long_press()); | 600 EXPECT_FALSE(delegate->long_press()); |
| 623 | 601 |
| 624 delegate->Reset(); | 602 delegate->Reset(); |
| 625 TouchEvent move1(ui::ET_TOUCH_MOVED, gfx::Point(395, 148), | 603 TouchEvent move1(ui::ET_TOUCH_MOVED, gfx::Point(395, 148), |
| 626 kTouchId, move.time_stamp() + | 604 kTouchId, move.time_stamp() + |
| 627 base::TimeDelta::FromMilliseconds(50)); | 605 base::TimeDelta::FromMilliseconds(50)); |
| 628 move1.set_radius_x(16); | 606 move1.set_radius_x(16); |
| 629 move1.set_radius_y(16); | 607 move1.set_radius_y(16); |
| 630 root_window()->DispatchTouchEvent(&move1); | 608 root_window()->DispatchTouchEvent(&move1); |
| 631 EXPECT_FALSE(delegate->tap()); | 609 EXPECT_FALSE(delegate->tap()); |
| 632 EXPECT_FALSE(delegate->tap_down()); | 610 EXPECT_FALSE(delegate->tap_down()); |
| 633 EXPECT_FALSE(delegate->begin()); | |
| 634 EXPECT_FALSE(delegate->double_tap()); | 611 EXPECT_FALSE(delegate->double_tap()); |
| 635 EXPECT_FALSE(delegate->scroll_begin()); | 612 EXPECT_FALSE(delegate->scroll_begin()); |
| 636 EXPECT_FALSE(delegate->scroll_update()); | 613 EXPECT_FALSE(delegate->scroll_update()); |
| 637 EXPECT_FALSE(delegate->scroll_end()); | 614 EXPECT_FALSE(delegate->scroll_end()); |
| 638 EXPECT_FALSE(delegate->long_press()); | 615 EXPECT_FALSE(delegate->long_press()); |
| 639 | 616 |
| 640 delegate->Reset(); | 617 delegate->Reset(); |
| 641 TouchEvent move2(ui::ET_TOUCH_MOVED, gfx::Point(400, 150), | 618 TouchEvent move2(ui::ET_TOUCH_MOVED, gfx::Point(400, 150), |
| 642 kTouchId, move1.time_stamp() + | 619 kTouchId, move1.time_stamp() + |
| 643 base::TimeDelta::FromMilliseconds(50)); | 620 base::TimeDelta::FromMilliseconds(50)); |
| 644 move2.set_radius_x(14); | 621 move2.set_radius_x(14); |
| 645 move2.set_radius_y(10); | 622 move2.set_radius_y(10); |
| 646 root_window()->DispatchTouchEvent(&move2); | 623 root_window()->DispatchTouchEvent(&move2); |
| 647 EXPECT_FALSE(delegate->tap()); | 624 EXPECT_FALSE(delegate->tap()); |
| 648 EXPECT_FALSE(delegate->tap_down()); | 625 EXPECT_FALSE(delegate->tap_down()); |
| 649 EXPECT_FALSE(delegate->begin()); | |
| 650 EXPECT_FALSE(delegate->double_tap()); | 626 EXPECT_FALSE(delegate->double_tap()); |
| 651 EXPECT_FALSE(delegate->scroll_begin()); | 627 EXPECT_FALSE(delegate->scroll_begin()); |
| 652 EXPECT_FALSE(delegate->scroll_update()); | 628 EXPECT_FALSE(delegate->scroll_update()); |
| 653 EXPECT_FALSE(delegate->scroll_end()); | 629 EXPECT_FALSE(delegate->scroll_end()); |
| 654 EXPECT_FALSE(delegate->long_press()); | 630 EXPECT_FALSE(delegate->long_press()); |
| 655 | 631 |
| 656 delegate->Reset(); | 632 delegate->Reset(); |
| 657 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(401, 149), | 633 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(401, 149), |
| 658 kTouchId, press.time_stamp() + | 634 kTouchId, press.time_stamp() + |
| 659 base::TimeDelta::FromMilliseconds(50)); | 635 base::TimeDelta::FromMilliseconds(50)); |
| 660 release.set_radius_x(8); | 636 release.set_radius_x(8); |
| 661 release.set_radius_y(9); | 637 release.set_radius_y(9); |
| 662 | 638 |
| 663 root_window()->DispatchTouchEvent(&release); | 639 root_window()->DispatchTouchEvent(&release); |
| 664 EXPECT_TRUE(delegate->tap()); | 640 EXPECT_TRUE(delegate->tap()); |
| 665 EXPECT_FALSE(delegate->tap_down()); | 641 EXPECT_FALSE(delegate->tap_down()); |
| 666 EXPECT_FALSE(delegate->begin()); | |
| 667 EXPECT_TRUE(delegate->end()); | |
| 668 EXPECT_FALSE(delegate->double_tap()); | 642 EXPECT_FALSE(delegate->double_tap()); |
| 669 EXPECT_FALSE(delegate->scroll_begin()); | 643 EXPECT_FALSE(delegate->scroll_begin()); |
| 670 EXPECT_FALSE(delegate->scroll_update()); | 644 EXPECT_FALSE(delegate->scroll_update()); |
| 671 EXPECT_FALSE(delegate->scroll_end()); | 645 EXPECT_FALSE(delegate->scroll_end()); |
| 672 | 646 |
| 673 gfx::Point actual_point(delegate->tap_location()); | 647 gfx::Point actual_point(delegate->tap_location()); |
| 674 EXPECT_EQ(17, delegate->radius_x()); | 648 EXPECT_EQ(17, delegate->radius_x()); |
| 675 EXPECT_EQ(18, delegate->radius_y()); | 649 EXPECT_EQ(18, delegate->radius_y()); |
| 676 EXPECT_EQ(396, actual_point.x()); | 650 EXPECT_EQ(396, actual_point.x()); |
| 677 EXPECT_EQ(149, actual_point.y()); | 651 EXPECT_EQ(149, actual_point.y()); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 688 gfx::Rect bounds(100, 200, kWindowWidth, kWindowHeight); | 662 gfx::Rect bounds(100, 200, kWindowWidth, kWindowHeight); |
| 689 scoped_ptr<aura::Window> window(CreateTestWindowWithDelegate( | 663 scoped_ptr<aura::Window> window(CreateTestWindowWithDelegate( |
| 690 delegate.get(), -1234, bounds, NULL)); | 664 delegate.get(), -1234, bounds, NULL)); |
| 691 | 665 |
| 692 delegate->Reset(); | 666 delegate->Reset(); |
| 693 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), | 667 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), |
| 694 kTouchId, GetTime()); | 668 kTouchId, GetTime()); |
| 695 root_window()->DispatchTouchEvent(&press); | 669 root_window()->DispatchTouchEvent(&press); |
| 696 EXPECT_FALSE(delegate->tap()); | 670 EXPECT_FALSE(delegate->tap()); |
| 697 EXPECT_TRUE(delegate->tap_down()); | 671 EXPECT_TRUE(delegate->tap_down()); |
| 698 EXPECT_TRUE(delegate->begin()); | |
| 699 EXPECT_FALSE(delegate->double_tap()); | 672 EXPECT_FALSE(delegate->double_tap()); |
| 700 EXPECT_FALSE(delegate->scroll_begin()); | 673 EXPECT_FALSE(delegate->scroll_begin()); |
| 701 EXPECT_FALSE(delegate->scroll_update()); | 674 EXPECT_FALSE(delegate->scroll_update()); |
| 702 EXPECT_FALSE(delegate->scroll_end()); | 675 EXPECT_FALSE(delegate->scroll_end()); |
| 703 | 676 |
| 704 // Move the touch-point enough so that it is considered as a scroll. This | 677 // Move the touch-point enough so that it is considered as a scroll. This |
| 705 // should generate both SCROLL_BEGIN and SCROLL_UPDATE gestures. | 678 // should generate both SCROLL_BEGIN and SCROLL_UPDATE gestures. |
| 706 // The first movement is diagonal, to ensure that we have a free scroll, | 679 // The first movement is diagonal, to ensure that we have a free scroll, |
| 707 // and not a rail scroll. | 680 // and not a rail scroll. |
| 708 SendScrollEvent(root_window(), 130, 230, kTouchId, delegate.get()); | 681 SendScrollEvent(root_window(), 130, 230, kTouchId, delegate.get()); |
| 709 EXPECT_FALSE(delegate->tap()); | 682 EXPECT_FALSE(delegate->tap()); |
| 710 EXPECT_FALSE(delegate->tap_down()); | 683 EXPECT_FALSE(delegate->tap_down()); |
| 711 EXPECT_FALSE(delegate->begin()); | |
| 712 EXPECT_FALSE(delegate->double_tap()); | 684 EXPECT_FALSE(delegate->double_tap()); |
| 713 EXPECT_TRUE(delegate->scroll_begin()); | 685 EXPECT_TRUE(delegate->scroll_begin()); |
| 714 EXPECT_TRUE(delegate->scroll_update()); | 686 EXPECT_TRUE(delegate->scroll_update()); |
| 715 EXPECT_FALSE(delegate->scroll_end()); | 687 EXPECT_FALSE(delegate->scroll_end()); |
| 716 EXPECT_EQ(29, delegate->scroll_x()); | 688 EXPECT_EQ(29, delegate->scroll_x()); |
| 717 EXPECT_EQ(29, delegate->scroll_y()); | 689 EXPECT_EQ(29, delegate->scroll_y()); |
| 718 EXPECT_EQ(gfx::Point(1, 1).ToString(), | 690 EXPECT_EQ(gfx::Point(1, 1).ToString(), |
| 719 delegate->scroll_begin_position().ToString()); | 691 delegate->scroll_begin_position().ToString()); |
| 720 | 692 |
| 721 // Move some more to generate a few more scroll updates. | 693 // Move some more to generate a few more scroll updates. |
| 722 SendScrollEvent(root_window(), 110, 211, kTouchId, delegate.get()); | 694 SendScrollEvent(root_window(), 110, 211, kTouchId, delegate.get()); |
| 723 EXPECT_FALSE(delegate->tap()); | 695 EXPECT_FALSE(delegate->tap()); |
| 724 EXPECT_FALSE(delegate->tap_down()); | 696 EXPECT_FALSE(delegate->tap_down()); |
| 725 EXPECT_FALSE(delegate->begin()); | |
| 726 EXPECT_FALSE(delegate->double_tap()); | 697 EXPECT_FALSE(delegate->double_tap()); |
| 727 EXPECT_FALSE(delegate->scroll_begin()); | 698 EXPECT_FALSE(delegate->scroll_begin()); |
| 728 EXPECT_TRUE(delegate->scroll_update()); | 699 EXPECT_TRUE(delegate->scroll_update()); |
| 729 EXPECT_FALSE(delegate->scroll_end()); | 700 EXPECT_FALSE(delegate->scroll_end()); |
| 730 EXPECT_EQ(-20, delegate->scroll_x()); | 701 EXPECT_EQ(-20, delegate->scroll_x()); |
| 731 EXPECT_EQ(-19, delegate->scroll_y()); | 702 EXPECT_EQ(-19, delegate->scroll_y()); |
| 732 | 703 |
| 733 SendScrollEvent(root_window(), 140, 215, kTouchId, delegate.get()); | 704 SendScrollEvent(root_window(), 140, 215, kTouchId, delegate.get()); |
| 734 EXPECT_FALSE(delegate->tap()); | 705 EXPECT_FALSE(delegate->tap()); |
| 735 EXPECT_FALSE(delegate->tap_down()); | 706 EXPECT_FALSE(delegate->tap_down()); |
| 736 EXPECT_FALSE(delegate->begin()); | |
| 737 EXPECT_FALSE(delegate->double_tap()); | 707 EXPECT_FALSE(delegate->double_tap()); |
| 738 EXPECT_FALSE(delegate->scroll_begin()); | 708 EXPECT_FALSE(delegate->scroll_begin()); |
| 739 EXPECT_TRUE(delegate->scroll_update()); | 709 EXPECT_TRUE(delegate->scroll_update()); |
| 740 EXPECT_FALSE(delegate->scroll_end()); | 710 EXPECT_FALSE(delegate->scroll_end()); |
| 741 EXPECT_EQ(30, delegate->scroll_x()); | 711 EXPECT_EQ(30, delegate->scroll_x()); |
| 742 EXPECT_EQ(4, delegate->scroll_y()); | 712 EXPECT_EQ(4, delegate->scroll_y()); |
| 743 | 713 |
| 744 // Release the touch. This should end the scroll. | 714 // Release the touch. This should end the scroll. |
| 745 delegate->Reset(); | 715 delegate->Reset(); |
| 746 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(101, 201), | 716 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(101, 201), |
| 747 kTouchId, press.time_stamp() + | 717 kTouchId, press.time_stamp() + |
| 748 base::TimeDelta::FromMilliseconds(50)); | 718 base::TimeDelta::FromMilliseconds(50)); |
| 749 root_window()->DispatchTouchEvent(&release); | 719 root_window()->DispatchTouchEvent(&release); |
| 750 EXPECT_FALSE(delegate->tap()); | 720 EXPECT_FALSE(delegate->tap()); |
| 751 EXPECT_FALSE(delegate->tap_down()); | 721 EXPECT_FALSE(delegate->tap_down()); |
| 752 EXPECT_FALSE(delegate->begin()); | |
| 753 EXPECT_TRUE(delegate->end()); | |
| 754 EXPECT_FALSE(delegate->double_tap()); | 722 EXPECT_FALSE(delegate->double_tap()); |
| 755 EXPECT_FALSE(delegate->scroll_begin()); | 723 EXPECT_FALSE(delegate->scroll_begin()); |
| 756 EXPECT_FALSE(delegate->scroll_update()); | 724 EXPECT_FALSE(delegate->scroll_update()); |
| 757 EXPECT_TRUE(delegate->scroll_end()); | 725 EXPECT_TRUE(delegate->scroll_end()); |
| 758 } | 726 } |
| 759 | 727 |
| 760 // Check Scroll End Events report correct velocities | 728 // Check Scroll End Events report correct velocities |
| 761 // if the user was on a horizontal rail | 729 // if the user was on a horizontal rail |
| 762 TEST_F(GestureRecognizerTest, GestureEventHorizontalRailFling) { | 730 TEST_F(GestureRecognizerTest, GestureEventHorizontalRailFling) { |
| 763 scoped_ptr<GestureEventConsumeDelegate> delegate( | 731 scoped_ptr<GestureEventConsumeDelegate> delegate( |
| (...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 881 TimerTestGestureSequence* gesture_sequence = | 849 TimerTestGestureSequence* gesture_sequence = |
| 882 static_cast<TimerTestGestureSequence*>( | 850 static_cast<TimerTestGestureSequence*>( |
| 883 gesture_recognizer->GetGestureSequenceForTesting(window.get())); | 851 gesture_recognizer->GetGestureSequenceForTesting(window.get())); |
| 884 | 852 |
| 885 root_window()->SetGestureRecognizerForTesting(gesture_recognizer); | 853 root_window()->SetGestureRecognizerForTesting(gesture_recognizer); |
| 886 | 854 |
| 887 TouchEvent press1(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), | 855 TouchEvent press1(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), |
| 888 kTouchId, GetTime()); | 856 kTouchId, GetTime()); |
| 889 root_window()->DispatchTouchEvent(&press1); | 857 root_window()->DispatchTouchEvent(&press1); |
| 890 EXPECT_TRUE(delegate->tap_down()); | 858 EXPECT_TRUE(delegate->tap_down()); |
| 891 EXPECT_TRUE(delegate->begin()); | |
| 892 | 859 |
| 893 // We haven't pressed long enough for a long press to occur | 860 // We haven't pressed long enough for a long press to occur |
| 894 EXPECT_FALSE(delegate->long_press()); | 861 EXPECT_FALSE(delegate->long_press()); |
| 895 | 862 |
| 896 // Wait until the timer runs out | 863 // Wait until the timer runs out |
| 897 gesture_sequence->ForceTimeout(); | 864 gesture_sequence->ForceTimeout(); |
| 898 EXPECT_TRUE(delegate->long_press()); | 865 EXPECT_TRUE(delegate->long_press()); |
| 899 EXPECT_EQ(0, delegate->touch_id()); | 866 EXPECT_EQ(0, delegate->touch_id()); |
| 900 | 867 |
| 901 delegate->Reset(); | 868 delegate->Reset(); |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 965 static_cast<TimerTestGestureSequence*>( | 932 static_cast<TimerTestGestureSequence*>( |
| 966 gesture_recognizer->GetGestureSequenceForTesting(window.get())); | 933 gesture_recognizer->GetGestureSequenceForTesting(window.get())); |
| 967 | 934 |
| 968 root_window()->SetGestureRecognizerForTesting(gesture_recognizer); | 935 root_window()->SetGestureRecognizerForTesting(gesture_recognizer); |
| 969 | 936 |
| 970 delegate->Reset(); | 937 delegate->Reset(); |
| 971 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), | 938 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), |
| 972 kTouchId1, GetTime()); | 939 kTouchId1, GetTime()); |
| 973 root_window()->DispatchTouchEvent(&press); | 940 root_window()->DispatchTouchEvent(&press); |
| 974 EXPECT_TRUE(delegate->tap_down()); | 941 EXPECT_TRUE(delegate->tap_down()); |
| 975 EXPECT_TRUE(delegate->begin()); | |
| 976 | 942 |
| 977 // We haven't pressed long enough for a long press to occur | 943 // We haven't pressed long enough for a long press to occur |
| 978 EXPECT_FALSE(delegate->long_press()); | 944 EXPECT_FALSE(delegate->long_press()); |
| 979 | 945 |
| 980 // Second tap, to cancel the long press | 946 // Second tap, to cancel the long press |
| 981 delegate->Reset(); | 947 delegate->Reset(); |
| 982 TouchEvent press2(ui::ET_TOUCH_PRESSED, gfx::Point(10, 10), | 948 TouchEvent press2(ui::ET_TOUCH_PRESSED, gfx::Point(10, 10), |
| 983 kTouchId2, GetTime()); | 949 kTouchId2, GetTime()); |
| 984 root_window()->DispatchTouchEvent(&press2); | 950 root_window()->DispatchTouchEvent(&press2); |
| 985 EXPECT_FALSE(delegate->tap_down()); // no touch down for second tap. | 951 EXPECT_FALSE(delegate->tap_down()); // no touch down for second tap. |
| 986 EXPECT_TRUE(delegate->begin()); | |
| 987 | 952 |
| 988 // Wait until the timer runs out | 953 // Wait until the timer runs out |
| 989 gesture_sequence->ForceTimeout(); | 954 gesture_sequence->ForceTimeout(); |
| 990 | 955 |
| 991 // No long press occurred | 956 // No long press occurred |
| 992 EXPECT_FALSE(delegate->long_press()); | 957 EXPECT_FALSE(delegate->long_press()); |
| 993 | 958 |
| 994 delegate->Reset(); | 959 delegate->Reset(); |
| 995 TouchEvent release1(ui::ET_TOUCH_RELEASED, gfx::Point(101, 201), | 960 TouchEvent release1(ui::ET_TOUCH_RELEASED, gfx::Point(101, 201), |
| 996 kTouchId1, GetTime()); | 961 kTouchId1, GetTime()); |
| (...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1240 | 1205 |
| 1241 queued_delegate->set_window(queue.get()); | 1206 queued_delegate->set_window(queue.get()); |
| 1242 | 1207 |
| 1243 // Touch down on the window. This should not generate any gesture event. | 1208 // Touch down on the window. This should not generate any gesture event. |
| 1244 queued_delegate->Reset(); | 1209 queued_delegate->Reset(); |
| 1245 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), | 1210 TouchEvent press(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), |
| 1246 kTouchId1, GetTime()); | 1211 kTouchId1, GetTime()); |
| 1247 root_window()->DispatchTouchEvent(&press); | 1212 root_window()->DispatchTouchEvent(&press); |
| 1248 EXPECT_FALSE(queued_delegate->tap()); | 1213 EXPECT_FALSE(queued_delegate->tap()); |
| 1249 EXPECT_FALSE(queued_delegate->tap_down()); | 1214 EXPECT_FALSE(queued_delegate->tap_down()); |
| 1250 EXPECT_FALSE(queued_delegate->begin()); | |
| 1251 EXPECT_FALSE(queued_delegate->double_tap()); | 1215 EXPECT_FALSE(queued_delegate->double_tap()); |
| 1252 EXPECT_FALSE(queued_delegate->scroll_begin()); | 1216 EXPECT_FALSE(queued_delegate->scroll_begin()); |
| 1253 EXPECT_FALSE(queued_delegate->scroll_update()); | 1217 EXPECT_FALSE(queued_delegate->scroll_update()); |
| 1254 EXPECT_FALSE(queued_delegate->scroll_end()); | 1218 EXPECT_FALSE(queued_delegate->scroll_end()); |
| 1255 | 1219 |
| 1256 // Introduce some delay before the touch is released so that it is recognized | 1220 // Introduce some delay before the touch is released so that it is recognized |
| 1257 // as a tap. However, this still should not create any gesture events. | 1221 // as a tap. However, this still should not create any gesture events. |
| 1258 queued_delegate->Reset(); | 1222 queued_delegate->Reset(); |
| 1259 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(101, 201), | 1223 TouchEvent release(ui::ET_TOUCH_RELEASED, gfx::Point(101, 201), |
| 1260 kTouchId1, press.time_stamp() + | 1224 kTouchId1, press.time_stamp() + |
| 1261 base::TimeDelta::FromMilliseconds(50)); | 1225 base::TimeDelta::FromMilliseconds(50)); |
| 1262 root_window()->DispatchTouchEvent(&release); | 1226 root_window()->DispatchTouchEvent(&release); |
| 1263 EXPECT_FALSE(queued_delegate->tap()); | 1227 EXPECT_FALSE(queued_delegate->tap()); |
| 1264 EXPECT_FALSE(queued_delegate->tap_down()); | 1228 EXPECT_FALSE(queued_delegate->tap_down()); |
| 1265 EXPECT_FALSE(queued_delegate->begin()); | |
| 1266 EXPECT_FALSE(queued_delegate->end()); | |
| 1267 EXPECT_FALSE(queued_delegate->double_tap()); | 1229 EXPECT_FALSE(queued_delegate->double_tap()); |
| 1268 EXPECT_FALSE(queued_delegate->scroll_begin()); | 1230 EXPECT_FALSE(queued_delegate->scroll_begin()); |
| 1269 EXPECT_FALSE(queued_delegate->scroll_update()); | 1231 EXPECT_FALSE(queued_delegate->scroll_update()); |
| 1270 EXPECT_FALSE(queued_delegate->scroll_end()); | 1232 EXPECT_FALSE(queued_delegate->scroll_end()); |
| 1271 | 1233 |
| 1272 // Create another window, and place a touch-down on it. This should create a | 1234 // Create another window, and place a touch-down on it. This should create a |
| 1273 // tap-down gesture. | 1235 // tap-down gesture. |
| 1274 scoped_ptr<GestureEventConsumeDelegate> delegate( | 1236 scoped_ptr<GestureEventConsumeDelegate> delegate( |
| 1275 new GestureEventConsumeDelegate()); | 1237 new GestureEventConsumeDelegate()); |
| 1276 scoped_ptr<aura::Window> window(CreateTestWindowWithDelegate( | 1238 scoped_ptr<aura::Window> window(CreateTestWindowWithDelegate( |
| 1277 delegate.get(), -2345, gfx::Rect(0, 0, 50, 50), NULL)); | 1239 delegate.get(), -2345, gfx::Rect(0, 0, 50, 50), NULL)); |
| 1278 delegate->Reset(); | 1240 delegate->Reset(); |
| 1279 TouchEvent press2(ui::ET_TOUCH_PRESSED, gfx::Point(10, 20), | 1241 TouchEvent press2(ui::ET_TOUCH_PRESSED, gfx::Point(10, 20), |
| 1280 kTouchId2, GetTime()); | 1242 kTouchId2, GetTime()); |
| 1281 root_window()->DispatchTouchEvent(&press2); | 1243 root_window()->DispatchTouchEvent(&press2); |
| 1282 EXPECT_FALSE(delegate->tap()); | 1244 EXPECT_FALSE(delegate->tap()); |
| 1283 EXPECT_TRUE(delegate->tap_down()); | 1245 EXPECT_TRUE(delegate->tap_down()); |
| 1284 EXPECT_FALSE(queued_delegate->begin()); | |
| 1285 EXPECT_FALSE(queued_delegate->end()); | |
| 1286 EXPECT_FALSE(delegate->double_tap()); | 1246 EXPECT_FALSE(delegate->double_tap()); |
| 1287 EXPECT_FALSE(delegate->scroll_begin()); | 1247 EXPECT_FALSE(delegate->scroll_begin()); |
| 1288 EXPECT_FALSE(delegate->scroll_update()); | 1248 EXPECT_FALSE(delegate->scroll_update()); |
| 1289 EXPECT_FALSE(delegate->scroll_end()); | 1249 EXPECT_FALSE(delegate->scroll_end()); |
| 1290 | 1250 |
| 1291 TouchEvent release2(ui::ET_TOUCH_RELEASED, gfx::Point(10, 20), | 1251 TouchEvent release2(ui::ET_TOUCH_RELEASED, gfx::Point(10, 20), |
| 1292 kTouchId2, GetTime()); | 1252 kTouchId2, GetTime()); |
| 1293 root_window()->DispatchTouchEvent(&release2); | 1253 root_window()->DispatchTouchEvent(&release2); |
| 1294 | 1254 |
| 1295 // Process the first queued event. | 1255 // Process the first queued event. |
| 1296 queued_delegate->Reset(); | 1256 queued_delegate->Reset(); |
| 1297 queued_delegate->ReceivedAck(); | 1257 queued_delegate->ReceivedAck(); |
| 1298 EXPECT_FALSE(queued_delegate->tap()); | 1258 EXPECT_FALSE(queued_delegate->tap()); |
| 1299 EXPECT_TRUE(queued_delegate->tap_down()); | 1259 EXPECT_TRUE(queued_delegate->tap_down()); |
| 1300 EXPECT_TRUE(queued_delegate->begin()); | |
| 1301 EXPECT_FALSE(queued_delegate->end()); | |
| 1302 EXPECT_FALSE(queued_delegate->double_tap()); | 1260 EXPECT_FALSE(queued_delegate->double_tap()); |
| 1303 EXPECT_FALSE(queued_delegate->scroll_begin()); | 1261 EXPECT_FALSE(queued_delegate->scroll_begin()); |
| 1304 EXPECT_FALSE(queued_delegate->scroll_update()); | 1262 EXPECT_FALSE(queued_delegate->scroll_update()); |
| 1305 EXPECT_FALSE(queued_delegate->scroll_end()); | 1263 EXPECT_FALSE(queued_delegate->scroll_end()); |
| 1306 | 1264 |
| 1307 // Now, process the second queued event. | 1265 // Now, process the second queued event. |
| 1308 queued_delegate->Reset(); | 1266 queued_delegate->Reset(); |
| 1309 queued_delegate->ReceivedAck(); | 1267 queued_delegate->ReceivedAck(); |
| 1310 EXPECT_TRUE(queued_delegate->tap()); | 1268 EXPECT_TRUE(queued_delegate->tap()); |
| 1311 EXPECT_FALSE(queued_delegate->tap_down()); | 1269 EXPECT_FALSE(queued_delegate->tap_down()); |
| 1312 EXPECT_FALSE(queued_delegate->begin()); | |
| 1313 EXPECT_TRUE(queued_delegate->end()); | |
| 1314 EXPECT_FALSE(queued_delegate->double_tap()); | 1270 EXPECT_FALSE(queued_delegate->double_tap()); |
| 1315 EXPECT_FALSE(queued_delegate->scroll_begin()); | 1271 EXPECT_FALSE(queued_delegate->scroll_begin()); |
| 1316 EXPECT_FALSE(queued_delegate->scroll_update()); | 1272 EXPECT_FALSE(queued_delegate->scroll_update()); |
| 1317 EXPECT_FALSE(queued_delegate->scroll_end()); | 1273 EXPECT_FALSE(queued_delegate->scroll_end()); |
| 1318 | 1274 |
| 1319 // Start all over. Press on the first window, then press again on the second | 1275 // Start all over. Press on the first window, then press again on the second |
| 1320 // window. The second press should still go to the first window. | 1276 // window. The second press should still go to the first window. |
| 1321 queued_delegate->Reset(); | 1277 queued_delegate->Reset(); |
| 1322 TouchEvent press3(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), | 1278 TouchEvent press3(ui::ET_TOUCH_PRESSED, gfx::Point(101, 201), |
| 1323 kTouchId1, GetTime()); | 1279 kTouchId1, GetTime()); |
| 1324 root_window()->DispatchTouchEvent(&press3); | 1280 root_window()->DispatchTouchEvent(&press3); |
| 1325 EXPECT_FALSE(queued_delegate->tap()); | 1281 EXPECT_FALSE(queued_delegate->tap()); |
| 1326 EXPECT_FALSE(queued_delegate->tap_down()); | 1282 EXPECT_FALSE(queued_delegate->tap_down()); |
| 1327 EXPECT_FALSE(queued_delegate->begin()); | |
| 1328 EXPECT_FALSE(queued_delegate->end()); | |
| 1329 EXPECT_FALSE(queued_delegate->begin()); | |
| 1330 EXPECT_FALSE(queued_delegate->end()); | |
| 1331 EXPECT_FALSE(queued_delegate->double_tap()); | 1283 EXPECT_FALSE(queued_delegate->double_tap()); |
| 1332 EXPECT_FALSE(queued_delegate->scroll_begin()); | 1284 EXPECT_FALSE(queued_delegate->scroll_begin()); |
| 1333 EXPECT_FALSE(queued_delegate->scroll_update()); | 1285 EXPECT_FALSE(queued_delegate->scroll_update()); |
| 1334 EXPECT_FALSE(queued_delegate->scroll_end()); | 1286 EXPECT_FALSE(queued_delegate->scroll_end()); |
| 1335 | 1287 |
| 1336 queued_delegate->Reset(); | 1288 queued_delegate->Reset(); |
| 1337 delegate->Reset(); | 1289 delegate->Reset(); |
| 1338 TouchEvent press4(ui::ET_TOUCH_PRESSED, gfx::Point(103, 203), | 1290 TouchEvent press4(ui::ET_TOUCH_PRESSED, gfx::Point(103, 203), |
| 1339 kTouchId2, GetTime()); | 1291 kTouchId2, GetTime()); |
| 1340 root_window()->DispatchTouchEvent(&press4); | 1292 root_window()->DispatchTouchEvent(&press4); |
| 1341 EXPECT_FALSE(delegate->tap()); | 1293 EXPECT_FALSE(delegate->tap()); |
| 1342 EXPECT_FALSE(delegate->tap_down()); | 1294 EXPECT_FALSE(delegate->tap_down()); |
| 1343 EXPECT_FALSE(delegate->begin()); | |
| 1344 EXPECT_FALSE(delegate->end()); | |
| 1345 EXPECT_FALSE(delegate->double_tap()); | 1295 EXPECT_FALSE(delegate->double_tap()); |
| 1346 EXPECT_FALSE(delegate->scroll_begin()); | 1296 EXPECT_FALSE(delegate->scroll_begin()); |
| 1347 EXPECT_FALSE(delegate->scroll_update()); | 1297 EXPECT_FALSE(delegate->scroll_update()); |
| 1348 EXPECT_FALSE(delegate->scroll_end()); | 1298 EXPECT_FALSE(delegate->scroll_end()); |
| 1349 EXPECT_FALSE(queued_delegate->tap()); | 1299 EXPECT_FALSE(queued_delegate->tap()); |
| 1350 EXPECT_FALSE(queued_delegate->tap_down()); | 1300 EXPECT_FALSE(queued_delegate->tap_down()); |
| 1351 EXPECT_FALSE(queued_delegate->begin()); | |
| 1352 EXPECT_FALSE(queued_delegate->end()); | |
| 1353 EXPECT_FALSE(queued_delegate->double_tap()); | 1301 EXPECT_FALSE(queued_delegate->double_tap()); |
| 1354 EXPECT_FALSE(queued_delegate->scroll_begin()); | 1302 EXPECT_FALSE(queued_delegate->scroll_begin()); |
| 1355 EXPECT_FALSE(queued_delegate->scroll_update()); | 1303 EXPECT_FALSE(queued_delegate->scroll_update()); |
| 1356 EXPECT_FALSE(queued_delegate->scroll_end()); | 1304 EXPECT_FALSE(queued_delegate->scroll_end()); |
| 1357 | 1305 |
| 1358 // Move the second touch-point enough so that it is considered a pinch. This | 1306 // Move the second touch-point enough so that it is considered a pinch. This |
| 1359 // should generate both SCROLL_BEGIN and PINCH_BEGIN gestures. | 1307 // should generate both SCROLL_BEGIN and PINCH_BEGIN gestures. |
| 1360 queued_delegate->Reset(); | 1308 queued_delegate->Reset(); |
| 1361 delegate->Reset(); | 1309 delegate->Reset(); |
| 1362 int x_move = ui::GestureConfiguration::max_touch_move_in_pixels_for_click(); | 1310 int x_move = ui::GestureConfiguration::max_touch_move_in_pixels_for_click(); |
| 1363 TouchEvent move(ui::ET_TOUCH_MOVED, gfx::Point(103 + x_move, 203), | 1311 TouchEvent move(ui::ET_TOUCH_MOVED, gfx::Point(103 + x_move, 203), |
| 1364 kTouchId2, GetTime()); | 1312 kTouchId2, GetTime()); |
| 1365 root_window()->DispatchTouchEvent(&move); | 1313 root_window()->DispatchTouchEvent(&move); |
| 1366 EXPECT_FALSE(delegate->tap()); | 1314 EXPECT_FALSE(delegate->tap()); |
| 1367 EXPECT_FALSE(delegate->tap_down()); | 1315 EXPECT_FALSE(delegate->tap_down()); |
| 1368 EXPECT_FALSE(delegate->begin()); | |
| 1369 EXPECT_FALSE(delegate->double_tap()); | 1316 EXPECT_FALSE(delegate->double_tap()); |
| 1370 EXPECT_FALSE(delegate->scroll_begin()); | 1317 EXPECT_FALSE(delegate->scroll_begin()); |
| 1371 EXPECT_FALSE(delegate->scroll_update()); | 1318 EXPECT_FALSE(delegate->scroll_update()); |
| 1372 EXPECT_FALSE(delegate->scroll_end()); | 1319 EXPECT_FALSE(delegate->scroll_end()); |
| 1373 EXPECT_FALSE(queued_delegate->tap()); | 1320 EXPECT_FALSE(queued_delegate->tap()); |
| 1374 EXPECT_FALSE(queued_delegate->tap_down()); | 1321 EXPECT_FALSE(queued_delegate->tap_down()); |
| 1375 EXPECT_FALSE(queued_delegate->begin()); | |
| 1376 EXPECT_FALSE(queued_delegate->double_tap()); | 1322 EXPECT_FALSE(queued_delegate->double_tap()); |
| 1377 EXPECT_FALSE(queued_delegate->scroll_begin()); | 1323 EXPECT_FALSE(queued_delegate->scroll_begin()); |
| 1378 EXPECT_FALSE(queued_delegate->scroll_update()); | 1324 EXPECT_FALSE(queued_delegate->scroll_update()); |
| 1379 EXPECT_FALSE(queued_delegate->scroll_end()); | 1325 EXPECT_FALSE(queued_delegate->scroll_end()); |
| 1380 | 1326 |
| 1381 queued_delegate->Reset(); | 1327 queued_delegate->Reset(); |
| 1382 queued_delegate->ReceivedAck(); | 1328 queued_delegate->ReceivedAck(); |
| 1383 EXPECT_FALSE(queued_delegate->tap()); | 1329 EXPECT_FALSE(queued_delegate->tap()); |
| 1384 EXPECT_TRUE(queued_delegate->tap_down()); | 1330 EXPECT_TRUE(queued_delegate->tap_down()); |
| 1385 EXPECT_TRUE(queued_delegate->begin()); | |
| 1386 EXPECT_FALSE(queued_delegate->end()); | |
| 1387 EXPECT_FALSE(queued_delegate->double_tap()); | 1331 EXPECT_FALSE(queued_delegate->double_tap()); |
| 1388 EXPECT_FALSE(queued_delegate->scroll_begin()); | 1332 EXPECT_FALSE(queued_delegate->scroll_begin()); |
| 1389 EXPECT_FALSE(queued_delegate->scroll_update()); | 1333 EXPECT_FALSE(queued_delegate->scroll_update()); |
| 1390 EXPECT_FALSE(queued_delegate->scroll_end()); | 1334 EXPECT_FALSE(queued_delegate->scroll_end()); |
| 1391 | 1335 |
| 1392 queued_delegate->Reset(); | 1336 queued_delegate->Reset(); |
| 1393 queued_delegate->ReceivedAck(); | 1337 queued_delegate->ReceivedAck(); |
| 1394 EXPECT_FALSE(queued_delegate->tap()); | 1338 EXPECT_FALSE(queued_delegate->tap()); |
| 1395 EXPECT_FALSE(queued_delegate->tap_down()); // no touch down for second tap. | 1339 EXPECT_FALSE(queued_delegate->tap_down()); // no touch down for second tap. |
| 1396 EXPECT_TRUE(queued_delegate->begin()); | |
| 1397 EXPECT_FALSE(queued_delegate->end()); | |
| 1398 EXPECT_FALSE(queued_delegate->double_tap()); | 1340 EXPECT_FALSE(queued_delegate->double_tap()); |
| 1399 EXPECT_FALSE(queued_delegate->scroll_begin()); | 1341 EXPECT_FALSE(queued_delegate->scroll_begin()); |
| 1400 EXPECT_FALSE(queued_delegate->scroll_update()); | 1342 EXPECT_FALSE(queued_delegate->scroll_update()); |
| 1401 EXPECT_FALSE(queued_delegate->scroll_end()); | 1343 EXPECT_FALSE(queued_delegate->scroll_end()); |
| 1402 EXPECT_FALSE(queued_delegate->pinch_begin()); | 1344 EXPECT_FALSE(queued_delegate->pinch_begin()); |
| 1403 EXPECT_FALSE(queued_delegate->pinch_update()); | 1345 EXPECT_FALSE(queued_delegate->pinch_update()); |
| 1404 EXPECT_FALSE(queued_delegate->pinch_end()); | 1346 EXPECT_FALSE(queued_delegate->pinch_end()); |
| 1405 | 1347 |
| 1406 queued_delegate->Reset(); | 1348 queued_delegate->Reset(); |
| 1407 queued_delegate->ReceivedAck(); | 1349 queued_delegate->ReceivedAck(); |
| 1408 EXPECT_FALSE(queued_delegate->tap()); | 1350 EXPECT_FALSE(queued_delegate->tap()); |
| 1409 EXPECT_FALSE(queued_delegate->tap_down()); | 1351 EXPECT_FALSE(queued_delegate->tap_down()); |
| 1410 EXPECT_FALSE(queued_delegate->begin()); | |
| 1411 EXPECT_FALSE(queued_delegate->end()); | |
| 1412 EXPECT_FALSE(queued_delegate->double_tap()); | 1352 EXPECT_FALSE(queued_delegate->double_tap()); |
| 1413 EXPECT_TRUE(queued_delegate->scroll_begin()); | 1353 EXPECT_TRUE(queued_delegate->scroll_begin()); |
| 1414 EXPECT_FALSE(queued_delegate->scroll_update()); | 1354 EXPECT_FALSE(queued_delegate->scroll_update()); |
| 1415 EXPECT_FALSE(queued_delegate->scroll_end()); | 1355 EXPECT_FALSE(queued_delegate->scroll_end()); |
| 1416 EXPECT_TRUE(queued_delegate->pinch_begin()); | 1356 EXPECT_TRUE(queued_delegate->pinch_begin()); |
| 1417 EXPECT_FALSE(queued_delegate->pinch_update()); | 1357 EXPECT_FALSE(queued_delegate->pinch_update()); |
| 1418 EXPECT_FALSE(queued_delegate->pinch_end()); | 1358 EXPECT_FALSE(queued_delegate->pinch_end()); |
| 1419 } | 1359 } |
| 1420 | 1360 |
| 1421 // Check that appropriate touch events generate pinch gesture events. | 1361 // Check that appropriate touch events generate pinch gesture events. |
| (...skipping 413 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1835 generator.PressTouch(); | 1775 generator.PressTouch(); |
| 1836 RunAllPendingInMessageLoop(); | 1776 RunAllPendingInMessageLoop(); |
| 1837 | 1777 |
| 1838 EXPECT_TRUE(delegate->tap_down()); | 1778 EXPECT_TRUE(delegate->tap_down()); |
| 1839 | 1779 |
| 1840 scoped_ptr<aura::Window> capture(CreateTestWindowWithBounds( | 1780 scoped_ptr<aura::Window> capture(CreateTestWindowWithBounds( |
| 1841 gfx::Rect(10, 10, 200, 200), NULL)); | 1781 gfx::Rect(10, 10, 200, 200), NULL)); |
| 1842 capture->SetCapture(); | 1782 capture->SetCapture(); |
| 1843 RunAllPendingInMessageLoop(); | 1783 RunAllPendingInMessageLoop(); |
| 1844 | 1784 |
| 1845 EXPECT_TRUE(delegate->end()); | 1785 EXPECT_TRUE(delegate->tap_up()); |
| 1846 } | 1786 } |
| 1847 | 1787 |
| 1848 TEST_F(GestureRecognizerTest, TwoFingerTap) { | 1788 TEST_F(GestureRecognizerTest, TwoFingerTap) { |
| 1849 scoped_ptr<GestureEventConsumeDelegate> delegate( | 1789 scoped_ptr<GestureEventConsumeDelegate> delegate( |
| 1850 new GestureEventConsumeDelegate()); | 1790 new GestureEventConsumeDelegate()); |
| 1851 const int kWindowWidth = 123; | 1791 const int kWindowWidth = 123; |
| 1852 const int kWindowHeight = 45; | 1792 const int kWindowHeight = 45; |
| 1853 const int kTouchId1 = 2; | 1793 const int kTouchId1 = 2; |
| 1854 const int kTouchId2 = 3; | 1794 const int kTouchId2 = 3; |
| 1855 gfx::Rect bounds(100, 200, kWindowWidth, kWindowHeight); | 1795 gfx::Rect bounds(100, 200, kWindowWidth, kWindowHeight); |
| (...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2180 root_window()->DispatchTouchEvent(&press2); | 2120 root_window()->DispatchTouchEvent(&press2); |
| 2181 window->Hide(); | 2121 window->Hide(); |
| 2182 EXPECT_EQ(NULL, | 2122 EXPECT_EQ(NULL, |
| 2183 root_window()->gesture_recognizer()->GetTouchLockedTarget(&press1)); | 2123 root_window()->gesture_recognizer()->GetTouchLockedTarget(&press1)); |
| 2184 EXPECT_EQ(NULL, | 2124 EXPECT_EQ(NULL, |
| 2185 root_window()->gesture_recognizer()->GetTouchLockedTarget(&press2)); | 2125 root_window()->gesture_recognizer()->GetTouchLockedTarget(&press2)); |
| 2186 } | 2126 } |
| 2187 | 2127 |
| 2188 } // namespace test | 2128 } // namespace test |
| 2189 } // namespace aura | 2129 } // namespace aura |
| OLD | NEW |