Index: content/renderer/render_view_impl.cc |
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc |
index daf58486c6501a8c3c1c1b2194342698377f3a49..7b8e7347ba1df3d73e169e0ec9a1338fb2430d81 100644 |
--- a/content/renderer/render_view_impl.cc |
+++ b/content/renderer/render_view_impl.cc |
@@ -875,6 +875,14 @@ bool RenderViewImpl::OnMessageReceived(const IPC::Message& message) { |
IPC_MESSAGE_HANDLER(ViewMsg_Replace, OnReplace) |
IPC_MESSAGE_HANDLER(ViewMsg_Delete, OnDelete) |
IPC_MESSAGE_HANDLER(ViewMsg_SelectAll, OnSelectAll) |
+ IPC_MESSAGE_HANDLER(ViewMsg_ReplaceAll, OnReplaceAll) |
+ IPC_MESSAGE_HANDLER(ViewMsg_Unselect, OnUnselect) |
+ IPC_MESSAGE_HANDLER(ViewMsg_SetEditableSelectionOffsets, |
+ OnSetEditableSelectionOffsets) |
+ IPC_MESSAGE_HANDLER(ViewMsg_SetCompositionFromExistingText, |
+ OnSetCompositionFromExistingText) |
+ IPC_MESSAGE_HANDLER(ViewMsg_ExtendSelectionAndDelete, |
+ OnExtendSelectionAndDelete) |
IPC_MESSAGE_HANDLER(ViewMsg_SelectRange, OnSelectRange) |
IPC_MESSAGE_HANDLER(ViewMsg_CopyImageAt, OnCopyImageAt) |
IPC_MESSAGE_HANDLER(ViewMsg_ExecuteEditCommand, OnExecuteEditCommand) |
@@ -1294,6 +1302,40 @@ void RenderViewImpl::OnSelectAll() { |
WebString::fromUTF8("SelectAll")); |
} |
+void RenderViewImpl::OnReplaceAll(const string16& text) { |
+ WebKit::WebNode node = GetFocusedNode(); |
+ if (node.isNull() || !IsEditableNode(node)) |
+ return; |
+ |
+ OnSelectAll(); |
+ OnReplace(text); |
+} |
+ |
+void RenderViewImpl::OnUnselect() { |
+ if (!webview()) |
+ return; |
+ |
+ webview()->focusedFrame()->executeCommand(WebString::fromUTF8("Unselect")); |
+} |
+ |
+void RenderViewImpl::OnSetEditableSelectionOffsets(int start, int end) { |
+ webview()->setEditableSelectionOffsets(start, end); |
+} |
+ |
+void RenderViewImpl::OnSetCompositionFromExistingText( |
+ int start, int end, |
+ const std::vector<WebKit::WebCompositionUnderline>& underlines) { |
+ if (!webview()) |
+ return; |
+ webview()->setCompositionFromExistingText(start, end, underlines); |
+} |
+ |
+void RenderViewImpl::OnExtendSelectionAndDelete(int before, int after) { |
+ if (!webview()) |
+ return; |
+ webview()->extendSelectionAndDelete(before, after); |
+} |
+ |
void RenderViewImpl::OnSelectRange(const gfx::Point& start, |
const gfx::Point& end) { |
if (!webview()) |