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

Side by Side Diff: content/renderer/input/input_handler_manager.cc

Issue 1058873010: Move blink scheduler implementation into a component (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: updates Created 5 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
« no previous file with comments | « content/renderer/input/input_handler_manager.h ('k') | content/renderer/render_thread_impl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/renderer/input/input_handler_manager.h" 5 #include "content/renderer/input/input_handler_manager.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/message_loop/message_loop_proxy.h" 8 #include "base/message_loop/message_loop_proxy.h"
9 #include "base/trace_event/trace_event.h" 9 #include "base/trace_event/trace_event.h"
10 #include "cc/input/input_handler.h" 10 #include "cc/input/input_handler.h"
11 #include "components/scheduler/renderer/renderer_scheduler.h"
11 #include "content/renderer/input/input_event_filter.h" 12 #include "content/renderer/input/input_event_filter.h"
12 #include "content/renderer/input/input_handler_manager_client.h" 13 #include "content/renderer/input/input_handler_manager_client.h"
13 #include "content/renderer/input/input_handler_wrapper.h" 14 #include "content/renderer/input/input_handler_wrapper.h"
14 #include "content/renderer/input/input_scroll_elasticity_controller.h" 15 #include "content/renderer/input/input_scroll_elasticity_controller.h"
15 #include "content/renderer/scheduler/renderer_scheduler.h"
16 16
17 using blink::WebInputEvent; 17 using blink::WebInputEvent;
18 18
19 namespace content { 19 namespace content {
20 20
21 namespace { 21 namespace {
22 22
23 InputEventAckState InputEventDispositionToAck( 23 InputEventAckState InputEventDispositionToAck(
24 InputHandlerProxy::EventDisposition disposition) { 24 InputHandlerProxy::EventDisposition disposition) {
25 switch (disposition) { 25 switch (disposition) {
26 case InputHandlerProxy::DID_HANDLE: 26 case InputHandlerProxy::DID_HANDLE:
27 return INPUT_EVENT_ACK_STATE_CONSUMED; 27 return INPUT_EVENT_ACK_STATE_CONSUMED;
28 case InputHandlerProxy::DID_NOT_HANDLE: 28 case InputHandlerProxy::DID_NOT_HANDLE:
29 return INPUT_EVENT_ACK_STATE_NOT_CONSUMED; 29 return INPUT_EVENT_ACK_STATE_NOT_CONSUMED;
30 case InputHandlerProxy::DROP_EVENT: 30 case InputHandlerProxy::DROP_EVENT:
31 return INPUT_EVENT_ACK_STATE_NO_CONSUMER_EXISTS; 31 return INPUT_EVENT_ACK_STATE_NO_CONSUMER_EXISTS;
32 } 32 }
33 NOTREACHED(); 33 NOTREACHED();
34 return INPUT_EVENT_ACK_STATE_UNKNOWN; 34 return INPUT_EVENT_ACK_STATE_UNKNOWN;
35 } 35 }
36 36
37 } // namespace 37 } // namespace
38 38
39 InputHandlerManager::InputHandlerManager( 39 InputHandlerManager::InputHandlerManager(
40 const scoped_refptr<base::MessageLoopProxy>& message_loop_proxy, 40 const scoped_refptr<base::MessageLoopProxy>& message_loop_proxy,
41 InputHandlerManagerClient* client, 41 InputHandlerManagerClient* client,
42 RendererScheduler* renderer_scheduler) 42 scheduler::RendererScheduler* renderer_scheduler)
43 : message_loop_proxy_(message_loop_proxy), 43 : message_loop_proxy_(message_loop_proxy),
44 client_(client), 44 client_(client),
45 renderer_scheduler_(renderer_scheduler) { 45 renderer_scheduler_(renderer_scheduler) {
46 DCHECK(client_); 46 DCHECK(client_);
47 client_->SetBoundHandler(base::Bind(&InputHandlerManager::HandleInputEvent, 47 client_->SetBoundHandler(base::Bind(&InputHandlerManager::HandleInputEvent,
48 base::Unretained(this))); 48 base::Unretained(this)));
49 } 49 }
50 50
51 InputHandlerManager::~InputHandlerManager() { 51 InputHandlerManager::~InputHandlerManager() {
52 client_->SetBoundHandler(InputHandlerManagerClient::Handler()); 52 client_->SetBoundHandler(InputHandlerManagerClient::Handler());
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 void InputHandlerManager::DidReceiveInputEvent( 163 void InputHandlerManager::DidReceiveInputEvent(
164 const blink::WebInputEvent& web_input_event) { 164 const blink::WebInputEvent& web_input_event) {
165 renderer_scheduler_->DidReceiveInputEventOnCompositorThread(web_input_event); 165 renderer_scheduler_->DidReceiveInputEventOnCompositorThread(web_input_event);
166 } 166 }
167 167
168 void InputHandlerManager::DidAnimateForInput() { 168 void InputHandlerManager::DidAnimateForInput() {
169 renderer_scheduler_->DidAnimateForInputOnCompositorThread(); 169 renderer_scheduler_->DidAnimateForInputOnCompositorThread();
170 } 170 }
171 171
172 } // namespace content 172 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/input/input_handler_manager.h ('k') | content/renderer/render_thread_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698