summaryrefslogtreecommitdiffstats
path: root/chrome/browser
diff options
context:
space:
mode:
authorpastarmovj@chromium.org <pastarmovj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-04-11 15:43:15 +0000
committerpastarmovj@chromium.org <pastarmovj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-04-11 15:43:15 +0000
commitb3be10fa08cc43c7b49cde6c2a33f317849be9be (patch)
treeac63925d0b255df2f9b1a51274834f64ca7ad878 /chrome/browser
parentafcb5ab4ed9707f422abb83b472506ad360aaeaa (diff)
downloadchromium_src-b3be10fa08cc43c7b49cde6c2a33f317849be9be.zip
chromium_src-b3be10fa08cc43c7b49cde6c2a33f317849be9be.tar.gz
chromium_src-b3be10fa08cc43c7b49cde6c2a33f317849be9be.tar.bz2
Implemented policy for disabling the bookmark bar.
BUG=49604 TEST=unit_tests ConfigurationPolicy* Review URL: http://codereview.chromium.org/6718039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81102 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser')
-rw-r--r--chrome/browser/bookmarks/bookmark_context_menu_controller.cc4
-rw-r--r--chrome/browser/policy/config_dir_policy_provider_unittest.cc5
-rw-r--r--chrome/browser/policy/configuration_policy_pref_store.cc3
-rw-r--r--chrome/browser/policy/configuration_policy_pref_store_unittest.cc4
-rw-r--r--chrome/browser/policy/configuration_policy_provider_mac_unittest.cc5
-rw-r--r--chrome/browser/policy/configuration_policy_provider_win_unittest.cc5
-rw-r--r--chrome/browser/ui/browser.cc1
-rw-r--r--chrome/browser/ui/cocoa/browser_window_cocoa.mm5
-rw-r--r--chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc3
-rw-r--r--chrome/browser/ui/gtk/browser_window_gtk.cc13
-rw-r--r--chrome/browser/ui/toolbar/wrench_menu_model.cc4
-rw-r--r--chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc3
-rw-r--r--chrome/browser/ui/views/bookmarks/bookmark_context_menu_controller_views.cc4
-rw-r--r--chrome/browser/ui/webui/new_tab_ui.cc4
-rw-r--r--chrome/browser/ui/webui/ntp_resource_cache.cc2
15 files changed, 54 insertions, 11 deletions
diff --git a/chrome/browser/bookmarks/bookmark_context_menu_controller.cc b/chrome/browser/bookmarks/bookmark_context_menu_controller.cc
index 7e09c7d..a509026 100644
--- a/chrome/browser/bookmarks/bookmark_context_menu_controller.cc
+++ b/chrome/browser/bookmarks/bookmark_context_menu_controller.cc
@@ -268,6 +268,10 @@ bool BookmarkContextMenuController::IsCommandIdEnabled(int command_id) const {
return bookmark_utils::GetParentForNewNodes(
parent_, selection_, NULL) != NULL;
+ case IDC_BOOKMARK_BAR_ALWAYS_SHOW:
+ return !profile_->GetPrefs()->IsManagedPreference(
+ prefs::kEnableBookmarkBar);
+
case IDC_COPY:
case IDC_CUT:
return !selection_.empty() && !is_root_node;
diff --git a/chrome/browser/policy/config_dir_policy_provider_unittest.cc b/chrome/browser/policy/config_dir_policy_provider_unittest.cc
index d2dfc23..595b27d 100644
--- a/chrome/browser/policy/config_dir_policy_provider_unittest.cc
+++ b/chrome/browser/policy/config_dir_policy_provider_unittest.cc
@@ -356,6 +356,9 @@ INSTANTIATE_TEST_CASE_P(
key::kTranslateEnabled),
ValueTestParams::ForBooleanPolicy(
kPolicyAllowOutdatedPlugins,
- key::kAllowOutdatedPlugins)));
+ key::kAllowOutdatedPlugins),
+ ValueTestParams::ForBooleanPolicy(
+ kPolicyBookmarkBarEnabled,
+ key::kBookmarkBarEnabled)));
} // namespace policy
diff --git a/chrome/browser/policy/configuration_policy_pref_store.cc b/chrome/browser/policy/configuration_policy_pref_store.cc
index 17f18d1..10ed825 100644
--- a/chrome/browser/policy/configuration_policy_pref_store.cc
+++ b/chrome/browser/policy/configuration_policy_pref_store.cc
@@ -269,6 +269,7 @@ const ConfigurationPolicyPrefKeeper::PolicyToPreferenceMapEntry
{ Value::TYPE_BOOLEAN, kPolicyCloudPrintProxyEnabled,
prefs::kCloudPrintProxyEnabled },
{ Value::TYPE_BOOLEAN, kPolicyTranslateEnabled, prefs::kEnableTranslate },
+ { Value::TYPE_BOOLEAN, kPolicyBookmarkBarEnabled, prefs::kEnableBookmarkBar },
{ Value::TYPE_BOOLEAN, kPolicyAllowOutdatedPlugins,
prefs::kPluginsAllowOutdated },
@@ -990,6 +991,8 @@ ConfigurationPolicyPrefStore::GetChromePolicyDefinitionList() {
{ kPolicyTranslateEnabled, Value::TYPE_BOOLEAN, key::kTranslateEnabled },
{ kPolicyAllowOutdatedPlugins, Value::TYPE_BOOLEAN,
key::kAllowOutdatedPlugins },
+ { kPolicyBookmarkBarEnabled, Value::TYPE_BOOLEAN,
+ key::kBookmarkBarEnabled },
#if defined(OS_CHROMEOS)
{ kPolicyChromeOsLockOnIdleSuspend, Value::TYPE_BOOLEAN,
diff --git a/chrome/browser/policy/configuration_policy_pref_store_unittest.cc b/chrome/browser/policy/configuration_policy_pref_store_unittest.cc
index ab54828..d6f5a57 100644
--- a/chrome/browser/policy/configuration_policy_pref_store_unittest.cc
+++ b/chrome/browser/policy/configuration_policy_pref_store_unittest.cc
@@ -207,7 +207,9 @@ INSTANTIATE_TEST_CASE_P(
TypeAndName(kPolicyTranslateEnabled,
prefs::kEnableTranslate),
TypeAndName(kPolicyAllowOutdatedPlugins,
- prefs::kPluginsAllowOutdated)));
+ prefs::kPluginsAllowOutdated),
+ TypeAndName(kPolicyBookmarkBarEnabled,
+ prefs::kEnableBookmarkBar)));
#if defined(OS_CHROMEOS)
INSTANTIATE_TEST_CASE_P(
diff --git a/chrome/browser/policy/configuration_policy_provider_mac_unittest.cc b/chrome/browser/policy/configuration_policy_provider_mac_unittest.cc
index c248f77..edfbdb2 100644
--- a/chrome/browser/policy/configuration_policy_provider_mac_unittest.cc
+++ b/chrome/browser/policy/configuration_policy_provider_mac_unittest.cc
@@ -327,6 +327,9 @@ INSTANTIATE_TEST_CASE_P(
key::kTranslateEnabled),
PolicyTestParams::ForBooleanPolicy(
kPolicyAllowOutdatedPlugins,
- key::kAllowOutdatedPlugins)));
+ key::kAllowOutdatedPlugins),
+ PolicyTestParams::ForBooleanPolicy(
+ kPolicyBookmarkBarEnabled,
+ key::kBookmarkBarEnabled)));
} // namespace policy
diff --git a/chrome/browser/policy/configuration_policy_provider_win_unittest.cc b/chrome/browser/policy/configuration_policy_provider_win_unittest.cc
index f1427c9..9323e90 100644
--- a/chrome/browser/policy/configuration_policy_provider_win_unittest.cc
+++ b/chrome/browser/policy/configuration_policy_provider_win_unittest.cc
@@ -485,6 +485,9 @@ INSTANTIATE_TEST_CASE_P(
key::kTranslateEnabled),
PolicyTestParams::ForBooleanPolicy(
kPolicyAllowOutdatedPlugins,
- key::kAllowOutdatedPlugins)));
+ key::kAllowOutdatedPlugins),
+ PolicyTestParams::ForBooleanPolicy(
+ kPolicyBookmarkBarEnabled,
+ key::kBookmarkBarEnabled)));
} // namespace policy
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc
index 445ad54..554750d 100644
--- a/chrome/browser/ui/browser.cc
+++ b/chrome/browser/ui/browser.cc
@@ -2116,6 +2116,7 @@ void Browser::RegisterUserPrefs(PrefService* prefs) {
prefs->RegisterBooleanPref(prefs::kWebAppCreateInQuickLaunchBar, true);
prefs->RegisterBooleanPref(prefs::kUseVerticalTabs, false);
prefs->RegisterBooleanPref(prefs::kEnableTranslate, true);
+ prefs->RegisterBooleanPref(prefs::kEnableBookmarkBar, true);
prefs->RegisterBooleanPref(prefs::kRemotingHasSetupCompleted, false);
prefs->RegisterStringPref(prefs::kCloudPrintEmail, std::string());
prefs->RegisterBooleanPref(prefs::kCloudPrintProxyEnabled, true);
diff --git a/chrome/browser/ui/cocoa/browser_window_cocoa.mm b/chrome/browser/ui/cocoa/browser_window_cocoa.mm
index 46bc955..de0d680 100644
--- a/chrome/browser/ui/cocoa/browser_window_cocoa.mm
+++ b/chrome/browser/ui/cocoa/browser_window_cocoa.mm
@@ -265,7 +265,10 @@ void BrowserWindowCocoa::FocusChromeOSStatus() {
}
bool BrowserWindowCocoa::IsBookmarkBarVisible() const {
- return browser_->profile()->GetPrefs()->GetBoolean(prefs::kShowBookmarkBar);
+ return (browser_->profile()->GetPrefs()->GetBoolean(
+ prefs::kShowBookmarkBar) &&
+ browser_->profile()->GetPrefs()->GetBoolean(
+ prefs::kEnableBookmarkBar));
}
bool BrowserWindowCocoa::IsBookmarkBarAnimating() const {
diff --git a/chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc b/chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc
index 00e2168..83718999 100644
--- a/chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc
+++ b/chrome/browser/ui/gtk/bookmarks/bookmark_bar_gtk.cc
@@ -795,7 +795,8 @@ void BookmarkBarGtk::StartThrobbingAfterAllocation(GtkWidget* item) {
}
bool BookmarkBarGtk::IsAlwaysShown() {
- return profile_->GetPrefs()->GetBoolean(prefs::kShowBookmarkBar);
+ return (profile_->GetPrefs()->GetBoolean(prefs::kShowBookmarkBar) &&
+ profile_->GetPrefs()->GetBoolean(prefs::kEnableBookmarkBar));
}
void BookmarkBarGtk::AnimationProgressed(const ui::Animation* animation) {
diff --git a/chrome/browser/ui/gtk/browser_window_gtk.cc b/chrome/browser/ui/gtk/browser_window_gtk.cc
index 891b4b7..faf58d0 100644
--- a/chrome/browser/ui/gtk/browser_window_gtk.cc
+++ b/chrome/browser/ui/gtk/browser_window_gtk.cc
@@ -827,9 +827,12 @@ void BrowserWindowGtk::RotatePaneFocus(bool forwards) {
}
bool BrowserWindowGtk::IsBookmarkBarVisible() const {
- return browser_->SupportsWindowFeature(Browser::FEATURE_BOOKMARKBAR) &&
- bookmark_bar_.get() &&
- browser_->profile()->GetPrefs()->GetBoolean(prefs::kShowBookmarkBar);
+ return (browser_->SupportsWindowFeature(Browser::FEATURE_BOOKMARKBAR) &&
+ bookmark_bar_.get() &&
+ browser_->profile()->GetPrefs()->GetBoolean(
+ prefs::kShowBookmarkBar) &&
+ browser_->profile()->GetPrefs()->GetBoolean(
+ prefs::kEnableBookmarkBar));
}
bool BrowserWindowGtk::IsBookmarkBarAnimating() const {
@@ -1214,7 +1217,9 @@ void BrowserWindowGtk::MaybeShowBookmarkBar(bool animate) {
if (show_bar && contents && !contents->ShouldShowBookmarkBar()) {
PrefService* prefs = contents->profile()->GetPrefs();
- show_bar = prefs->GetBoolean(prefs::kShowBookmarkBar) && !IsFullscreen();
+ show_bar = prefs->GetBoolean(prefs::kShowBookmarkBar) &&
+ prefs->GetBoolean(prefs::kEnableBookmarkBar) &&
+ !IsFullscreen();
}
if (show_bar) {
diff --git a/chrome/browser/ui/toolbar/wrench_menu_model.cc b/chrome/browser/ui/toolbar/wrench_menu_model.cc
index 177f93e..f17cabc 100644
--- a/chrome/browser/ui/toolbar/wrench_menu_model.cc
+++ b/chrome/browser/ui/toolbar/wrench_menu_model.cc
@@ -270,6 +270,10 @@ bool WrenchMenuModel::IsCommandIdChecked(int command_id) const {
}
bool WrenchMenuModel::IsCommandIdEnabled(int command_id) const {
+ if (command_id == IDC_SHOW_BOOKMARK_BAR) {
+ return !browser_->profile()->GetPrefs()->IsManagedPreference(
+ prefs::kEnableBookmarkBar);
+ }
return browser_->command_updater()->IsCommandEnabled(command_id);
}
diff --git a/chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc b/chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc
index a229593..8c22e23 100644
--- a/chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc
+++ b/chrome/browser/ui/views/bookmarks/bookmark_bar_view.cc
@@ -719,7 +719,8 @@ int BookmarkBarView::GetToolbarOverlap() const {
}
bool BookmarkBarView::IsAlwaysShown() const {
- return profile_->GetPrefs()->GetBoolean(prefs::kShowBookmarkBar);
+ return (profile_->GetPrefs()->GetBoolean(prefs::kShowBookmarkBar) &&
+ profile_->GetPrefs()->GetBoolean(prefs::kEnableBookmarkBar));
}
bool BookmarkBarView::OnNewTabPage() const {
diff --git a/chrome/browser/ui/views/bookmarks/bookmark_context_menu_controller_views.cc b/chrome/browser/ui/views/bookmarks/bookmark_context_menu_controller_views.cc
index 15e1a24..cc70df0 100644
--- a/chrome/browser/ui/views/bookmarks/bookmark_context_menu_controller_views.cc
+++ b/chrome/browser/ui/views/bookmarks/bookmark_context_menu_controller_views.cc
@@ -254,6 +254,10 @@ bool BookmarkContextMenuControllerViews::IsCommandEnabled(int id) const {
return bookmark_utils::GetParentForNewNodes(
parent_, selection_, NULL) != NULL;
+ case IDC_BOOKMARK_BAR_ALWAYS_SHOW:
+ return !profile_->GetPrefs()->IsManagedPreference(
+ prefs::kEnableBookmarkBar);
+
case IDC_COPY:
case IDC_CUT:
return !selection_.empty() && !is_root_node;
diff --git a/chrome/browser/ui/webui/new_tab_ui.cc b/chrome/browser/ui/webui/new_tab_ui.cc
index 1f0604d..69957fc 100644
--- a/chrome/browser/ui/webui/new_tab_ui.cc
+++ b/chrome/browser/ui/webui/new_tab_ui.cc
@@ -406,6 +406,10 @@ void NewTabUI::Observe(NotificationType type,
break;
}
case NotificationType::BOOKMARK_BAR_VISIBILITY_PREF_CHANGED: {
+ if (GetProfile()->GetPrefs()->IsManagedPreference(
+ prefs::kEnableBookmarkBar)) {
+ break;
+ }
if (GetProfile()->GetPrefs()->GetBoolean(prefs::kShowBookmarkBar))
CallJavascriptFunction("bookmarkBarAttached");
else
diff --git a/chrome/browser/ui/webui/ntp_resource_cache.cc b/chrome/browser/ui/webui/ntp_resource_cache.cc
index 438cb64..ab3c63f 100644
--- a/chrome/browser/ui/webui/ntp_resource_cache.cc
+++ b/chrome/browser/ui/webui/ntp_resource_cache.cc
@@ -157,6 +157,7 @@ NTPResourceCache::NTPResourceCache(Profile* profile) : profile_(profile) {
// Watch for pref changes that cause us to need to invalidate the HTML cache.
pref_change_registrar_.Init(profile_->GetPrefs());
pref_change_registrar_.Add(prefs::kShowBookmarkBar, this);
+ pref_change_registrar_.Add(prefs::kEnableBookmarkBar, this);
pref_change_registrar_.Add(prefs::kNTPShownSections, this);
}
@@ -200,6 +201,7 @@ void NTPResourceCache::Observe(NotificationType type,
} else if (NotificationType::PREF_CHANGED == type) {
std::string* pref_name = Details<std::string>(details).ptr();
if (*pref_name == prefs::kShowBookmarkBar ||
+ *pref_name == prefs::kEnableBookmarkBar ||
*pref_name == prefs::kHomePageIsNewTabPage ||
*pref_name == prefs::kNTPShownSections) {
new_tab_incognito_html_ = NULL;