summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/current.txt5
-rw-r--r--core/java/android/widget/AutoCompleteTextView.java31
2 files changed, 36 insertions, 0 deletions
diff --git a/api/current.txt b/api/current.txt
index 31d0c46e3f42..10ed68d4c7a9 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -27677,6 +27677,7 @@ package android.widget {
method public void setDropDownVerticalOffset(int);
method public void setDropDownWidth(int);
method public void setListSelection(int);
+ method public void setOnDismissListener(android.widget.AutoCompleteTextView.OnDismissListener);
method public void setOnItemClickListener(android.widget.AdapterView.OnItemClickListener);
method public void setOnItemSelectedListener(android.widget.AdapterView.OnItemSelectedListener);
method public void setText(java.lang.CharSequence, boolean);
@@ -27685,6 +27686,10 @@ package android.widget {
method public void showDropDown();
}
+ public static abstract interface AutoCompleteTextView.OnDismissListener {
+ method public abstract void onDismiss();
+ }
+
public static abstract interface AutoCompleteTextView.Validator {
method public abstract java.lang.CharSequence fixText(java.lang.CharSequence);
method public abstract boolean isValid(java.lang.CharSequence);
diff --git a/core/java/android/widget/AutoCompleteTextView.java b/core/java/android/widget/AutoCompleteTextView.java
index 41e8452bd6c1..e4d49818cc3c 100644
--- a/core/java/android/widget/AutoCompleteTextView.java
+++ b/core/java/android/widget/AutoCompleteTextView.java
@@ -16,6 +16,7 @@
package android.widget;
+import android.app.SearchManager.OnDismissListener;
import android.content.Context;
import android.content.res.TypedArray;
import android.database.DataSetObserver;
@@ -579,6 +580,23 @@ public class AutoCompleteTextView extends EditText implements Filter.FilterListe
}
/**
+ * Set a listener that will be invoked whenever the AutoCompleteTextView's
+ * list of completions is dismissed.
+ * @param dismissListener Listener to invoke when completions are dismissed
+ */
+ public void setOnDismissListener(final OnDismissListener dismissListener) {
+ PopupWindow.OnDismissListener wrappedListener = null;
+ if (dismissListener != null) {
+ wrappedListener = new PopupWindow.OnDismissListener() {
+ @Override public void onDismiss() {
+ dismissListener.onDismiss();
+ }
+ };
+ }
+ mPopup.setOnDismissListener(wrappedListener);
+ }
+
+ /**
* <p>Returns a filterable list adapter used for auto completion.</p>
*
* @return a data adapter used for auto completion
@@ -1207,6 +1225,19 @@ public class AutoCompleteTextView extends EditText implements Filter.FilterListe
}
/**
+ * Listener to respond to the AutoCompleteTextView's completion list being dismissed.
+ * @see AutoCompleteTextView#setOnDismissListener(OnDismissListener)
+ */
+ public interface OnDismissListener {
+ /**
+ * This method will be invoked whenever the AutoCompleteTextView's list
+ * of completion options has been dismissed and is no longer available
+ * for user interaction.
+ */
+ void onDismiss();
+ }
+
+ /**
* Allows us a private hook into the on click event without preventing users from setting
* their own click listener.
*/