Index: content/renderer/render_widget.cc |
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc |
index 57b7abfd8fc6e5dbfa959e7643050d997c4e9ee7..e05171b9becec1398037df1b1ea87f76282e7213 100644 |
--- a/content/renderer/render_widget.cc |
+++ b/content/renderer/render_widget.cc |
@@ -2045,14 +2045,16 @@ void RenderWidget::didHandleGestureEvent( |
#if defined(OS_ANDROID) || defined(USE_AURA) |
if (event_cancelled) |
return; |
+ ChangeSource curent_ime_status = |
+ input_method_is_active_ ? FROM_IME : FROM_NON_IME; |
if (event.type == WebInputEvent::GestureTap) { |
- UpdateTextInputState(SHOW_IME_IF_NEEDED, FROM_NON_IME); |
+ UpdateTextInputState(SHOW_IME_IF_NEEDED, curent_ime_status); |
} else if (event.type == WebInputEvent::GestureLongPress) { |
DCHECK(webwidget_); |
if (webwidget_->textInputInfo().value.isEmpty()) |
- UpdateTextInputState(NO_SHOW_IME, FROM_NON_IME); |
+ UpdateTextInputState(NO_SHOW_IME, curent_ime_status); |
else |
- UpdateTextInputState(SHOW_IME_IF_NEEDED, FROM_NON_IME); |
+ UpdateTextInputState(SHOW_IME_IF_NEEDED, curent_ime_status); |
} |
#endif |
} |