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 2ba5475de29d08aafefc9d7d423be76bca6c2077..ed4f8695fb5833987bbefadbeb51774de5ae5faa 100644 |
--- a/content/browser/renderer_host/input/touch_event_queue_unittest.cc |
+++ b/content/browser/renderer_host/input/touch_event_queue_unittest.cc |
@@ -388,6 +388,15 @@ TEST_F(TouchEventQueueTest, ActiveSequenceDroppedWhenHandlersRemoved) { |
EXPECT_EQ(0U, GetAndResetAckedEventCount()); |
EXPECT_EQ(2U, queued_event_count()); |
+ // Repeated registration/unregstration of handlers should have no effect as |
+ // we're still awaiting the ack arrival. |
+ OnHasTouchEventHandlers(true); |
+ EXPECT_EQ(0U, GetAndResetAckedEventCount()); |
+ EXPECT_EQ(2U, queued_event_count()); |
+ OnHasTouchEventHandlers(false); |
+ EXPECT_EQ(0U, GetAndResetAckedEventCount()); |
+ EXPECT_EQ(2U, queued_event_count()); |
+ |
// The ack should be flush the queue. |
SendTouchEventAck(INPUT_EVENT_ACK_STATE_NO_CONSUMER_EXISTS); |
EXPECT_EQ(2U, GetAndResetAckedEventCount()); |