| OLD | NEW |
| 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 Loading... |
| 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 Loading... |
| 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 |
| OLD | NEW |