| Index: content/renderer/render_view_impl.cc
|
| diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
|
| index 068bf28d047c5b6ebee6bc7e0807488c4e823ae1..4ddc86b4ca103206c74f69ee54c89559e181e5e3 100644
|
| --- a/content/renderer/render_view_impl.cc
|
| +++ b/content/renderer/render_view_impl.cc
|
| @@ -954,6 +954,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)
|
| @@ -1378,6 +1386,40 @@ void RenderViewImpl::OnSelectAll() {
|
| WebString::fromUTF8("SelectAll"));
|
| }
|
|
|
| +void RenderViewImpl::OnReplaceAll(const string16& text) {
|
| + 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())
|
|
|