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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillEditorBase.java

Issue 2437143004: Clears Android keyboard when user touches any of the dropdown menu views. (Closed)
Patch Set: Clears Android keyboard when user touches any of the dropdown menu views. Created 4 years, 2 months 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: chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillEditorBase.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillEditorBase.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillEditorBase.java
index 1945bd956028378661dac17d51e7cabc5e5cca06..309828c2bf863521724bf642addfbd50833bb3ac 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillEditorBase.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/autofill/AutofillEditorBase.java
@@ -4,6 +4,7 @@
package org.chromium.chrome.browser.preferences.autofill;
+import android.annotation.SuppressLint;
import android.app.Fragment;
import android.content.Context;
import android.os.Bundle;
@@ -13,12 +14,16 @@ import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
+import android.view.MotionEvent;
import android.view.View;
+import android.view.View.OnTouchListener;
import android.view.ViewGroup;
+import android.view.inputmethod.InputMethodManager;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.Button;
import android.widget.LinearLayout;
+import android.widget.Spinner;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.payments.ui.EditorView;
@@ -27,7 +32,7 @@ import org.chromium.chrome.browser.widget.DualControlLayout;
/** Base class for Autofill editors (e.g. credit cards and profiles). */
public abstract class AutofillEditorBase
- extends Fragment implements OnItemSelectedListener, TextWatcher {
+ extends Fragment implements OnItemSelectedListener, OnTouchListener, TextWatcher {
/** GUID of the profile we are editing. Empty if creating a new profile. */
protected String mGUID;
@@ -86,6 +91,18 @@ public abstract class AutofillEditorBase
return super.onOptionsItemSelected(item);
}
+ // Process touch event on spinner views so we can clear the keyboard.
+ @Override
+ @SuppressLint("ClickableViewAccessibility")
+ public boolean onTouch(View v, MotionEvent event) {
+ if (v instanceof Spinner) {
+ InputMethodManager imm = (InputMethodManager) v.getContext().getSystemService(
+ Context.INPUT_METHOD_SERVICE);
+ imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
+ }
+ return false;
+ }
+
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
menu.clear();

Powered by Google App Engine
This is Rietveld 408576698