Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(310)

Side by Side Diff: content/browser/frame_host/input/legacy_ipc_frame_input_handler.cc

Issue 2884243003: Add a mojo channel for frame messages. (Closed)
Patch Set: Fix presubmit warning I ignored Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "content/browser/frame_host/input/legacy_ipc_frame_input_handler.h"
6
7 #include "base/strings/utf_string_conversions.h"
8 #include "content/browser/renderer_host/render_widget_host_impl.h"
9 #include "content/common/input_messages.h"
10
11 namespace content {
12
13 LegacyIPCFrameInputHandler::LegacyIPCFrameInputHandler(
14 RenderFrameHostImpl* frame_host,
15 int routing_id)
16 : frame_host_(frame_host), routing_id_(routing_id) {
17 DCHECK(frame_host);
18 }
19
20 LegacyIPCFrameInputHandler::~LegacyIPCFrameInputHandler() {}
21
22 void LegacyIPCFrameInputHandler::SetCompositionFromExistingText(
23 int32_t start,
24 int32_t end,
25 const std::vector<ui::CompositionUnderline>& ui_underlines) {
26 std::vector<blink::WebCompositionUnderline> underlines;
27 for (const auto& underline : ui_underlines) {
28 blink::WebCompositionUnderline blink_underline(
29 underline.start_offset, underline.end_offset, underline.color,
30 underline.thick, underline.background_color);
31 underlines.push_back(blink_underline);
32 }
33
34 SendInput(base::MakeUnique<InputMsg_SetCompositionFromExistingText>(
35 routing_id_, start, end, underlines));
36 }
37
38 void LegacyIPCFrameInputHandler::ExtendSelectionAndDelete(int32_t before,
39 int32_t after) {
40 SendInput(base::MakeUnique<InputMsg_ExtendSelectionAndDelete>(routing_id_,
41 before, after));
42 }
43
44 void LegacyIPCFrameInputHandler::DeleteSurroundingText(int32_t before,
45 int32_t after) {
46 SendInput(base::MakeUnique<InputMsg_DeleteSurroundingText>(routing_id_,
47 before, after));
48 }
49
50 void LegacyIPCFrameInputHandler::DeleteSurroundingTextInCodePoints(
51 int32_t before,
52 int32_t after) {
53 SendInput(base::MakeUnique<InputMsg_DeleteSurroundingTextInCodePoints>(
54 routing_id_, before, after));
55 }
56
57 void LegacyIPCFrameInputHandler::SetEditableSelectionOffsets(int32_t start,
58 int32_t end) {
59 SendInput(base::MakeUnique<InputMsg_SetEditableSelectionOffsets>(routing_id_,
60 start, end));
61 }
62
63 void LegacyIPCFrameInputHandler::ExecuteEditCommand(
64 const std::string& command,
65 const base::Optional<base::string16>& value) {
66 if (!value) {
67 SendInput(base::MakeUnique<InputMsg_ExecuteNoValueEditCommand>(routing_id_,
68 command));
69 }
70 }
71
72 void LegacyIPCFrameInputHandler::Undo() {
73 SendInput(base::MakeUnique<InputMsg_Undo>(routing_id_));
74 }
75
76 void LegacyIPCFrameInputHandler::Redo() {
77 SendInput(base::MakeUnique<InputMsg_Redo>(routing_id_));
78 }
79
80 void LegacyIPCFrameInputHandler::Cut() {
81 SendInput(base::MakeUnique<InputMsg_Cut>(routing_id_));
82 }
83
84 void LegacyIPCFrameInputHandler::Copy() {
85 SendInput(base::MakeUnique<InputMsg_Copy>(routing_id_));
86 }
87
88 void LegacyIPCFrameInputHandler::CopyToFindPboard() {
89 #if defined(OS_MACOSX)
90 SendInput(base::MakeUnique<InputMsg_CopyToFindPboard>(routing_id_));
91 #endif
92 }
93
94 void LegacyIPCFrameInputHandler::Paste() {
95 SendInput(base::MakeUnique<InputMsg_Paste>(routing_id_));
96 }
97
98 void LegacyIPCFrameInputHandler::PasteAndMatchStyle() {
99 SendInput(base::MakeUnique<InputMsg_PasteAndMatchStyle>(routing_id_));
100 }
101
102 void LegacyIPCFrameInputHandler::Replace(const base::string16& word) {
103 SendInput(base::MakeUnique<InputMsg_Replace>(routing_id_, word));
104 }
105
106 void LegacyIPCFrameInputHandler::ReplaceMisspelling(
107 const base::string16& word) {
108 SendInput(base::MakeUnique<InputMsg_ReplaceMisspelling>(routing_id_, word));
109 }
110
111 void LegacyIPCFrameInputHandler::Delete() {
112 SendInput(base::MakeUnique<InputMsg_Delete>(routing_id_));
113 }
114
115 void LegacyIPCFrameInputHandler::SelectAll() {
116 SendInput(base::MakeUnique<InputMsg_SelectAll>(routing_id_));
117 }
118
119 void LegacyIPCFrameInputHandler::CollapseSelection() {
120 SendInput(base::MakeUnique<InputMsg_CollapseSelection>(routing_id_));
121 }
122
123 void LegacyIPCFrameInputHandler::SelectRange(const gfx::Point& point,
124 const gfx::Point& extent) {
125 SendInput(base::MakeUnique<InputMsg_SelectRange>(routing_id_, point, extent));
126 }
127
128 void LegacyIPCFrameInputHandler::AdjustSelectionByCharacterOffset(int32_t start,
129 int32_t end) {
130 SendInput(base::MakeUnique<InputMsg_AdjustSelectionByCharacterOffset>(
131 routing_id_, start, end));
132 }
133
134 void LegacyIPCFrameInputHandler::MoveRangeSelectionExtent(
135 const gfx::Point& extent) {
136 SendInput(
137 base::MakeUnique<InputMsg_MoveRangeSelectionExtent>(routing_id_, extent));
138 }
139
140 void LegacyIPCFrameInputHandler::SendInput(
141 std::unique_ptr<IPC::Message> message) {
142 frame_host_->GetRenderWidgetHost()->input_router()->SendInput(
143 std::move(message));
144 }
145
146 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698