Index: chrome/browser/ui/browser.cc |
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc |
index dd015aa3adc0c859ad8682538fa3f980aedf64ac..9ddb17cd3a0a1190d6594281d59dfbb756247ffb 100644 |
--- a/chrome/browser/ui/browser.cc |
+++ b/chrome/browser/ui/browser.cc |
@@ -291,6 +291,7 @@ Browser::Browser(Type type, Profile* profile) |
profile_pref_registrar_.Init(profile_->GetPrefs()); |
profile_pref_registrar_.Add(prefs::kDevToolsDisabled, this); |
profile_pref_registrar_.Add(prefs::kEditBookmarksEnabled, this); |
+ profile_pref_registrar_.Add(prefs::kEnableBookmarkBar, this); |
profile_pref_registrar_.Add(prefs::kInstantEnabled, this); |
profile_pref_registrar_.Add(prefs::kIncognitoEnabled, this); |
@@ -3715,6 +3716,8 @@ void Browser::Observe(int type, |
g_browser_process->devtools_manager()->CloseAllClientHosts(); |
} else if (pref_name == prefs::kEditBookmarksEnabled) { |
UpdateCommandsForBookmarkEditing(); |
+ } else if (pref_name == prefs::kEnableBookmarkBar) { |
+ UpdateCommandsForBookmarkBar(); |
} else if (pref_name == prefs::kAllowFileSelectionDialogs) { |
UpdateSaveAsState(GetContentRestrictionsForSelectedTab()); |
UpdateOpenFileState(); |
@@ -4021,8 +4024,6 @@ void Browser::UpdateCommandsForFullscreenMode(bool is_fullscreen) { |
// Show various bits of UI |
command_updater_.UpdateCommandEnabled(IDC_DEVELOPER_MENU, show_main_ui); |
command_updater_.UpdateCommandEnabled(IDC_FEEDBACK, show_main_ui); |
- command_updater_.UpdateCommandEnabled(IDC_SHOW_BOOKMARK_BAR, |
- browser_defaults::bookmarks_enabled && show_main_ui); |
command_updater_.UpdateCommandEnabled(IDC_IMPORT_SETTINGS, show_main_ui); |
command_updater_.UpdateCommandEnabled(IDC_SYNC_BOOKMARKS, |
show_main_ui && profile_->IsSyncAccessible()); |
@@ -4037,6 +4038,8 @@ void Browser::UpdateCommandsForFullscreenMode(bool is_fullscreen) { |
#if defined (ENABLE_PROFILING) && !defined(NO_TCMALLOC) |
command_updater_.UpdateCommandEnabled(IDC_PROFILING_ENABLED, show_main_ui); |
#endif |
+ |
+ UpdateCommandsForBookmarkBar(); |
} |
void Browser::UpdateCommandsForTabState() { |
@@ -4137,6 +4140,19 @@ void Browser::UpdateCommandsForBookmarkEditing() { |
enabled && CanBookmarkAllTabs()); |
} |
+void Browser::UpdateCommandsForBookmarkBar() { |
+#if !defined(OS_MACOSX) |
+ const bool show_main_ui = is_type_tabbed() && |
+ (!window_ || !window_->IsFullscreen()); |
+#else |
+ const bool show_main_ui = is_type_tabbed(); |
+#endif |
+ command_updater_.UpdateCommandEnabled(IDC_SHOW_BOOKMARK_BAR, |
+ browser_defaults::bookmarks_enabled && |
+ !profile_->GetPrefs()->IsManagedPreference(prefs::kEnableBookmarkBar) && |
+ show_main_ui); |
+} |
+ |
void Browser::UpdateSaveAsState(int content_restrictions) { |
bool enabled = !(content_restrictions & CONTENT_RESTRICTION_SAVE); |
PrefService* state = g_browser_process->local_state(); |