Chromium Code Reviews| Index: content/browser/frame_host/render_frame_host_impl.cc |
| diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc |
| index 4b35a18caf4cf2822ef5984ae939dbae9cce6855..666a48b30d90bb29424c576be127c5c8be8166b2 100644 |
| --- a/content/browser/frame_host/render_frame_host_impl.cc |
| +++ b/content/browser/frame_host/render_frame_host_impl.cc |
| @@ -30,6 +30,7 @@ |
| #include "content/browser/frame_host/debug_urls.h" |
| #include "content/browser/frame_host/frame_tree.h" |
| #include "content/browser/frame_host/frame_tree_node.h" |
| +#include "content/browser/frame_host/input/legacy_ipc_frame_input_handler.h" |
| #include "content/browser/frame_host/navigation_entry_impl.h" |
| #include "content/browser/frame_host/navigation_handle_impl.h" |
| #include "content/browser/frame_host/navigation_request.h" |
| @@ -69,6 +70,7 @@ |
| #include "content/common/content_security_policy/content_security_policy.h" |
| #include "content/common/frame_messages.h" |
| #include "content/common/frame_owner_properties.h" |
| +#include "content/common/input/input_handler.mojom.h" |
| #include "content/common/input_messages.h" |
| #include "content/common/inter_process_time_ticks_converter.h" |
| #include "content/common/navigation_params.h" |
| @@ -988,6 +990,12 @@ bool RenderFrameHostImpl::SchemeShouldBypassCSP( |
| scheme) != bypassing_schemes.end(); |
| } |
| +mojom::FrameInputHandler* RenderFrameHostImpl::GetFrameInputHandler() { |
| + if (legacy_frame_input_handler_.get()) |
|
dcheng
2017/05/19 14:59:33
Nit: no.get() in conditional tests
dtapuska
2017/05/23 16:01:18
Done.
|
| + return legacy_frame_input_handler_.get(); |
| + return frame_input_handler_.get(); |
| +} |
| + |
| bool RenderFrameHostImpl::CreateRenderFrame(int proxy_routing_id, |
| int opener_routing_id, |
| int parent_routing_id, |
| @@ -2983,21 +2991,6 @@ void RenderFrameHostImpl::AdvanceFocus(blink::WebFocusType type, |
| new FrameMsg_AdvanceFocus(GetRoutingID(), type, source_proxy_routing_id)); |
| } |
| -void RenderFrameHostImpl::ExtendSelectionAndDelete(size_t before, |
| - size_t after) { |
| - Send(new InputMsg_ExtendSelectionAndDelete(routing_id_, before, after)); |
| -} |
| - |
| -void RenderFrameHostImpl::DeleteSurroundingText(size_t before, size_t after) { |
| - Send(new InputMsg_DeleteSurroundingText(routing_id_, before, after)); |
| -} |
| - |
| -void RenderFrameHostImpl::DeleteSurroundingTextInCodePoints(int before, |
| - int after) { |
| - Send(new InputMsg_DeleteSurroundingTextInCodePoints(routing_id_, before, |
| - after)); |
| -} |
| - |
| void RenderFrameHostImpl::JavaScriptDialogClosed( |
| IPC::Message* reply_msg, |
| bool success, |
| @@ -3152,6 +3145,14 @@ void RenderFrameHostImpl::SetUpMojoIfNeeded() { |
| frame_->GetInterfaceProvider(mojo::MakeRequest(&remote_interfaces)); |
| remote_interfaces_.reset(new service_manager::InterfaceProvider); |
| remote_interfaces_->Bind(std::move(remote_interfaces)); |
| + |
| + if (base::CommandLine::ForCurrentProcess()->HasSwitch( |
| + switches::kMojoInputMessages)) { |
| + GetRemoteInterfaces()->GetInterface(&frame_input_handler_); |
| + } else { |
| + legacy_frame_input_handler_.reset( |
| + new LegacyIPCFrameInputHandler(this, routing_id_)); |
| + } |
| } |
| void RenderFrameHostImpl::InvalidateMojoConnection() { |