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/command_line.h" | 5 #include "base/command_line.h" |
6 #include "base/memory/scoped_vector.h" | 6 #include "base/memory/scoped_vector.h" |
7 #include "base/run_loop.h" | 7 #include "base/run_loop.h" |
8 #include "base/strings/string_number_conversions.h" | 8 #include "base/strings/string_number_conversions.h" |
9 #include "base/timer/timer.h" | 9 #include "base/timer/timer.h" |
10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
(...skipping 617 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
628 | 628 |
629 } // namespace | 629 } // namespace |
630 | 630 |
631 class GestureRecognizerTest : public AuraTestBase, | 631 class GestureRecognizerTest : public AuraTestBase, |
632 public ::testing::WithParamInterface<bool> { | 632 public ::testing::WithParamInterface<bool> { |
633 public: | 633 public: |
634 GestureRecognizerTest() {} | 634 GestureRecognizerTest() {} |
635 | 635 |
636 virtual void SetUp() OVERRIDE { | 636 virtual void SetUp() OVERRIDE { |
637 AuraTestBase::SetUp(); | 637 AuraTestBase::SetUp(); |
638 ui::GestureConfiguration::set_min_touch_down_duration_in_seconds_for_click( | |
639 0.001); | |
640 ui::GestureConfiguration::set_show_press_delay_in_ms(2); | 638 ui::GestureConfiguration::set_show_press_delay_in_ms(2); |
641 ui::GestureConfiguration::set_long_press_time_in_seconds(0.003); | 639 ui::GestureConfiguration::set_long_press_time_in_seconds(0.003); |
642 } | 640 } |
643 | 641 |
644 DISALLOW_COPY_AND_ASSIGN(GestureRecognizerTest); | 642 DISALLOW_COPY_AND_ASSIGN(GestureRecognizerTest); |
645 }; | 643 }; |
646 | 644 |
647 // Check that appropriate touch events generate tap gesture events. | 645 // Check that appropriate touch events generate tap gesture events. |
648 TEST_F(GestureRecognizerTest, GestureEventTap) { | 646 TEST_F(GestureRecognizerTest, GestureEventTap) { |
649 scoped_ptr<GestureEventConsumeDelegate> delegate( | 647 scoped_ptr<GestureEventConsumeDelegate> delegate( |
(...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1001 tes.LeapForward(50)); | 999 tes.LeapForward(50)); |
1002 DispatchEventUsingWindowDispatcher(&release); | 1000 DispatchEventUsingWindowDispatcher(&release); |
1003 EXPECT_2_EVENTS(delegate->events(), | 1001 EXPECT_2_EVENTS(delegate->events(), |
1004 ui::ET_SCROLL_FLING_START, | 1002 ui::ET_SCROLL_FLING_START, |
1005 ui::ET_GESTURE_END); | 1003 ui::ET_GESTURE_END); |
1006 EXPECT_TRUE(delegate->bounding_box().IsEmpty()); | 1004 EXPECT_TRUE(delegate->bounding_box().IsEmpty()); |
1007 } | 1005 } |
1008 | 1006 |
1009 // Check that predicted scroll update positions are correct. | 1007 // Check that predicted scroll update positions are correct. |
1010 TEST_F(GestureRecognizerTest, GestureEventScrollPrediction) { | 1008 TEST_F(GestureRecognizerTest, GestureEventScrollPrediction) { |
1011 const double prediction_interval = 0.03; | 1009 // We'll start by moving the touch point by (5, 5). We want all of that |
1012 ui::GestureConfiguration::set_scroll_prediction_seconds(prediction_interval); | |
1013 // We'll start by moving the touch point by (5, 5). We want all of that | |
1014 // distance to be consumed by the slop, so we set the slop radius to | 1010 // distance to be consumed by the slop, so we set the slop radius to |
1015 // sqrt(5 * 5 + 5 * 5). | 1011 // sqrt(5 * 5 + 5 * 5). |
1016 ui::GestureConfiguration::set_max_touch_move_in_pixels_for_click( | 1012 ui::GestureConfiguration::set_max_touch_move_in_pixels_for_click( |
1017 sqrt(static_cast<double>(5 * 5 + 5 * 5))); | 1013 sqrt(static_cast<double>(5 * 5 + 5 * 5))); |
1018 | 1014 |
1019 scoped_ptr<GestureEventConsumeDelegate> delegate( | 1015 scoped_ptr<GestureEventConsumeDelegate> delegate( |
1020 new GestureEventConsumeDelegate()); | 1016 new GestureEventConsumeDelegate()); |
1021 TimedEvents tes; | 1017 TimedEvents tes; |
1022 const int kWindowWidth = 123; | 1018 const int kWindowWidth = 123; |
1023 const int kWindowHeight = 45; | 1019 const int kWindowHeight = 45; |
(...skipping 2404 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3428 EXPECT_FALSE(delegate->scroll_update()); | 3424 EXPECT_FALSE(delegate->scroll_update()); |
3429 EXPECT_FALSE(delegate->pinch_update()); | 3425 EXPECT_FALSE(delegate->pinch_update()); |
3430 | 3426 |
3431 delegate->Reset(); | 3427 delegate->Reset(); |
3432 } | 3428 } |
3433 | 3429 |
3434 // Checks that slow scrolls deliver the correct deltas. | 3430 // Checks that slow scrolls deliver the correct deltas. |
3435 // In particular, fix for http;//crbug.com/150573. | 3431 // In particular, fix for http;//crbug.com/150573. |
3436 TEST_F(GestureRecognizerTest, NoDriftInScroll) { | 3432 TEST_F(GestureRecognizerTest, NoDriftInScroll) { |
3437 ui::GestureConfiguration::set_max_touch_move_in_pixels_for_click(3); | 3433 ui::GestureConfiguration::set_max_touch_move_in_pixels_for_click(3); |
3438 ui::GestureConfiguration::set_min_scroll_delta_squared(9); | |
3439 scoped_ptr<GestureEventConsumeDelegate> delegate( | 3434 scoped_ptr<GestureEventConsumeDelegate> delegate( |
3440 new GestureEventConsumeDelegate()); | 3435 new GestureEventConsumeDelegate()); |
3441 const int kWindowWidth = 234; | 3436 const int kWindowWidth = 234; |
3442 const int kWindowHeight = 345; | 3437 const int kWindowHeight = 345; |
3443 const int kTouchId = 5; | 3438 const int kTouchId = 5; |
3444 TimedEvents tes; | 3439 TimedEvents tes; |
3445 gfx::Rect bounds(100, 200, kWindowWidth, kWindowHeight); | 3440 gfx::Rect bounds(100, 200, kWindowWidth, kWindowHeight); |
3446 scoped_ptr<aura::Window> window(CreateTestWindowWithDelegate( | 3441 scoped_ptr<aura::Window> window(CreateTestWindowWithDelegate( |
3447 delegate.get(), -1234, bounds, root_window())); | 3442 delegate.get(), -1234, bounds, root_window())); |
3448 | 3443 |
(...skipping 829 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4278 ui::TouchEvent move3( | 4273 ui::TouchEvent move3( |
4279 ui::ET_TOUCH_MOVED, gfx::Point(65, 202), kTouchId1, tes.Now()); | 4274 ui::ET_TOUCH_MOVED, gfx::Point(65, 202), kTouchId1, tes.Now()); |
4280 DispatchEventUsingWindowDispatcher(&move3); | 4275 DispatchEventUsingWindowDispatcher(&move3); |
4281 | 4276 |
4282 delegate->ReceivedAck(); | 4277 delegate->ReceivedAck(); |
4283 EXPECT_1_EVENT(delegate->events(), ui::ET_GESTURE_SCROLL_UPDATE); | 4278 EXPECT_1_EVENT(delegate->events(), ui::ET_GESTURE_SCROLL_UPDATE); |
4284 } | 4279 } |
4285 | 4280 |
4286 } // namespace test | 4281 } // namespace test |
4287 } // namespace aura | 4282 } // namespace aura |
OLD | NEW |