diff options
| author | 2012-05-23 16:06:47 -0700 | |
|---|---|---|
| committer | 2012-05-23 16:06:47 -0700 | |
| commit | a587b890bb0c2f800fe4dfd3267f26366d00d32c (patch) | |
| tree | f994e400de78e5b3d84354399a640b5982ccdba1 | |
| parent | df3633b38969e134c5370449b8247827c705ac1e (diff) | |
| parent | 748ee2e82a6f7a3adbbb522d45001e6dcb52b947 (diff) | |
Merge "ActivityChooser view not handling its removal and relayout properly." into jb-dev
| -rw-r--r-- | core/java/android/widget/ActivityChooserView.java | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/core/java/android/widget/ActivityChooserView.java b/core/java/android/widget/ActivityChooserView.java index be6b4e2f5c76..4eb169bf9a6d 100644 --- a/core/java/android/widget/ActivityChooserView.java +++ b/core/java/android/widget/ActivityChooserView.java @@ -400,6 +400,9 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod if (viewTreeObserver.isAlive()) { viewTreeObserver.removeOnGlobalLayoutListener(mOnGlobalLayoutListener); } + if (isShowingPopup()) { + dismissPopup(); + } mIsAttachedToWindow = false; } @@ -420,9 +423,7 @@ public class ActivityChooserView extends ViewGroup implements ActivityChooserMod @Override protected void onLayout(boolean changed, int left, int top, int right, int bottom) { mActivityChooserContent.layout(0, 0, right - left, bottom - top); - if (getListPopupWindow().isShowing()) { - showPopupUnchecked(mAdapter.getMaxActivityCount()); - } else { + if (!isShowingPopup()) { dismissPopup(); } } |