| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "content/browser/renderer_host/input/tap_suppression_controller.h" | 5 #include "content/browser/renderer_host/input/tap_suppression_controller.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 | 8 |
| 9 #include "base/macros.h" | 9 #include "base/macros.h" |
| 10 #include "content/browser/renderer_host/input/tap_suppression_controller_client.
h" | 10 #include "content/browser/renderer_host/input/tap_suppression_controller_client.
h" |
| 11 #include "testing/gtest/include/gtest/gtest.h" | 11 #include "testing/gtest/include/gtest/gtest.h" |
| 12 | 12 |
| 13 using base::TimeDelta; | 13 using base::TimeDelta; |
| 14 | 14 |
| 15 namespace content { | 15 namespace content { |
| 16 | 16 |
| 17 class MockTapSuppressionController : public TapSuppressionController, | 17 class MockTapSuppressionController : public TapSuppressionController, |
| 18 public TapSuppressionControllerClient { | 18 public TapSuppressionControllerClient { |
| 19 public: | 19 public: |
| 20 using TapSuppressionController::DISABLED; | 20 using TapSuppressionController::DISABLED; |
| 21 using TapSuppressionController::NOTHING; | 21 using TapSuppressionController::NOTHING; |
| 22 using TapSuppressionController::GFC_IN_PROGRESS; | 22 using TapSuppressionController::GFC_IN_PROGRESS; |
| 23 using TapSuppressionController::TAP_DOWN_STASHED; | 23 using TapSuppressionController::TAP_DOWN_STASHED; |
| 24 using TapSuppressionController::LAST_CANCEL_STOPPED_FLING; | 24 using TapSuppressionController::LAST_CANCEL_STOPPED_FLING; |
| 25 using TapSuppressionController::SUPPRESSING_TAPS; |
| 25 | 26 |
| 26 enum Action { | 27 enum Action { |
| 27 NONE = 0, | 28 NONE = 0, |
| 28 TAP_DOWN_DEFERRED = 1 << 0, | 29 TAP_DOWN_DEFERRED = 1 << 0, |
| 29 TAP_DOWN_FORWARDED = 1 << 1, | 30 TAP_DOWN_FORWARDED = 1 << 1, |
| 30 TAP_DOWN_DROPPED = 1 << 2, | 31 TAP_DOWN_DROPPED = 1 << 2, |
| 31 TAP_UP_SUPPRESSED = 1 << 3, | 32 TAP_UP_SUPPRESSED = 1 << 3, |
| 32 TAP_UP_FORWARDED = 1 << 4, | 33 TAP_UP_FORWARDED = 1 << 4, |
| 33 TAP_CANCEL_SUPPRESSED = 1 << 5, | 34 TAP_CANCEL_SUPPRESSED = 1 << 5, |
| 34 TAP_CANCEL_FORWARDED = 1 << 6, | 35 TAP_CANCEL_FORWARDED = 1 << 6, |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 97 timer_expiry_time_ = time_ + delay; | 98 timer_expiry_time_ = time_ + delay; |
| 98 timer_started_ = true; | 99 timer_started_ = true; |
| 99 } | 100 } |
| 100 | 101 |
| 101 void StopTapDownTimer() override { timer_started_ = false; } | 102 void StopTapDownTimer() override { timer_started_ = false; } |
| 102 | 103 |
| 103 private: | 104 private: |
| 104 // TapSuppressionControllerClient implementation | 105 // TapSuppressionControllerClient implementation |
| 105 void DropStashedTapDown() override { last_actions_ |= TAP_DOWN_DROPPED; } | 106 void DropStashedTapDown() override { last_actions_ |= TAP_DOWN_DROPPED; } |
| 106 | 107 |
| 108 void ForwardStashedGestureEvents() override { |
| 109 last_actions_ |= STASHED_TAP_DOWN_FORWARDED; |
| 110 } |
| 111 |
| 107 void ForwardStashedTapDown() override { | 112 void ForwardStashedTapDown() override { |
| 108 last_actions_ |= STASHED_TAP_DOWN_FORWARDED; | 113 last_actions_ |= STASHED_TAP_DOWN_FORWARDED; |
| 109 } | 114 } |
| 110 | 115 |
| 111 // Hiding some derived public methods | 116 // Hiding some derived public methods |
| 112 using TapSuppressionController::GestureFlingCancel; | 117 using TapSuppressionController::GestureFlingCancel; |
| 113 using TapSuppressionController::GestureFlingCancelAck; | 118 using TapSuppressionController::GestureFlingCancelAck; |
| 114 using TapSuppressionController::ShouldDeferTapDown; | 119 using TapSuppressionController::ShouldDeferTapDown; |
| 115 using TapSuppressionController::ShouldSuppressTapEnd; | 120 using TapSuppressionController::ShouldSuppressTapEnd; |
| 116 | 121 |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 171 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_DEFERRED, | 176 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_DEFERRED, |
| 172 tap_suppression_controller_->last_actions()); | 177 tap_suppression_controller_->last_actions()); |
| 173 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, | 178 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, |
| 174 tap_suppression_controller_->state()); | 179 tap_suppression_controller_->state()); |
| 175 | 180 |
| 176 // Send TapUp. This TapUp should be suppressed. | 181 // Send TapUp. This TapUp should be suppressed. |
| 177 tap_suppression_controller_->SendTapUp(); | 182 tap_suppression_controller_->SendTapUp(); |
| 178 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED | | 183 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED | |
| 179 MockTapSuppressionController::TAP_DOWN_DROPPED, | 184 MockTapSuppressionController::TAP_DOWN_DROPPED, |
| 180 tap_suppression_controller_->last_actions()); | 185 tap_suppression_controller_->last_actions()); |
| 181 EXPECT_EQ(MockTapSuppressionController::NOTHING, | 186 EXPECT_EQ(MockTapSuppressionController::SUPPRESSING_TAPS, |
| 182 tap_suppression_controller_->state()); | 187 tap_suppression_controller_->state()); |
| 183 } | 188 } |
| 184 | 189 |
| 185 // Test TapSuppressionController for when GestureFlingCancel Ack comes before | 190 // Test TapSuppressionController for when GestureFlingCancel Ack comes before |
| 186 // TapDown, but there is a small delay between TapDown and TapUp. | 191 // TapDown, but there is a small delay between TapDown and TapUp. |
| 187 TEST_F(TapSuppressionControllerTest, GFCAckBeforeTapInsufficientlyLateTapUp) { | 192 TEST_F(TapSuppressionControllerTest, GFCAckBeforeTapInsufficientlyLateTapUp) { |
| 188 // Send GestureFlingCancel. | 193 // Send GestureFlingCancel. |
| 189 tap_suppression_controller_->SendGestureFlingCancel(); | 194 tap_suppression_controller_->SendGestureFlingCancel(); |
| 190 EXPECT_EQ(MockTapSuppressionController::NONE, | 195 EXPECT_EQ(MockTapSuppressionController::NONE, |
| 191 tap_suppression_controller_->last_actions()); | 196 tap_suppression_controller_->last_actions()); |
| (...skipping 20 matching lines...) Expand all Loading... |
| 212 EXPECT_EQ(MockTapSuppressionController::NONE, | 217 EXPECT_EQ(MockTapSuppressionController::NONE, |
| 213 tap_suppression_controller_->last_actions()); | 218 tap_suppression_controller_->last_actions()); |
| 214 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, | 219 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, |
| 215 tap_suppression_controller_->state()); | 220 tap_suppression_controller_->state()); |
| 216 | 221 |
| 217 // Send TapUp. This TapUp should be suppressed. | 222 // Send TapUp. This TapUp should be suppressed. |
| 218 tap_suppression_controller_->SendTapUp(); | 223 tap_suppression_controller_->SendTapUp(); |
| 219 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED | | 224 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED | |
| 220 MockTapSuppressionController::TAP_DOWN_DROPPED, | 225 MockTapSuppressionController::TAP_DOWN_DROPPED, |
| 221 tap_suppression_controller_->last_actions()); | 226 tap_suppression_controller_->last_actions()); |
| 222 EXPECT_EQ(MockTapSuppressionController::NOTHING, | 227 EXPECT_EQ(MockTapSuppressionController::SUPPRESSING_TAPS, |
| 223 tap_suppression_controller_->state()); | 228 tap_suppression_controller_->state()); |
| 224 } | 229 } |
| 225 | 230 |
| 226 // Test TapSuppressionController for when GestureFlingCancel Ack comes before | 231 // Test TapSuppressionController for when GestureFlingCancel Ack comes before |
| 227 // TapDown, but there is a long delay between TapDown and TapUp. | 232 // TapDown, but there is a long delay between TapDown and TapUp. |
| 228 TEST_F(TapSuppressionControllerTest, GFCAckBeforeTapSufficientlyLateTapUp) { | 233 TEST_F(TapSuppressionControllerTest, GFCAckBeforeTapSufficientlyLateTapUp) { |
| 229 // Send GestureFlingCancel. | 234 // Send GestureFlingCancel. |
| 230 tap_suppression_controller_->SendGestureFlingCancel(); | 235 tap_suppression_controller_->SendGestureFlingCancel(); |
| 231 EXPECT_EQ(MockTapSuppressionController::NONE, | 236 EXPECT_EQ(MockTapSuppressionController::NONE, |
| 232 tap_suppression_controller_->last_actions()); | 237 tap_suppression_controller_->last_actions()); |
| (...skipping 12 matching lines...) Expand all Loading... |
| 245 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_DEFERRED, | 250 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_DEFERRED, |
| 246 tap_suppression_controller_->last_actions()); | 251 tap_suppression_controller_->last_actions()); |
| 247 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, | 252 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, |
| 248 tap_suppression_controller_->state()); | 253 tap_suppression_controller_->state()); |
| 249 | 254 |
| 250 // Wait more than allowed delay between TapDown and TapUp, so they are not | 255 // Wait more than allowed delay between TapDown and TapUp, so they are not |
| 251 // considered a tap. This should release the previously suppressed TapDown. | 256 // considered a tap. This should release the previously suppressed TapDown. |
| 252 tap_suppression_controller_->AdvanceTime(TimeDelta::FromMilliseconds(13)); | 257 tap_suppression_controller_->AdvanceTime(TimeDelta::FromMilliseconds(13)); |
| 253 EXPECT_EQ(MockTapSuppressionController::STASHED_TAP_DOWN_FORWARDED, | 258 EXPECT_EQ(MockTapSuppressionController::STASHED_TAP_DOWN_FORWARDED, |
| 254 tap_suppression_controller_->last_actions()); | 259 tap_suppression_controller_->last_actions()); |
| 255 EXPECT_EQ(MockTapSuppressionController::NOTHING, | 260 EXPECT_EQ(MockTapSuppressionController::SUPPRESSING_TAPS, |
| 256 tap_suppression_controller_->state()); | 261 tap_suppression_controller_->state()); |
| 257 | 262 |
| 258 // Send TapUp. This TapUp should not be suppressed. | 263 // Send TapUp. This TapUp should be still suppressed. |
| 264 // LongTap should be suppressed when the previously suppressed TapDown is |
| 265 // forwarded because of the timer expiration. |
| 259 tap_suppression_controller_->SendTapUp(); | 266 tap_suppression_controller_->SendTapUp(); |
| 260 EXPECT_EQ(MockTapSuppressionController::TAP_UP_FORWARDED, | 267 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED, |
| 261 tap_suppression_controller_->last_actions()); | 268 tap_suppression_controller_->last_actions()); |
| 262 EXPECT_EQ(MockTapSuppressionController::NOTHING, | 269 EXPECT_EQ(MockTapSuppressionController::SUPPRESSING_TAPS, |
| 263 tap_suppression_controller_->state()); | 270 tap_suppression_controller_->state()); |
| 264 } | 271 } |
| 265 | 272 |
| 266 // Test TapSuppressionController for when GestureFlingCancel Ack comes before | 273 // Test TapSuppressionController for when GestureFlingCancel Ack comes before |
| 267 // TapDown, but there is a small delay between the Ack and TapDown. | 274 // TapDown, but there is a small delay between the Ack and TapDown. |
| 268 TEST_F(TapSuppressionControllerTest, GFCAckBeforeTapInsufficientlyLateTapDown) { | 275 TEST_F(TapSuppressionControllerTest, GFCAckBeforeTapInsufficientlyLateTapDown) { |
| 269 // Send GestureFlingCancel. | 276 // Send GestureFlingCancel. |
| 270 tap_suppression_controller_->SendGestureFlingCancel(); | 277 tap_suppression_controller_->SendGestureFlingCancel(); |
| 271 EXPECT_EQ(MockTapSuppressionController::NONE, | 278 EXPECT_EQ(MockTapSuppressionController::NONE, |
| 272 tap_suppression_controller_->last_actions()); | 279 tap_suppression_controller_->last_actions()); |
| (...skipping 20 matching lines...) Expand all Loading... |
| 293 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_DEFERRED, | 300 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_DEFERRED, |
| 294 tap_suppression_controller_->last_actions()); | 301 tap_suppression_controller_->last_actions()); |
| 295 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, | 302 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, |
| 296 tap_suppression_controller_->state()); | 303 tap_suppression_controller_->state()); |
| 297 | 304 |
| 298 // Send TapUp. This TapUp should be suppressed. | 305 // Send TapUp. This TapUp should be suppressed. |
| 299 tap_suppression_controller_->SendTapUp(); | 306 tap_suppression_controller_->SendTapUp(); |
| 300 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED | | 307 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED | |
| 301 MockTapSuppressionController::TAP_DOWN_DROPPED, | 308 MockTapSuppressionController::TAP_DOWN_DROPPED, |
| 302 tap_suppression_controller_->last_actions()); | 309 tap_suppression_controller_->last_actions()); |
| 303 EXPECT_EQ(MockTapSuppressionController::NOTHING, | 310 EXPECT_EQ(MockTapSuppressionController::SUPPRESSING_TAPS, |
| 304 tap_suppression_controller_->state()); | 311 tap_suppression_controller_->state()); |
| 305 } | 312 } |
| 306 | 313 |
| 307 // Test TapSuppressionController for when GestureFlingCancel Ack comes before | 314 // Test TapSuppressionController for when GestureFlingCancel Ack comes before |
| 308 // TapDown, but there is a long delay between the Ack and TapDown. | 315 // TapDown, but there is a long delay between the Ack and TapDown. |
| 309 TEST_F(TapSuppressionControllerTest, GFCAckBeforeTapSufficientlyLateTapDown) { | 316 TEST_F(TapSuppressionControllerTest, GFCAckBeforeTapSufficientlyLateTapDown) { |
| 310 // Send GestureFlingCancel. | 317 // Send GestureFlingCancel. |
| 311 tap_suppression_controller_->SendGestureFlingCancel(); | 318 tap_suppression_controller_->SendGestureFlingCancel(); |
| 312 EXPECT_EQ(MockTapSuppressionController::NONE, | 319 EXPECT_EQ(MockTapSuppressionController::NONE, |
| 313 tap_suppression_controller_->last_actions()); | 320 tap_suppression_controller_->last_actions()); |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 399 EXPECT_EQ(MockTapSuppressionController::NONE, | 406 EXPECT_EQ(MockTapSuppressionController::NONE, |
| 400 tap_suppression_controller_->last_actions()); | 407 tap_suppression_controller_->last_actions()); |
| 401 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, | 408 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, |
| 402 tap_suppression_controller_->state()); | 409 tap_suppression_controller_->state()); |
| 403 | 410 |
| 404 // Send TapUp. This TapUp should be suppressed. | 411 // Send TapUp. This TapUp should be suppressed. |
| 405 tap_suppression_controller_->SendTapUp(); | 412 tap_suppression_controller_->SendTapUp(); |
| 406 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED | | 413 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED | |
| 407 MockTapSuppressionController::TAP_DOWN_DROPPED, | 414 MockTapSuppressionController::TAP_DOWN_DROPPED, |
| 408 tap_suppression_controller_->last_actions()); | 415 tap_suppression_controller_->last_actions()); |
| 409 EXPECT_EQ(MockTapSuppressionController::NOTHING, | 416 EXPECT_EQ(MockTapSuppressionController::SUPPRESSING_TAPS, |
| 410 tap_suppression_controller_->state()); | 417 tap_suppression_controller_->state()); |
| 411 } | 418 } |
| 412 | 419 |
| 413 // Test TapSuppressionController for when GestureFlingCancel Ack comes after | 420 // Test TapSuppressionController for when GestureFlingCancel Ack comes after |
| 414 // TapDown and there is a small delay between the Ack and TapUp. | 421 // TapDown and there is a small delay between the Ack and TapUp. |
| 415 TEST_F(TapSuppressionControllerTest, GFCAckAfterTapInsufficientlyLateTapUp) { | 422 TEST_F(TapSuppressionControllerTest, GFCAckAfterTapInsufficientlyLateTapUp) { |
| 416 // Send GestureFlingCancel. | 423 // Send GestureFlingCancel. |
| 417 tap_suppression_controller_->SendGestureFlingCancel(); | 424 tap_suppression_controller_->SendGestureFlingCancel(); |
| 418 EXPECT_EQ(MockTapSuppressionController::NONE, | 425 EXPECT_EQ(MockTapSuppressionController::NONE, |
| 419 tap_suppression_controller_->last_actions()); | 426 tap_suppression_controller_->last_actions()); |
| (...skipping 20 matching lines...) Expand all Loading... |
| 440 EXPECT_EQ(MockTapSuppressionController::NONE, | 447 EXPECT_EQ(MockTapSuppressionController::NONE, |
| 441 tap_suppression_controller_->last_actions()); | 448 tap_suppression_controller_->last_actions()); |
| 442 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, | 449 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, |
| 443 tap_suppression_controller_->state()); | 450 tap_suppression_controller_->state()); |
| 444 | 451 |
| 445 // Send TapUp. This TapUp should be suppressed. | 452 // Send TapUp. This TapUp should be suppressed. |
| 446 tap_suppression_controller_->SendTapUp(); | 453 tap_suppression_controller_->SendTapUp(); |
| 447 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED | | 454 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED | |
| 448 MockTapSuppressionController::TAP_DOWN_DROPPED, | 455 MockTapSuppressionController::TAP_DOWN_DROPPED, |
| 449 tap_suppression_controller_->last_actions()); | 456 tap_suppression_controller_->last_actions()); |
| 450 EXPECT_EQ(MockTapSuppressionController::NOTHING, | 457 EXPECT_EQ(MockTapSuppressionController::SUPPRESSING_TAPS, |
| 451 tap_suppression_controller_->state()); | 458 tap_suppression_controller_->state()); |
| 452 } | 459 } |
| 453 | 460 |
| 454 // Test TapSuppressionController for when GestureFlingCancel Ack comes after | 461 // Test TapSuppressionController for when GestureFlingCancel Ack comes after |
| 455 // TapDown and there is a long delay between the Ack and TapUp. | 462 // TapDown and there is a long delay between the Ack and TapUp. |
| 456 TEST_F(TapSuppressionControllerTest, GFCAckAfterTapSufficientlyLateTapUp) { | 463 TEST_F(TapSuppressionControllerTest, GFCAckAfterTapSufficientlyLateTapUp) { |
| 457 // Send GestureFlingCancel. | 464 // Send GestureFlingCancel. |
| 458 tap_suppression_controller_->SendGestureFlingCancel(); | 465 tap_suppression_controller_->SendGestureFlingCancel(); |
| 459 EXPECT_EQ(MockTapSuppressionController::NONE, | 466 EXPECT_EQ(MockTapSuppressionController::NONE, |
| 460 tap_suppression_controller_->last_actions()); | 467 tap_suppression_controller_->last_actions()); |
| (...skipping 12 matching lines...) Expand all Loading... |
| 473 EXPECT_EQ(MockTapSuppressionController::NONE, | 480 EXPECT_EQ(MockTapSuppressionController::NONE, |
| 474 tap_suppression_controller_->last_actions()); | 481 tap_suppression_controller_->last_actions()); |
| 475 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, | 482 EXPECT_EQ(MockTapSuppressionController::TAP_DOWN_STASHED, |
| 476 tap_suppression_controller_->state()); | 483 tap_suppression_controller_->state()); |
| 477 | 484 |
| 478 // Wait more than allowed delay between TapDown and TapUp, so they are not | 485 // Wait more than allowed delay between TapDown and TapUp, so they are not |
| 479 // considered as a tap. This should release the previously suppressed TapDown. | 486 // considered as a tap. This should release the previously suppressed TapDown. |
| 480 tap_suppression_controller_->AdvanceTime(TimeDelta::FromMilliseconds(13)); | 487 tap_suppression_controller_->AdvanceTime(TimeDelta::FromMilliseconds(13)); |
| 481 EXPECT_EQ(MockTapSuppressionController::STASHED_TAP_DOWN_FORWARDED, | 488 EXPECT_EQ(MockTapSuppressionController::STASHED_TAP_DOWN_FORWARDED, |
| 482 tap_suppression_controller_->last_actions()); | 489 tap_suppression_controller_->last_actions()); |
| 483 EXPECT_EQ(MockTapSuppressionController::NOTHING, | 490 EXPECT_EQ(MockTapSuppressionController::SUPPRESSING_TAPS, |
| 484 tap_suppression_controller_->state()); | 491 tap_suppression_controller_->state()); |
| 485 | 492 |
| 486 // Send TapUp. This TapUp should not be suppressed. | 493 // Send TapUp. This TapUp should be still suppressed. |
| 494 // LongTap should be suppressed when the previously suppressed TapDown is |
| 495 // forwarded because of timer expiration. |
| 487 tap_suppression_controller_->SendTapUp(); | 496 tap_suppression_controller_->SendTapUp(); |
| 488 EXPECT_EQ(MockTapSuppressionController::TAP_UP_FORWARDED, | 497 EXPECT_EQ(MockTapSuppressionController::TAP_UP_SUPPRESSED, |
| 489 tap_suppression_controller_->last_actions()); | 498 tap_suppression_controller_->last_actions()); |
| 490 EXPECT_EQ(MockTapSuppressionController::NOTHING, | 499 EXPECT_EQ(MockTapSuppressionController::SUPPRESSING_TAPS, |
| 491 tap_suppression_controller_->state()); | 500 tap_suppression_controller_->state()); |
| 492 } | 501 } |
| 493 | 502 |
| 494 // Test that no suppression occurs if the TapSuppressionController is disabled. | 503 // Test that no suppression occurs if the TapSuppressionController is disabled. |
| 495 TEST_F(TapSuppressionControllerTest, NoSuppressionIfDisabled) { | 504 TEST_F(TapSuppressionControllerTest, NoSuppressionIfDisabled) { |
| 496 TapSuppressionController::Config disabled_config; | 505 TapSuppressionController::Config disabled_config; |
| 497 disabled_config.enabled = false; | 506 disabled_config.enabled = false; |
| 498 tap_suppression_controller_.reset( | 507 tap_suppression_controller_.reset( |
| 499 new MockTapSuppressionController(disabled_config)); | 508 new MockTapSuppressionController(disabled_config)); |
| 500 | 509 |
| (...skipping 20 matching lines...) Expand all Loading... |
| 521 | 530 |
| 522 // Send TapUp. This TapUp should not be suppressed. | 531 // Send TapUp. This TapUp should not be suppressed. |
| 523 tap_suppression_controller_->SendTapUp(); | 532 tap_suppression_controller_->SendTapUp(); |
| 524 EXPECT_EQ(MockTapSuppressionController::TAP_UP_FORWARDED, | 533 EXPECT_EQ(MockTapSuppressionController::TAP_UP_FORWARDED, |
| 525 tap_suppression_controller_->last_actions()); | 534 tap_suppression_controller_->last_actions()); |
| 526 EXPECT_EQ(MockTapSuppressionController::DISABLED, | 535 EXPECT_EQ(MockTapSuppressionController::DISABLED, |
| 527 tap_suppression_controller_->state()); | 536 tap_suppression_controller_->state()); |
| 528 } | 537 } |
| 529 | 538 |
| 530 } // namespace content | 539 } // namespace content |
| OLD | NEW |