diff options
author | John Reck <jreck@google.com> | 2011-09-14 17:04:16 -0700 |
---|---|---|
committer | John Reck <jreck@google.com> | 2011-09-14 17:04:16 -0700 |
commit | e1a03a366ff90ebcd8568a86b84a5917610cf512 (patch) | |
tree | f20cabec08ff5773694635544a58498b62340c27 /src/com/android/browser/NavigationBarPhone.java | |
parent | ef4a243155bec06dfa88039e3b76f5709f014993 (diff) | |
download | packages_apps_browser-e1a03a366ff90ebcd8568a86b84a5917610cf512.zip packages_apps_browser-e1a03a366ff90ebcd8568a86b84a5917610cf512.tar.gz packages_apps_browser-e1a03a366ff90ebcd8568a86b84a5917610cf512.tar.bz2 |
Cleanup menus
Bug: 5290513
Change-Id: I2ca1de40fe362b74d941056504fc4e3249de03a3
Diffstat (limited to 'src/com/android/browser/NavigationBarPhone.java')
-rw-r--r-- | src/com/android/browser/NavigationBarPhone.java | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/src/com/android/browser/NavigationBarPhone.java b/src/com/android/browser/NavigationBarPhone.java index 7e8695b..a1e778d 100644 --- a/src/com/android/browser/NavigationBarPhone.java +++ b/src/com/android/browser/NavigationBarPhone.java @@ -15,6 +15,7 @@ */ package com.android.browser; +import android.app.Activity; import android.content.Context; import android.content.res.Resources; import android.graphics.drawable.Drawable; @@ -174,14 +175,21 @@ public class NavigationBarPhone extends NavigationBarBase implements } void showMenu(View anchor) { - mOverflowMenuShowing = true; - mPopupMenu = new PopupMenu(mContext, anchor); + Activity activity = mUiController.getActivity(); + if (mPopupMenu == null) { + mPopupMenu = new PopupMenu(mContext, anchor); + mPopupMenu.setOnMenuItemClickListener(this); + mPopupMenu.setOnDismissListener(this); + if (!activity.onCreateOptionsMenu(mPopupMenu.getMenu())) { + mPopupMenu = null; + return; + } + } Menu menu = mPopupMenu.getMenu(); - mPopupMenu.getMenuInflater().inflate(R.menu.browser, menu); - mUiController.updateMenuState(mBaseUi.getActiveTab(), menu); - mPopupMenu.setOnMenuItemClickListener(this); - mPopupMenu.setOnDismissListener(this); - mPopupMenu.show(); + if (activity.onPrepareOptionsMenu(menu)) { + mOverflowMenuShowing = true; + mPopupMenu.show(); + } } @Override @@ -193,7 +201,6 @@ public class NavigationBarPhone extends NavigationBarBase implements private void onMenuHidden() { mOverflowMenuShowing = false; - mPopupMenu = null; mBaseUi.showTitleBarForDuration(); } |