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

Side by Side Diff: blimp/engine/feature/engine_render_widget_feature.cc

Issue 2370393002: Extracting placeholder information from Webkit to Blimp (Closed)
Patch Set: Observing InputMethod Created 4 years, 2 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
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "blimp/engine/feature/engine_render_widget_feature.h" 5 #include "blimp/engine/feature/engine_render_widget_feature.h"
6 6
7 #include "base/numerics/safe_conversions.h" 7 #include "base/numerics/safe_conversions.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "blimp/common/create_blimp_message.h" 9 #include "blimp/common/create_blimp_message.h"
10 #include "blimp/common/proto/blimp_message.pb.h" 10 #include "blimp/common/proto/blimp_message.pb.h"
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 compositor_message->set_payload(message.data(), 126 compositor_message->set_payload(message.data(),
127 base::checked_cast<int>(message.size())); 127 base::checked_cast<int>(message.size()));
128 128
129 compositor_message_sender_->ProcessMessage(std::move(blimp_message), 129 compositor_message_sender_->ProcessMessage(std::move(blimp_message),
130 net::CompletionCallback()); 130 net::CompletionCallback());
131 } 131 }
132 132
133 void EngineRenderWidgetFeature::SendShowImeRequest( 133 void EngineRenderWidgetFeature::SendShowImeRequest(
134 const int tab_id, 134 const int tab_id,
135 content::RenderWidgetHost* render_widget_host, 135 content::RenderWidgetHost* render_widget_host,
136 const ui::TextInputClient* client) { 136 ui::TextInputType type,
137 DCHECK(client); 137 const std::string& text,
138 138 const std::string& placeholder) {
139 ImeMessage* ime_message; 139 ImeMessage* ime_message;
140 std::unique_ptr<BlimpMessage> blimp_message = 140 std::unique_ptr<BlimpMessage> blimp_message =
141 CreateBlimpMessage(&ime_message, tab_id); 141 CreateBlimpMessage(&ime_message, tab_id);
142 142
143 int render_widget_id = GetRenderWidgetId(tab_id, render_widget_host); 143 int render_widget_id = GetRenderWidgetId(tab_id, render_widget_host);
144 DCHECK_GT(render_widget_id, 0); 144 DCHECK_GT(render_widget_id, 0);
145 ime_message->set_render_widget_id(render_widget_id); 145 ime_message->set_render_widget_id(render_widget_id);
146 ime_message->set_type(ImeMessage::SHOW_IME); 146 ime_message->set_type(ImeMessage::SHOW_IME);
147 ime_message->set_text_input_type( 147 ime_message->set_text_input_type(
148 InputMessageConverter::TextInputTypeToProto(client->GetTextInputType())); 148 InputMessageConverter::TextInputTypeToProto(type));
149 149 ime_message->set_ime_text(text);
150 gfx::Range text_range;
151 base::string16 existing_text;
152 client->GetTextRange(&text_range);
153 client->GetTextFromRange(text_range, &existing_text);
154 ime_message->set_ime_text(base::UTF16ToUTF8(existing_text));
155 150
156 ime_message_sender_->ProcessMessage(std::move(blimp_message), 151 ime_message_sender_->ProcessMessage(std::move(blimp_message),
157 net::CompletionCallback()); 152 net::CompletionCallback());
158 } 153 }
159 154
160 void EngineRenderWidgetFeature::SendHideImeRequest( 155 void EngineRenderWidgetFeature::SendHideImeRequest(
161 const int tab_id, 156 const int tab_id,
162 content::RenderWidgetHost* render_widget_host) { 157 content::RenderWidgetHost* render_widget_host) {
163 ImeMessage* ime_message; 158 ImeMessage* ime_message;
164 std::unique_ptr<BlimpMessage> blimp_message = 159 std::unique_ptr<BlimpMessage> blimp_message =
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after
361 IdToRenderWidgetMap::const_iterator widget_id_it = 356 IdToRenderWidgetMap::const_iterator widget_id_it =
362 id_to_render_widget->find(render_widget_id); 357 id_to_render_widget->find(render_widget_id);
363 if (widget_id_it == id_to_render_widget->end()) 358 if (widget_id_it == id_to_render_widget->end())
364 return nullptr; 359 return nullptr;
365 360
366 return widget_id_it->second; 361 return widget_id_it->second;
367 } 362 }
368 363
369 } // namespace engine 364 } // namespace engine
370 } // namespace blimp 365 } // namespace blimp
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698