diff options
| -rw-r--r-- | api/current.txt | 5 | ||||
| -rw-r--r-- | core/java/android/widget/AutoCompleteTextView.java | 31 |
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. */ |