Index: content/renderer/render_view_impl.cc |
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc |
index 33c5b12758630b6962c4594eaf28331cdb6b2eb0..be5bbd4ccf71e8fdfa91c58a07f80b22d61a1846 100644 |
--- a/content/renderer/render_view_impl.cc |
+++ b/content/renderer/render_view_impl.cc |
@@ -255,12 +255,14 @@ using WebKit::WebFindOptions; |
using WebKit::WebFormControlElement; |
using WebKit::WebFormElement; |
using WebKit::WebFrame; |
+using WebKit::WebGestureEvent; |
using WebKit::WebGraphicsContext3D; |
using WebKit::WebHistoryItem; |
using WebKit::WebHTTPBody; |
using WebKit::WebIconURL; |
using WebKit::WebImage; |
using WebKit::WebInputElement; |
+using WebKit::WebInputEvent; |
using WebKit::WebIntentRequest; |
using WebKit::WebIntentServiceInfo; |
using WebKit::WebMediaPlayer; |
@@ -2074,6 +2076,16 @@ bool RenderViewImpl::handleCurrentKeyboardEvent() { |
return did_execute_command; |
} |
+void RenderViewImpl::didHandleGestureEvent(const WebGestureEvent& event, |
+ bool event_swallowed) { |
+#if defined(OS_ANDROID) |
+ if (event.type == WebInputEvent::GestureTap || |
+ event.type == WebInputEvent::GestureLongPress) { |
+ UpdateTextInputState(SHOW_IME_IF_NEEDED); |
+ } |
+#endif |
+} |
+ |
WebKit::WebColorChooser* RenderViewImpl::createColorChooser( |
WebKit::WebColorChooserClient* client, |
const WebKit::WebColor& initial_color) { |
@@ -5644,12 +5656,12 @@ void RenderViewImpl::OnSetFocus(bool enable) { |
} |
void RenderViewImpl::PpapiPluginFocusChanged() { |
- UpdateTextInputState(); |
+ UpdateTextInputState(DO_NOT_SHOW_IME); |
UpdateSelectionBounds(); |
} |
void RenderViewImpl::PpapiPluginTextInputTypeChanged() { |
- UpdateTextInputState(); |
+ UpdateTextInputState(DO_NOT_SHOW_IME); |
if (renderer_accessibility_) |
renderer_accessibility_->FocusedNodeChanged(WebNode()); |
} |