diff options
| -rw-r--r-- | src/com/android/ex/chips/RecipientEditTextView.java | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/com/android/ex/chips/RecipientEditTextView.java b/src/com/android/ex/chips/RecipientEditTextView.java index b37aa37..ef0077e 100644 --- a/src/com/android/ex/chips/RecipientEditTextView.java +++ b/src/com/android/ex/chips/RecipientEditTextView.java @@ -86,6 +86,7 @@ import android.widget.ListAdapter; import android.widget.ListPopupWindow; import android.widget.ListView; import android.widget.MultiAutoCompleteTextView; +import android.widget.PopupWindow; import android.widget.ScrollView; import android.widget.TextView; @@ -266,9 +267,9 @@ public class RecipientEditTextView extends MultiAutoCompleteTextView implements sSelectedTextColor = context.getResources().getColor(android.R.color.white); } mAlternatesPopup = new ListPopupWindow(context); - mAlternatesPopup.setBackgroundDrawable(null); + setupPopupWindow(mAlternatesPopup); mAddressPopup = new ListPopupWindow(context); - mAddressPopup.setBackgroundDrawable(null); + setupPopupWindow(mAddressPopup); mCopyDialog = new Dialog(context); mAlternatesListener = new OnItemClickListener() { @Override @@ -304,6 +305,16 @@ public class RecipientEditTextView extends MultiAutoCompleteTextView implements setDropdownChipLayouter(new DropdownChipLayouter(LayoutInflater.from(context), context)); } + private void setupPopupWindow(ListPopupWindow popup) { + popup.setModal(true); + popup.setOnDismissListener(new PopupWindow.OnDismissListener() { + @Override + public void onDismiss() { + clearSelectedChip(); + } + }); + } + @Override protected void onLayout(boolean changed, int left, int top, int right, int bottom) { super.onLayout(changed, left, top, right, bottom); |
