Chromium Code Reviews| Index: content/browser/renderer_host/input/touch_event_queue_unittest.cc |
| diff --git a/content/browser/renderer_host/input/touch_event_queue_unittest.cc b/content/browser/renderer_host/input/touch_event_queue_unittest.cc |
| index 88b612307fe8059c6cb8d6dfae8670b49df4eccb..110688d97245e8999f39c3f8e8b96abc24953fc6 100644 |
| --- a/content/browser/renderer_host/input/touch_event_queue_unittest.cc |
| +++ b/content/browser/renderer_host/input/touch_event_queue_unittest.cc |
| @@ -1399,39 +1399,45 @@ TEST_F(TouchEventQueueTest, TouchMoveSuppressionIncludingSlopBoundary) { |
| ASSERT_EQ(1U, GetAndResetSentEventCount()); |
| ASSERT_EQ(1U, GetAndResetAckedEventCount()); |
| - // TouchMove's within the region should be suppressed. |
| + // TouchMove's within the region will not be suppressed in the browser side, |
| + // but its movedBeyondSlopRegion is set to false. |
| MoveTouchPoint(0, 0, kHalfSlopLengthDips); |
| - EXPECT_EQ(0U, queued_event_count()); |
| - EXPECT_EQ(0U, GetAndResetSentEventCount()); |
| + EXPECT_EQ(1U, queued_event_count()); |
| + SendTouchEventAck(INPUT_EVENT_ACK_STATE_NOT_CONSUMED); |
| + EXPECT_EQ(1U, GetAndResetSentEventCount()); |
| EXPECT_EQ(1U, GetAndResetAckedEventCount()); |
| - EXPECT_EQ(INPUT_EVENT_ACK_STATE_NOT_CONSUMED, acked_event_state()); |
| + EXPECT_FALSE(acked_event().movedBeyondSlopRegion); |
| MoveTouchPoint(0, kHalfSlopLengthDips, 0); |
| - EXPECT_EQ(0U, queued_event_count()); |
| - EXPECT_EQ(0U, GetAndResetSentEventCount()); |
| + EXPECT_EQ(1U, queued_event_count()); |
| + SendTouchEventAck(INPUT_EVENT_ACK_STATE_NOT_CONSUMED); |
| + EXPECT_EQ(1U, GetAndResetSentEventCount()); |
| EXPECT_EQ(1U, GetAndResetAckedEventCount()); |
| - EXPECT_EQ(INPUT_EVENT_ACK_STATE_NOT_CONSUMED, acked_event_state()); |
| + EXPECT_FALSE(acked_event().movedBeyondSlopRegion); |
| MoveTouchPoint(0, -kHalfSlopLengthDips, 0); |
| - EXPECT_EQ(0U, queued_event_count()); |
| - EXPECT_EQ(0U, GetAndResetSentEventCount()); |
| + EXPECT_EQ(1U, queued_event_count()); |
| + SendTouchEventAck(INPUT_EVENT_ACK_STATE_NOT_CONSUMED); |
| + EXPECT_EQ(1U, GetAndResetSentEventCount()); |
| EXPECT_EQ(1U, GetAndResetAckedEventCount()); |
| - EXPECT_EQ(INPUT_EVENT_ACK_STATE_NOT_CONSUMED, acked_event_state()); |
| + EXPECT_FALSE(acked_event().movedBeyondSlopRegion); |
| MoveTouchPoint(0, -kSlopLengthDips, 0); |
| - EXPECT_EQ(0U, queued_event_count()); |
| - EXPECT_EQ(0U, GetAndResetSentEventCount()); |
| + EXPECT_EQ(1U, queued_event_count()); |
| + SendTouchEventAck(INPUT_EVENT_ACK_STATE_NOT_CONSUMED); |
| + EXPECT_EQ(1U, GetAndResetSentEventCount()); |
| EXPECT_EQ(1U, GetAndResetAckedEventCount()); |
| - EXPECT_EQ(INPUT_EVENT_ACK_STATE_NOT_CONSUMED, acked_event_state()); |
| + EXPECT_FALSE(acked_event().movedBeyondSlopRegion); |
| MoveTouchPoint(0, 0, kSlopLengthDips); |
| - EXPECT_EQ(0U, queued_event_count()); |
| - EXPECT_EQ(0U, GetAndResetSentEventCount()); |
| + EXPECT_EQ(1U, queued_event_count()); |
| + SendTouchEventAck(INPUT_EVENT_ACK_STATE_NOT_CONSUMED); |
| + EXPECT_EQ(1U, GetAndResetSentEventCount()); |
| EXPECT_EQ(1U, GetAndResetAckedEventCount()); |
| - EXPECT_EQ(INPUT_EVENT_ACK_STATE_NOT_CONSUMED, acked_event_state()); |
| + EXPECT_FALSE(acked_event().movedBeyondSlopRegion); |
| - // As soon as a TouchMove exceeds the (Euclidean) distance, no more |
| - // TouchMove's should be suppressed. |
| + // When a TouchMove exceeds the (Euclidean) distance, the TouchMove's should |
| + // not be suppressed and its movedBeyondSlopRegion is set to true. |
|
tdresser
2017/02/02 21:30:54
Don't refer to suppression here anymore. It implie
lanwei
2017/02/03 21:39:33
Done.
|
| const float kFortyFiveDegreeSlopLengthXY = |
| kSlopLengthDips * std::sqrt(2.f) / 2; |
| MoveTouchPoint(0, kFortyFiveDegreeSlopLengthXY + .2f, |
| @@ -1441,6 +1447,7 @@ TEST_F(TouchEventQueueTest, TouchMoveSuppressionIncludingSlopBoundary) { |
| EXPECT_EQ(0U, GetAndResetAckedEventCount()); |
| SendTouchEventAck(INPUT_EVENT_ACK_STATE_NOT_CONSUMED); |
| EXPECT_EQ(1U, GetAndResetAckedEventCount()); |
| + EXPECT_TRUE(acked_event().movedBeyondSlopRegion); |
| // Even TouchMove's within the original slop region should now be forwarded. |
| MoveTouchPoint(0, 0, 0); |
| @@ -1461,14 +1468,19 @@ TEST_F(TouchEventQueueTest, TouchMoveSuppressionIncludingSlopBoundary) { |
| // The slop region is boundary-inclusive. |
| MoveTouchPoint(0, kSlopLengthDips - 1, 0); |
| - EXPECT_EQ(0U, queued_event_count()); |
| - EXPECT_EQ(0U, GetAndResetSentEventCount()); |
| + EXPECT_EQ(1U, queued_event_count()); |
| + SendTouchEventAck(INPUT_EVENT_ACK_STATE_NOT_CONSUMED); |
| + EXPECT_EQ(1U, GetAndResetSentEventCount()); |
| EXPECT_EQ(1U, GetAndResetAckedEventCount()); |
| + EXPECT_FALSE(acked_event().movedBeyondSlopRegion); |
| + |
| MoveTouchPoint(0, kSlopLengthDips, 0); |
| - EXPECT_EQ(0U, queued_event_count()); |
| - EXPECT_EQ(0U, GetAndResetSentEventCount()); |
| + EXPECT_EQ(1U, queued_event_count()); |
| + SendTouchEventAck(INPUT_EVENT_ACK_STATE_NOT_CONSUMED); |
| + EXPECT_EQ(1U, GetAndResetSentEventCount()); |
| EXPECT_EQ(1U, GetAndResetAckedEventCount()); |
| + EXPECT_FALSE(acked_event().movedBeyondSlopRegion); |
| } |
| // Tests that TouchMove's are not dropped within the slop suppression region if |
| @@ -1517,11 +1529,14 @@ TEST_F(TouchEventQueueTest, NoTouchMoveSuppressionAfterMultiTouch) { |
| ASSERT_EQ(1U, GetAndResetSentEventCount()); |
| ASSERT_EQ(1U, GetAndResetAckedEventCount()); |
| - // TouchMove's within the region should be suppressed. |
| + // TouchMove's within the region will not be suppressed in the browser side, |
| + // but its movedBeyondSlopRegion is set to true. |
| MoveTouchPoint(0, 0, kHalfSlopLengthDips); |
| - EXPECT_EQ(0U, queued_event_count()); |
| - EXPECT_EQ(0U, GetAndResetSentEventCount()); |
| + EXPECT_EQ(1U, queued_event_count()); |
| + SendTouchEventAck(INPUT_EVENT_ACK_STATE_NOT_CONSUMED); |
| + EXPECT_EQ(1U, GetAndResetSentEventCount()); |
| EXPECT_EQ(1U, GetAndResetAckedEventCount()); |
| + EXPECT_FALSE(acked_event().movedBeyondSlopRegion); |
| // Simulate a secondary pointer press. |
| PressTouchPoint(kSlopLengthDips, 0); |
| @@ -1542,7 +1557,7 @@ TEST_F(TouchEventQueueTest, NoTouchMoveSuppressionAfterMultiTouch) { |
| EXPECT_EQ(1U, GetAndResetSentEventCount()); |
| EXPECT_EQ(1U, GetAndResetAckedEventCount()); |
| - // TouchMove's should not should be suppressed, even with the original |
| + // TouchMove's should not be suppressed, even with the original |
|
tdresser
2017/02/02 21:30:54
Don't talk about suppression anymore.
lanwei
2017/02/03 21:39:33
Done.
|
| // unmoved pointer. |
| MoveTouchPoint(0, 0, 0); |
| EXPECT_EQ(1U, queued_event_count()); |