Fixed the inconsistent behavior when long pressing on editable area in Chrome.

When we long press on an input field with empty text, we should show paste
popup, we shouldn't show the IME.
This change takes care of preventing IME appearance when we do long press on
empty edit field to make it uniform among all Android apps.

BUG=230192

Review URL: https://codereview.chromium.org/484653003

Cr-Commit-Position: refs/heads/master@{#291021}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@291021 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index 31e10e3e..ef30ede 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -1965,9 +1965,14 @@
 #if defined(OS_ANDROID) || defined(USE_AURA)
   if (event_cancelled)
     return;
-  if (event.type == WebInputEvent::GestureTap ||
-      event.type == WebInputEvent::GestureLongPress) {
+  if (event.type == WebInputEvent::GestureTap) {
     UpdateTextInputState(SHOW_IME_IF_NEEDED, FROM_NON_IME);
+  } else if (event.type == WebInputEvent::GestureLongPress) {
+    DCHECK(webwidget_);
+    if (webwidget_->textInputInfo().value.isEmpty())
+      UpdateTextInputState(NO_SHOW_IME, FROM_NON_IME);
+    else
+      UpdateTextInputState(SHOW_IME_IF_NEEDED, FROM_NON_IME);
   }
 #endif
 }