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

Side by Side Diff: content/browser/renderer_host/input/mock_input_router_client.cc

Issue 2785533003: Animated scroll shouldn't consume unhandled scrolls for OOPIFs. (Closed)
Patch Set: Fix Android compile. Created 3 years, 8 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 unified diff | Download patch
OLDNEW
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/mock_input_router_client.h" 5 #include "content/browser/renderer_host/input/mock_input_router_client.h"
6 6
7 #include "content/browser/renderer_host/input/input_router.h" 7 #include "content/browser/renderer_host/input/input_router.h"
8 #include "content/common/input/input_event.h" 8 #include "content/common/input/input_event.h"
9 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
10 10
11 using base::TimeDelta; 11 using base::TimeDelta;
12 using blink::WebGestureEvent; 12 using blink::WebGestureEvent;
13 using blink::WebInputEvent; 13 using blink::WebInputEvent;
14 using blink::WebMouseEvent; 14 using blink::WebMouseEvent;
15 using blink::WebMouseWheelEvent; 15 using blink::WebMouseWheelEvent;
16 using blink::WebTouchEvent; 16 using blink::WebTouchEvent;
17 using blink::WebTouchPoint; 17 using blink::WebTouchPoint;
18 18
19 namespace content { 19 namespace content {
20 20
21 MockInputRouterClient::MockInputRouterClient() 21 MockInputRouterClient::MockInputRouterClient()
22 : input_router_(NULL), 22 : input_router_(NULL),
23 in_flight_event_count_(0), 23 in_flight_event_count_(0),
24 has_touch_handler_(false), 24 has_touch_handler_(false),
25 is_in_gesture_scroll_(false),
25 filter_state_(INPUT_EVENT_ACK_STATE_NOT_CONSUMED), 26 filter_state_(INPUT_EVENT_ACK_STATE_NOT_CONSUMED),
26 filter_input_event_called_(false), 27 filter_input_event_called_(false),
27 did_flush_called_count_(0) { 28 did_flush_called_count_(0) {}
28 }
29 29
30 MockInputRouterClient::~MockInputRouterClient() {} 30 MockInputRouterClient::~MockInputRouterClient() {}
31 31
32 InputEventAckState MockInputRouterClient::FilterInputEvent( 32 InputEventAckState MockInputRouterClient::FilterInputEvent(
33 const WebInputEvent& input_event, 33 const WebInputEvent& input_event,
34 const ui::LatencyInfo& latency_info) { 34 const ui::LatencyInfo& latency_info) {
35 filter_input_event_called_ = true; 35 filter_input_event_called_ = true;
36 last_filter_event_.reset(new InputEvent(input_event, latency_info)); 36 last_filter_event_.reset(new InputEvent(input_event, latency_info));
37 return filter_state_; 37 return filter_state_;
38 } 38 }
(...skipping 24 matching lines...) Expand all
63 63
64 void MockInputRouterClient::DidStopFlinging() { 64 void MockInputRouterClient::DidStopFlinging() {
65 } 65 }
66 66
67 void MockInputRouterClient::ForwardGestureEventWithLatencyInfo( 67 void MockInputRouterClient::ForwardGestureEventWithLatencyInfo(
68 const blink::WebGestureEvent& gesture_event, 68 const blink::WebGestureEvent& gesture_event,
69 const ui::LatencyInfo& latency_info) { 69 const ui::LatencyInfo& latency_info) {
70 if (input_router_) 70 if (input_router_)
71 input_router_->SendGestureEvent( 71 input_router_->SendGestureEvent(
72 GestureEventWithLatencyInfo(gesture_event, latency_info)); 72 GestureEventWithLatencyInfo(gesture_event, latency_info));
73 if (gesture_event.GetType() == blink::WebInputEvent::kGestureScrollBegin &&
74 !gesture_event.data.scroll_begin.synthetic) {
75 is_in_gesture_scroll_ = true;
76 } else if (gesture_event.GetType() ==
77 blink::WebInputEvent::kGestureScrollEnd &&
78 !gesture_event.data.scroll_end.synthetic) {
79 is_in_gesture_scroll_ = false;
80 }
81 }
82
83 bool MockInputRouterClient::is_in_gesture_scroll(
84 blink::WebGestureDevice device) {
85 return is_in_gesture_scroll_;
73 } 86 }
74 87
75 bool MockInputRouterClient::GetAndResetFilterEventCalled() { 88 bool MockInputRouterClient::GetAndResetFilterEventCalled() {
76 bool filter_input_event_called = filter_input_event_called_; 89 bool filter_input_event_called = filter_input_event_called_;
77 filter_input_event_called_ = false; 90 filter_input_event_called_ = false;
78 return filter_input_event_called; 91 return filter_input_event_called;
79 } 92 }
80 93
81 size_t MockInputRouterClient::GetAndResetDidFlushCount() { 94 size_t MockInputRouterClient::GetAndResetDidFlushCount() {
82 size_t did_flush_called_count = did_flush_called_count_; 95 size_t did_flush_called_count = did_flush_called_count_;
83 did_flush_called_count_ = 0; 96 did_flush_called_count_ = 0;
84 return did_flush_called_count; 97 return did_flush_called_count;
85 } 98 }
86 99
87 ui::DidOverscrollParams MockInputRouterClient::GetAndResetOverscroll() { 100 ui::DidOverscrollParams MockInputRouterClient::GetAndResetOverscroll() {
88 ui::DidOverscrollParams overscroll; 101 ui::DidOverscrollParams overscroll;
89 std::swap(overscroll_, overscroll); 102 std::swap(overscroll_, overscroll);
90 return overscroll; 103 return overscroll;
91 } 104 }
92 105
93 } // namespace content 106 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698