Index: content/browser/renderer_host/input/gesture_event_filter_unittest.cc |
diff --git a/content/browser/renderer_host/input/gesture_event_filter_unittest.cc b/content/browser/renderer_host/input/gesture_event_filter_unittest.cc |
index 7cd2b83595d706d70707e04105fd11b6eb223630..31fd659fd5e9de9e208f7bf511e1a417ce401273 100644 |
--- a/content/browser/renderer_host/input/gesture_event_filter_unittest.cc |
+++ b/content/browser/renderer_host/input/gesture_event_filter_unittest.cc |
@@ -9,9 +9,8 @@ |
#include "base/memory/scoped_ptr.h" |
#include "base/message_loop/message_loop.h" |
#include "base/time/time.h" |
-#include "content/browser/renderer_host/input/gesture_event_filter.h" |
+#include "content/browser/renderer_host/input/base_gesture_event_filter.h" |
#include "content/browser/renderer_host/input/mock_web_input_event_builders.h" |
-#include "content/browser/renderer_host/input/touchpad_tap_suppression_controller.h" |
#include "content/port/common/input_event_ack_state.h" |
#include "testing/gtest/include/gtest/gtest.h" |
#include "third_party/WebKit/public/web/WebInputEvent.h" |
@@ -23,8 +22,7 @@ using WebKit::WebInputEvent; |
namespace content { |
class GestureEventFilterTest : public testing::Test, |
- public GestureEventFilterClient, |
- public TouchpadTapSuppressionControllerClient { |
+ public GestureEventFilterClient { |
public: |
GestureEventFilterTest() |
: acked_gesture_event_count_(0), |
@@ -34,7 +32,7 @@ class GestureEventFilterTest : public testing::Test, |
// testing::Test |
virtual void SetUp() OVERRIDE { |
- filter_.reset(new GestureEventFilter(this, this)); |
+ filter_.reset(new BaseGestureEventFilter(this)); |
} |
virtual void TearDown() OVERRIDE { |
@@ -56,11 +54,6 @@ class GestureEventFilterTest : public testing::Test, |
++acked_gesture_event_count_; |
} |
- // TouchpadTapSuppressionControllerClient |
- virtual void SendMouseEventImmediately( |
- const MouseEventWithLatencyInfo& event) OVERRIDE { |
- } |
- |
protected: |
// Returns the result of |GestureEventFilter::ShouldForward()|. |
@@ -159,20 +152,16 @@ class GestureEventFilterTest : public testing::Test, |
return filter()->scrolling_in_progress_; |
} |
- bool FlingInProgress() { |
- return filter()->fling_in_progress_; |
- } |
- |
bool WillIgnoreNextACK() { |
return filter()->ignore_next_ack_; |
} |
- GestureEventFilter* filter() const { |
+ BaseGestureEventFilter* filter() const { |
return filter_.get(); |
} |
private: |
- scoped_ptr<GestureEventFilter> filter_; |
+ scoped_ptr<BaseGestureEventFilter> filter_; |
size_t acked_gesture_event_count_; |
size_t sent_gesture_event_count_; |
WebGestureEvent last_immediately_sent_gesture_event_; |
@@ -474,96 +463,6 @@ TEST_F(GestureEventFilterTest, CoalescesScrollAndPinchEvents) { |
} |
#if GTEST_HAS_PARAM_TEST |
-TEST_P(GestureEventFilterWithSourceTest, GestureFlingCancelsFiltered) { |
- WebGestureEvent::SourceDevice source_device = GetParam(); |
- |
- // Turn off debounce handling for test isolation. |
- set_debounce_interval_time_ms(0); |
- // GFC without previous GFS is dropped. |
- SimulateGestureEvent(WebInputEvent::GestureFlingCancel, source_device); |
- EXPECT_EQ(0U, GetAndResetSentGestureEventCount()); |
- EXPECT_EQ(0U, GestureEventLastQueueEventSize()); |
- |
- // GFC after previous GFS is dispatched and acked. |
- SimulateGestureFlingStartEvent(0, -10, source_device); |
- EXPECT_TRUE(FlingInProgress()); |
- SendInputEventACK(WebInputEvent::GestureFlingStart, |
- INPUT_EVENT_ACK_STATE_CONSUMED); |
- RunUntilIdle(); |
- EXPECT_EQ(1U, GetAndResetAckedGestureEventCount()); |
- SimulateGestureEvent(WebInputEvent::GestureFlingCancel, source_device); |
- EXPECT_FALSE(FlingInProgress()); |
- EXPECT_EQ(2U, GetAndResetSentGestureEventCount()); |
- SendInputEventACK(WebInputEvent::GestureFlingCancel, |
- INPUT_EVENT_ACK_STATE_CONSUMED); |
- RunUntilIdle(); |
- EXPECT_EQ(1U, GetAndResetAckedGestureEventCount()); |
- EXPECT_EQ(0U, GestureEventLastQueueEventSize()); |
- |
- // GFC before previous GFS is acked. |
- SimulateGestureFlingStartEvent(0, -10, source_device); |
- EXPECT_TRUE(FlingInProgress()); |
- SimulateGestureEvent(WebInputEvent::GestureFlingCancel, source_device); |
- EXPECT_FALSE(FlingInProgress()); |
- EXPECT_EQ(1U, GetAndResetSentGestureEventCount()); |
- EXPECT_EQ(2U, GestureEventLastQueueEventSize()); |
- |
- // Advance state realistically. |
- SendInputEventACK(WebInputEvent::GestureFlingStart, |
- INPUT_EVENT_ACK_STATE_CONSUMED); |
- RunUntilIdle(); |
- EXPECT_EQ(1U, GetAndResetSentGestureEventCount()); |
- SendInputEventACK(WebInputEvent::GestureFlingCancel, |
- INPUT_EVENT_ACK_STATE_CONSUMED); |
- RunUntilIdle(); |
- EXPECT_EQ(2U, GetAndResetAckedGestureEventCount()); |
- EXPECT_EQ(0U, GetAndResetSentGestureEventCount()); |
- EXPECT_EQ(0U, GestureEventLastQueueEventSize()); |
- |
- // GFS is added to the queue if another event is pending |
- SimulateGestureScrollUpdateEvent(8, -7, 0); |
- SimulateGestureFlingStartEvent(0, -10, source_device); |
- EXPECT_EQ(2U, GestureEventLastQueueEventSize()); |
- EXPECT_EQ(1U, GetAndResetSentGestureEventCount()); |
- WebGestureEvent merged_event = GestureEventLastQueueEvent(); |
- EXPECT_EQ(WebInputEvent::GestureFlingStart, merged_event.type); |
- EXPECT_TRUE(FlingInProgress()); |
- EXPECT_EQ(2U, GestureEventLastQueueEventSize()); |
- |
- // GFS in queue means that a GFC is added to the queue |
- SimulateGestureEvent(WebInputEvent::GestureFlingCancel, source_device); |
- merged_event =GestureEventLastQueueEvent(); |
- EXPECT_EQ(WebInputEvent::GestureFlingCancel, merged_event.type); |
- EXPECT_FALSE(FlingInProgress()); |
- EXPECT_EQ(3U, GestureEventLastQueueEventSize()); |
- |
- // Adding a second GFC is dropped. |
- SimulateGestureEvent(WebInputEvent::GestureFlingCancel, source_device); |
- EXPECT_FALSE(FlingInProgress()); |
- EXPECT_EQ(3U, GestureEventLastQueueEventSize()); |
- |
- // Adding another GFS will add it to the queue. |
- SimulateGestureFlingStartEvent(0, -10, source_device); |
- merged_event = GestureEventLastQueueEvent(); |
- EXPECT_EQ(WebInputEvent::GestureFlingStart, merged_event.type); |
- EXPECT_TRUE(FlingInProgress()); |
- EXPECT_EQ(4U, GestureEventLastQueueEventSize()); |
- |
- // GFS in queue means that a GFC is added to the queue |
- SimulateGestureEvent(WebInputEvent::GestureFlingCancel, source_device); |
- merged_event = GestureEventLastQueueEvent(); |
- EXPECT_EQ(WebInputEvent::GestureFlingCancel, merged_event.type); |
- EXPECT_FALSE(FlingInProgress()); |
- EXPECT_EQ(5U, GestureEventLastQueueEventSize()); |
- |
- // Adding another GFC with a GFC already there is dropped. |
- SimulateGestureEvent(WebInputEvent::GestureFlingCancel, source_device); |
- merged_event = GestureEventLastQueueEvent(); |
- EXPECT_EQ(WebInputEvent::GestureFlingCancel, merged_event.type); |
- EXPECT_FALSE(FlingInProgress()); |
- EXPECT_EQ(5U, GestureEventLastQueueEventSize()); |
-} |
- |
INSTANTIATE_TEST_CASE_P(AllSources, |
GestureEventFilterWithSourceTest, |
testing::Values(WebGestureEvent::Touchscreen, |
@@ -728,17 +627,4 @@ TEST_F(GestureEventFilterTest, DebounceDropsDeferredEvents) { |
} |
} |
-TEST_F(GestureEventFilterTest, DropZeroVelocityFlings) { |
- WebGestureEvent gesture_event; |
- gesture_event.type = WebInputEvent::GestureFlingStart; |
- gesture_event.sourceDevice = WebGestureEvent::Touchpad; |
- gesture_event.data.flingStart.velocityX = 0.f; |
- gesture_event.data.flingStart.velocityY = 0.f; |
- ASSERT_EQ(0U, GetAndResetSentGestureEventCount()); |
- ASSERT_EQ(0U, GestureEventLastQueueEventSize()); |
- EXPECT_FALSE(SimulateGestureEvent(gesture_event)); |
- EXPECT_EQ(0U, GetAndResetSentGestureEventCount()); |
- EXPECT_EQ(0U, GestureEventLastQueueEventSize()); |
-} |
- |
} // namespace content |