Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1054)

Unified Diff: content/browser/renderer_host/input/gesture_event_filter.cc

Issue 43203004: Remove GestureEventFilter and clean up related bits assuming that we turn on Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/input/gesture_event_filter.cc
diff --git a/content/browser/renderer_host/input/gesture_event_filter.cc b/content/browser/renderer_host/input/gesture_event_filter.cc
deleted file mode 100644
index 5b5720c94e83e5e82fb9cb9b8259a6cc2b3a633f..0000000000000000000000000000000000000000
--- a/content/browser/renderer_host/input/gesture_event_filter.cc
+++ /dev/null
@@ -1,151 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "content/browser/renderer_host/input/gesture_event_filter.h"
-
-#include "base/command_line.h"
-#include "base/strings/string_number_conversions.h"
-#include "content/browser/renderer_host/input/input_router.h"
-#include "content/browser/renderer_host/input/touchpad_tap_suppression_controller.h"
-#include "content/browser/renderer_host/input/touchscreen_tap_suppression_controller.h"
-#include "content/public/common/content_switches.h"
-
-using WebKit::WebGestureEvent;
-using WebKit::WebInputEvent;
-
-namespace content {
-GestureEventFilter::GestureEventFilter(
- GestureEventFilterClient* client,
- TouchpadTapSuppressionControllerClient* touchpad_client)
- : BaseGestureEventFilter(client),
- fling_in_progress_(false),
- touchpad_tap_suppression_controller_(
- new TouchpadTapSuppressionController(touchpad_client)),
- touchscreen_tap_suppression_controller_(
- new TouchscreenTapSuppressionController(this)) {
- DCHECK(client);
- DCHECK(touchpad_tap_suppression_controller_);
-}
-
-GestureEventFilter::~GestureEventFilter() { }
-
-bool GestureEventFilter::ShouldDiscardFlingCancelEvent(
- const GestureEventWithLatencyInfo& gesture_event) const {
- if (coalesced_gesture_events_.empty() && fling_in_progress_)
- return false;
- GestureEventQueue::const_reverse_iterator it =
- coalesced_gesture_events_.rbegin();
- while (it != coalesced_gesture_events_.rend()) {
- if (it->event.type == WebInputEvent::GestureFlingStart)
- return false;
- if (it->event.type == WebInputEvent::GestureFlingCancel)
- return true;
- it++;
- }
- return true;
-}
-
-// NOTE: The filters are applied successively. This simplifies the change.
-bool GestureEventFilter::ShouldForward(
- const GestureEventWithLatencyInfo& gesture_event) {
- return ShouldForwardForZeroVelocityFlingStart(gesture_event) &&
- ShouldForwardForBounceReduction(gesture_event) &&
- ShouldForwardForGFCFiltering(gesture_event) &&
- ShouldForwardForTapSuppression(gesture_event) &&
- ShouldForwardForCoalescing(gesture_event);
-}
-
-bool GestureEventFilter::ShouldForwardForZeroVelocityFlingStart(
- const GestureEventWithLatencyInfo& gesture_event) const {
- return gesture_event.event.type != WebInputEvent::GestureFlingStart ||
- gesture_event.event.sourceDevice != WebGestureEvent::Touchpad ||
- gesture_event.event.data.flingStart.velocityX != 0 ||
- gesture_event.event.data.flingStart.velocityY != 0;
-}
-
-bool GestureEventFilter::ShouldForwardForGFCFiltering(
- const GestureEventWithLatencyInfo& gesture_event) const {
- return gesture_event.event.type != WebInputEvent::GestureFlingCancel ||
- !ShouldDiscardFlingCancelEvent(gesture_event);
-}
-
-bool GestureEventFilter::ShouldForwardForTapSuppression(
- const GestureEventWithLatencyInfo& gesture_event) {
- switch (gesture_event.event.type) {
- case WebInputEvent::GestureFlingCancel:
- if (gesture_event.event.sourceDevice == WebGestureEvent::Touchscreen)
- touchscreen_tap_suppression_controller_->GestureFlingCancel();
- else
- touchpad_tap_suppression_controller_->GestureFlingCancel();
- return true;
- case WebInputEvent::GestureTapDown:
- return !touchscreen_tap_suppression_controller_->
- ShouldDeferGestureTapDown(gesture_event);
- case WebInputEvent::GestureTapCancel:
- return !touchscreen_tap_suppression_controller_->
- ShouldSuppressGestureTapCancel();
- case WebInputEvent::GestureTap:
- case WebInputEvent::GestureTapUnconfirmed:
- return !touchscreen_tap_suppression_controller_->
- ShouldSuppressGestureTap();
- default:
- return true;
- }
- NOTREACHED();
- return false;
-}
-
-bool GestureEventFilter::ShouldForwardScrollEndingEvent(
- const GestureEventWithLatencyInfo& event) {
- return ShouldForwardForGFCFiltering(event) &&
- ShouldForwardForTapSuppression(event) &&
- ShouldForwardForCoalescing(event);
-}
-
-bool GestureEventFilter::ShouldForwardForCoalescing(
- const GestureEventWithLatencyInfo& gesture_event) {
- switch (gesture_event.event.type) {
- case WebInputEvent::GestureFlingCancel:
- fling_in_progress_ = false;
- break;
- case WebInputEvent::GestureFlingStart:
- fling_in_progress_ = true;
- break;
- default:
- break;
- }
- return BaseGestureEventFilter::ShouldForwardForCoalescing(gesture_event);
-}
-
-void GestureEventFilter::ProcessGestureAck(InputEventAckState ack_result,
- WebInputEvent::Type type,
- const ui::LatencyInfo& latency) {
- if (coalesced_gesture_events_.empty()) {
- DLOG(ERROR) << "Received unexpected ACK for event type " << type;
- return;
- }
- DCHECK_EQ(coalesced_gesture_events_.front().event.type, type);
-
- const bool processed = (INPUT_EVENT_ACK_STATE_CONSUMED == ack_result);
- if (type == WebInputEvent::GestureFlingCancel) {
- if (coalesced_gesture_events_.front().event.sourceDevice ==
- WebGestureEvent::Touchscreen)
- touchscreen_tap_suppression_controller_->GestureFlingCancelAck(processed);
- else
- touchpad_tap_suppression_controller_->GestureFlingCancelAck(processed);
- }
-
- BaseGestureEventFilter::ProcessGestureAck(ack_result, type, latency);
-}
-
-TouchpadTapSuppressionController*
- GestureEventFilter::GetTouchpadTapSuppressionController() {
- return touchpad_tap_suppression_controller_.get();
-}
-
-void GestureEventFilter::FlingHasBeenHalted() {
- fling_in_progress_ = false;
-}
-
-} // namespace content

Powered by Google App Engine
This is Rietveld 408576698