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 2bdb04d78b4352fa6e12420164ff14aa43964385..30d95450a611ac87bf6fcc049fd22448203956b9 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" |
@@ -1035,6 +1037,12 @@ bool RenderFrameHostImpl::SchemeShouldBypassCSP( |
scheme) != bypassing_schemes.end(); |
} |
+mojom::FrameInputHandler* RenderFrameHostImpl::GetFrameInputHandler() { |
+ if (legacy_frame_input_handler_) |
+ 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, |
@@ -3049,21 +3057,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, |
@@ -3219,6 +3212,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() { |