Teach render_host about a mojo WidgetInputHandler.
Implement a WidgetInputHandler as a legacy interface over Chrome IPC.
This will then allow us to dynamically swap it with a mojo backed one.
This change does not provide a mojo backed implementation of this
interface but just an implementation of the interface backed by Chrome IPC.
The new implementation will come in another CL.
BUG=722928
[email protected]
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_site_isolation
Change-Id: I03bb42524cec501a8b76f517629e0b3e3e76bba0
Reviewed-on: https://chromium-review.googlesource.com/541036
Commit-Queue: Dave Tapuska <[email protected]>
Reviewed-by: Daniel Cheng <[email protected]>
Reviewed-by: Antoine Labour <[email protected]>
Cr-Commit-Position: refs/heads/master@{#484707}
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 3be78992..9738d39b 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -2753,8 +2753,18 @@
return rfh ? rfh->GetOrCreateBrowserAccessibilityManager() : nullptr;
}
+void WebContentsImpl::ExecuteEditCommand(
+ const std::string& command,
+ const base::Optional<base::string16>& value) {
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
+ if (!focused_frame)
+ return;
+
+ focused_frame->GetFrameInputHandler()->ExecuteEditCommand(command, value);
+}
+
void WebContentsImpl::MoveRangeSelectionExtent(const gfx::Point& extent) {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -2763,16 +2773,24 @@
void WebContentsImpl::SelectRange(const gfx::Point& base,
const gfx::Point& extent) {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
focused_frame->GetFrameInputHandler()->SelectRange(base, extent);
}
+void WebContentsImpl::MoveCaret(const gfx::Point& extent) {
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
+ if (!focused_frame)
+ return;
+
+ focused_frame->GetFrameInputHandler()->MoveCaret(extent);
+}
+
void WebContentsImpl::AdjustSelectionByCharacterOffset(int start_adjust,
int end_adjust) {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -2953,7 +2971,7 @@
}
void WebContentsImpl::Undo() {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -2962,7 +2980,7 @@
}
void WebContentsImpl::Redo() {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
focused_frame->GetFrameInputHandler()->Redo();
@@ -2970,7 +2988,7 @@
}
void WebContentsImpl::Cut() {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -2979,7 +2997,7 @@
}
void WebContentsImpl::Copy() {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -2989,7 +3007,7 @@
void WebContentsImpl::CopyToFindPboard() {
#if defined(OS_MACOSX)
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -3000,7 +3018,7 @@
}
void WebContentsImpl::Paste() {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -3009,7 +3027,7 @@
}
void WebContentsImpl::PasteAndMatchStyle() {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -3018,7 +3036,7 @@
}
void WebContentsImpl::Delete() {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -3027,7 +3045,7 @@
}
void WebContentsImpl::SelectAll() {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -3036,7 +3054,7 @@
}
void WebContentsImpl::CollapseSelection() {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -3044,7 +3062,7 @@
}
void WebContentsImpl::Replace(const base::string16& word) {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;
@@ -3052,7 +3070,7 @@
}
void WebContentsImpl::ReplaceMisspelling(const base::string16& word) {
- RenderFrameHost* focused_frame = GetFocusedFrame();
+ RenderFrameHostImpl* focused_frame = GetFocusedFrame();
if (!focused_frame)
return;