Chromium Code Reviews| Index: blimp/engine/session/tab.cc |
| diff --git a/blimp/engine/session/tab.cc b/blimp/engine/session/tab.cc |
| index 895902350dcc244a3438d8d417faa6f5cd83685c..92143b727435e8cc2eb772b5cd6d719636e397ae 100644 |
| --- a/blimp/engine/session/tab.cc |
| +++ b/blimp/engine/session/tab.cc |
| @@ -19,6 +19,7 @@ |
| #include "content/public/browser/render_widget_host.h" |
| #include "content/public/browser/render_widget_host_view.h" |
| #include "content/public/browser/web_contents.h" |
| +#include "content/public/common/form_field_data.h" |
| #include "content/public/common/renderer_preferences.h" |
| #include "ui/aura/window.h" |
| #include "ui/gfx/geometry/size.h" |
| @@ -34,7 +35,8 @@ Tab::Tab(std::unique_ptr<content::WebContents> web_contents, |
| tab_id_(tab_id), |
| render_widget_feature_(render_widget_feature), |
| navigation_message_sender_(navigation_message_sender), |
| - page_load_tracker_(web_contents_.get(), this) { |
| + page_load_tracker_(web_contents_.get(), this), |
| + weak_factory_(this) { |
| DCHECK(render_widget_feature_); |
| DCHECK(navigation_message_sender_); |
| @@ -168,6 +170,25 @@ void Tab::OnWebGestureEvent(content::RenderWidgetHost* render_widget_host, |
| render_widget_host->ForwardGestureEvent(*event); |
| } |
| +void Tab::ShowIme() { |
| + content::ExtractFormFieldDataCallback reply = |
| + base::Bind(&Tab::GetFocusedFormFieldData, weak_factory_.GetWeakPtr()); |
| + |
| + web_contents()->GetRenderWidgetHostView()->GetFocusedFormFieldData(reply); |
|
David Trainor- moved to gerrit
2016/11/03 04:25:49
What if I get a ShowIme() request while I'm waitin
|
| +} |
| + |
| +void Tab::HideIme() { |
| + render_widget_feature_->SendHideImeRequest( |
| + tab_id(), |
| + web_contents()->GetRenderWidgetHostView()->GetRenderWidgetHost()); |
| +} |
| + |
| +void Tab::GetFocusedFormFieldData(const content::FormFieldData& field) { |
| + render_widget_feature_->SendShowImeRequest( |
| + tab_id(), |
| + web_contents()->GetRenderWidgetHostView()->GetRenderWidgetHost(), field); |
| +} |
| + |
| void Tab::OnCompositorMessageReceived( |
| content::RenderWidgetHost* render_widget_host, |
| const std::vector<uint8_t>& message) { |