fix action bar and menu
Bug: 5077207
Bug: 5097486
cleaned up action bar items
dynamically change menu items based on context
bookmarks option added to nav bar menu
new tab added to navbar menu
find/addbookmark only on real pages
removed new incognito tab from tab switcher action bar
Change-Id: I973f20a13bb7d9900041f717aff012e7a2c735b8
diff --git a/src/com/android/browser/PhoneUi.java b/src/com/android/browser/PhoneUi.java
index 853d935..901f5bd 100644
--- a/src/com/android/browser/PhoneUi.java
+++ b/src/com/android/browser/PhoneUi.java
@@ -164,11 +164,32 @@
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
- menu.setGroupVisible(R.id.NAV_MENU, (mNavScreen == null));
+ updateMenuState(mActiveTab, menu);
return true;
}
@Override
+ public void updateMenuState(Tab tab, Menu menu) {
+ menu.setGroupVisible(R.id.NAV_MENU, (mNavScreen == null));
+ MenuItem bm = menu.findItem(R.id.bookmarks_menu_id);
+ if (bm != null) {
+ bm.setVisible(mNavScreen == null);
+ }
+ MenuItem nt = menu.findItem(R.id.new_tab_menu_id);
+ if (nt != null) {
+ nt.setVisible(mNavScreen == null);
+ }
+ MenuItem find = menu.findItem(R.id.find_menu_id);
+ if (find != null) {
+ find.setVisible(((tab != null) && !tab.isSnapshot()));
+ }
+ MenuItem abm = menu.findItem(R.id.add_bookmark_menu_id);
+ if (abm != null) {
+ abm.setVisible((tab != null) && !tab.isSnapshot());
+ }
+ }
+
+ @Override
public boolean onOptionsItemSelected(MenuItem item) {
if (mNavScreen != null) {
hideNavScreen(false);