| Index: content/browser/renderer_host/input/synthetic_gesture_controller_unittest.cc
|
| diff --git a/content/browser/renderer_host/input/synthetic_gesture_controller_unittest.cc b/content/browser/renderer_host/input/synthetic_gesture_controller_unittest.cc
|
| index e7a9f9dc5b6a451540e325200803fc1dc27d3c9c..550e5a26edfe629ed160558bf794e99862080efe 100644
|
| --- a/content/browser/renderer_host/input/synthetic_gesture_controller_unittest.cc
|
| +++ b/content/browser/renderer_host/input/synthetic_gesture_controller_unittest.cc
|
| @@ -385,9 +385,12 @@ class SyntheticGestureControllerTest : public testing::Test {
|
|
|
| void FlushInputUntilComplete() {
|
| while (target_->flush_requested()) {
|
| - target_->ClearFlushRequest();
|
| - time_ += base::TimeDelta::FromMilliseconds(kFlushInputRateInMs);
|
| - controller_->Flush(time_);
|
| + while (target_->flush_requested()) {
|
| + target_->ClearFlushRequest();
|
| + time_ += base::TimeDelta::FromMilliseconds(kFlushInputRateInMs);
|
| + controller_->Flush(time_);
|
| + }
|
| + controller_->OnDidFlushInput();
|
| }
|
| }
|
|
|
| @@ -483,6 +486,37 @@ TEST_F(SyntheticGestureControllerTest, TwoGesturesInFlight) {
|
| EXPECT_EQ(0, num_failure_);
|
| }
|
|
|
| +TEST_F(SyntheticGestureControllerTest, GestureCompletedOnDidFlushInput) {
|
| + CreateControllerAndTarget<MockSyntheticGestureTarget>();
|
| +
|
| + bool finished_1, finished_2;
|
| + scoped_ptr<MockSyntheticGesture> gesture_1(
|
| + new MockSyntheticGesture(&finished_1, 2));
|
| + scoped_ptr<MockSyntheticGesture> gesture_2(
|
| + new MockSyntheticGesture(&finished_2, 4));
|
| +
|
| + QueueSyntheticGesture(gesture_1.PassAs<SyntheticGesture>());
|
| + QueueSyntheticGesture(gesture_2.PassAs<SyntheticGesture>());
|
| +
|
| + while (target_->flush_requested()) {
|
| + target_->ClearFlushRequest();
|
| + time_ += base::TimeDelta::FromMilliseconds(kFlushInputRateInMs);
|
| + controller_->Flush(time_);
|
| + }
|
| + EXPECT_EQ(0, num_success_);
|
| + controller_->OnDidFlushInput();
|
| + EXPECT_EQ(1, num_success_);
|
| +
|
| + while (target_->flush_requested()) {
|
| + target_->ClearFlushRequest();
|
| + time_ += base::TimeDelta::FromMilliseconds(kFlushInputRateInMs);
|
| + controller_->Flush(time_);
|
| + }
|
| + EXPECT_EQ(1, num_success_);
|
| + controller_->OnDidFlushInput();
|
| + EXPECT_EQ(2, num_success_);
|
| +}
|
| +
|
| gfx::Vector2d AddTouchSlopToVector(const gfx::Vector2d& vector,
|
| SyntheticGestureTarget* target) {
|
| const int kTouchSlop = target->GetTouchSlopInDips();
|
|
|