Index: content/renderer/gpu/input_handler_manager.cc |
diff --git a/content/renderer/gpu/input_handler_manager.cc b/content/renderer/gpu/input_handler_manager.cc |
index 84d233678784059deaa875a960d57fdbcf8fb261..f7f79f1a1f9d249f8a91ae596e25dfc608344f60 100644 |
--- a/content/renderer/gpu/input_handler_manager.cc |
+++ b/content/renderer/gpu/input_handler_manager.cc |
@@ -15,6 +15,25 @@ using WebKit::WebInputEvent; |
namespace content { |
+namespace { |
+ |
+InputEventAckState InputEventDispositionToAck( |
+ InputHandlerProxy::EventDisposition disposition) { |
+ switch (disposition) { |
+ case InputHandlerProxy::DidHandle: |
+ return INPUT_EVENT_ACK_STATE_CONSUMED; |
+ case InputHandlerProxy::DidNotHandle: |
+ return INPUT_EVENT_ACK_STATE_NOT_CONSUMED; |
+ case InputHandlerProxy::DropEvent: |
+ return INPUT_EVENT_ACK_STATE_NO_CONSUMER_EXISTS; |
+ default: |
jamesr
2013/06/03 20:45:59
i would omit the default: so the compiler yells at
jdduke (slow)
2013/06/03 21:40:42
I like it, done.
|
+ NOTREACHED(); |
+ return INPUT_EVENT_ACK_STATE_UNKNOWN; |
+ } |
+} |
+ |
+} // namespace |
+ |
InputHandlerManager::InputHandlerManager( |
IPC::Listener* main_listener, |
const scoped_refptr<base::MessageLoopProxy>& message_loop_proxy) |
@@ -81,7 +100,7 @@ void InputHandlerManager::RemoveInputHandler(int routing_id) { |
input_handlers_.erase(routing_id); |
} |
-void InputHandlerManager::HandleInputEvent( |
+InputEventAckState InputHandlerManager::HandleInputEvent( |
int routing_id, |
const WebInputEvent* input_event) { |
DCHECK(message_loop_proxy_->BelongsToCurrentThread()); |
@@ -91,11 +110,11 @@ void InputHandlerManager::HandleInputEvent( |
TRACE_EVENT0("InputHandlerManager::HandleInputEvent", |
"NoInputHandlerFound"); |
// Oops, we no longer have an interested input handler.. |
- filter_->DidNotHandleInputEvent(true); |
- return; |
+ return INPUT_EVENT_ACK_STATE_NOT_CONSUMED; |
} |
- it->second->input_handler_proxy()->HandleInputEvent(*input_event); |
+ return InputEventDispositionToAck( |
+ it->second->input_handler_proxy()->HandleInputEvent(*input_event)); |
} |
} // namespace content |