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

Unified Diff: blimp/engine/session/tab.cc

Issue 2370393002: Extracting placeholder information from Webkit to Blimp (Closed)
Patch Set: Bypassing the typical text entry path Created 4 years, 1 month 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 side-by-side diff with in-line comments
Download patch
Index: blimp/engine/session/tab.cc
diff --git a/blimp/engine/session/tab.cc b/blimp/engine/session/tab.cc
index 895902350dcc244a3438d8d417faa6f5cd83685c..1ce623c562b4b45297a3643733f8279e2f8cd888 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,26 @@ 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);
+}
+
+void Tab::HideIme() {
+ render_widget_feature_->SendHideImeRequest(
+ tab_id(),
+ web_contents()->GetRenderWidgetHostView()->GetRenderWidgetHost());
+}
+
+void Tab::GetFocusedFormFieldData(const content::FormFieldData& field) {
+ VLOG(0) << "field : " << field.text << " " << field.placeholder;
David Trainor- moved to gerrit 2016/11/03 04:25:49 Remove?
+ 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) {

Powered by Google App Engine
This is Rietveld 408576698