| 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())
|
|
|