diff options
author | Adam Powell <adamp@google.com> | 2011-01-23 15:18:46 -0800 |
---|---|---|
committer | Adam Powell <adamp@google.com> | 2011-01-23 15:18:46 -0800 |
commit | e571e60a3d49443b6caf4cd29ccd01ffd9ef3ad3 (patch) | |
tree | 6764fef9e484a8eabfa5c90188cd96c360cdcad2 | |
parent | b35672e4ef5dfe9719c2ba4b088eceabab0fade8 (diff) | |
download | frameworks_base-e571e60a3d49443b6caf4cd29ccd01ffd9ef3ad3.zip frameworks_base-e571e60a3d49443b6caf4cd29ccd01ffd9ef3ad3.tar.gz frameworks_base-e571e60a3d49443b6caf4cd29ccd01ffd9ef3ad3.tar.bz2 |
Fix bug 3299208 - Some apps' dialogs aren't show()ing successfully
Fix legacy submenus in options menus.
Change-Id: I3d115c72d99dadd5b23f9459fd27277a39de332b
-rw-r--r-- | policy/src/com/android/internal/policy/impl/PhoneWindow.java | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/policy/src/com/android/internal/policy/impl/PhoneWindow.java b/policy/src/com/android/internal/policy/impl/PhoneWindow.java index c313713..6a1d199 100644 --- a/policy/src/com/android/internal/policy/impl/PhoneWindow.java +++ b/policy/src/com/android/internal/policy/impl/PhoneWindow.java @@ -885,15 +885,7 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { final Menu parentMenu = subMenu.getRootMenu(); final PanelFeatureState panel = findMenuPanel(parentMenu); - /* - * Use the panel open state to determine whether this is coming from an open panel - * or an action button. If it's an open panel we want to use MenuDialogHelper. - * If it's closed we want to grab the relevant view and create a popup anchored to it. - */ - if (panel.isOpen) { - // The window manager will give us a valid window token - new MenuDialogHelper(subMenu).show(null); - } else if (hasFeature(FEATURE_ACTION_BAR)) { + if (hasFeature(FEATURE_ACTION_BAR) && panel.featureId == FEATURE_OPTIONS_PANEL) { mDecor.post(new Runnable() { public void run() { mActionButtonPopup = new ActionButtonSubmenu(getContext(), subMenu); @@ -904,6 +896,9 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { } } }); + } else { + // The window manager will give us a valid window token + new MenuDialogHelper(subMenu).show(null); } return true; |