Don't dismiss AutoCompleteTextView on focus change while temp detached

This is consistent with how TextView handles focus changes while
temporarily detached and prevents the suggestion popup from being
dismissed during layout when the AutoCompleteTextView is used
within a ListView.

BUG: 18364277
Change-Id: I8ca6fb9dba63b49a84a60a606bc441446c083cee
This commit is contained in:
Alan Viverette
2014-11-13 12:59:37 -08:00
parent 136f54153e
commit df68999dc7
2 changed files with 9 additions and 1 deletions

View File

@@ -1005,6 +1005,12 @@ public class AutoCompleteTextView extends EditText implements Filter.FilterListe
@Override
protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) {
super.onFocusChanged(focused, direction, previouslyFocusedRect);
if (mTemporaryDetach) {
// If we are temporarily in the detach state, then do nothing.
return;
}
// Perform validation if the view is losing focus.
if (!focused) {
performValidation();

View File

@@ -287,9 +287,11 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
private int mCurTextColor;
private int mCurHintTextColor;
private boolean mFreezesText;
private boolean mTemporaryDetach;
private boolean mDispatchTemporaryDetach;
/** Whether this view is temporarily detached from the parent view. */
boolean mTemporaryDetach;
private Editable.Factory mEditableFactory = Editable.Factory.getInstance();
private Spannable.Factory mSpannableFactory = Spannable.Factory.getInstance();