Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(192)

Side by Side Diff: chrome/browser/ui/browser.cc

Issue 7564011: Prevent accelerators from toggling the bookmark bar when disabled by policy. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Reviewed, rebased Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/browser/ui/browser.h ('k') | chrome/browser/ui/cocoa/browser_window_cocoa.mm » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/browser.h" 5 #include "chrome/browser/ui/browser.h"
6 6
7 #if defined(OS_WIN) 7 #if defined(OS_WIN)
8 #include <windows.h> 8 #include <windows.h>
9 #include <shellapi.h> 9 #include <shellapi.h>
10 #endif // OS_WIN 10 #endif // OS_WIN
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
285 PrefService* local_state = g_browser_process->local_state(); 285 PrefService* local_state = g_browser_process->local_state();
286 if (local_state) { 286 if (local_state) {
287 local_pref_registrar_.Init(local_state); 287 local_pref_registrar_.Init(local_state);
288 local_pref_registrar_.Add(prefs::kPrintingEnabled, this); 288 local_pref_registrar_.Add(prefs::kPrintingEnabled, this);
289 local_pref_registrar_.Add(prefs::kAllowFileSelectionDialogs, this); 289 local_pref_registrar_.Add(prefs::kAllowFileSelectionDialogs, this);
290 } 290 }
291 291
292 profile_pref_registrar_.Init(profile_->GetPrefs()); 292 profile_pref_registrar_.Init(profile_->GetPrefs());
293 profile_pref_registrar_.Add(prefs::kDevToolsDisabled, this); 293 profile_pref_registrar_.Add(prefs::kDevToolsDisabled, this);
294 profile_pref_registrar_.Add(prefs::kEditBookmarksEnabled, this); 294 profile_pref_registrar_.Add(prefs::kEditBookmarksEnabled, this);
295 profile_pref_registrar_.Add(prefs::kEnableBookmarkBar, this);
295 profile_pref_registrar_.Add(prefs::kInstantEnabled, this); 296 profile_pref_registrar_.Add(prefs::kInstantEnabled, this);
296 profile_pref_registrar_.Add(prefs::kIncognitoModeAvailability, this); 297 profile_pref_registrar_.Add(prefs::kIncognitoModeAvailability, this);
297 298
298 InitCommandState(); 299 InitCommandState();
299 BrowserList::AddBrowser(this); 300 BrowserList::AddBrowser(this);
300 301
301 // NOTE: These prefs all need to be explicitly destroyed in the destructor 302 // NOTE: These prefs all need to be explicitly destroyed in the destructor
302 // or you'll get a nasty surprise when you run the incognito tests. 303 // or you'll get a nasty surprise when you run the incognito tests.
303 encoding_auto_detect_.Init(prefs::kWebKitUsesUniversalDetector, 304 encoding_auto_detect_.Init(prefs::kWebKitUsesUniversalDetector,
304 profile_->GetPrefs(), NULL); 305 profile_->GetPrefs(), NULL);
(...skipping 3416 matching lines...) Expand 10 before | Expand all | Expand 10 after
3721 available != IncognitoModePrefs::FORCED); 3722 available != IncognitoModePrefs::FORCED);
3722 command_updater_.UpdateCommandEnabled( 3723 command_updater_.UpdateCommandEnabled(
3723 IDC_NEW_INCOGNITO_WINDOW, 3724 IDC_NEW_INCOGNITO_WINDOW,
3724 available != IncognitoModePrefs::DISABLED); 3725 available != IncognitoModePrefs::DISABLED);
3725 } else if (pref_name == prefs::kDevToolsDisabled) { 3726 } else if (pref_name == prefs::kDevToolsDisabled) {
3726 UpdateCommandsForDevTools(); 3727 UpdateCommandsForDevTools();
3727 if (profile_->GetPrefs()->GetBoolean(prefs::kDevToolsDisabled)) 3728 if (profile_->GetPrefs()->GetBoolean(prefs::kDevToolsDisabled))
3728 g_browser_process->devtools_manager()->CloseAllClientHosts(); 3729 g_browser_process->devtools_manager()->CloseAllClientHosts();
3729 } else if (pref_name == prefs::kEditBookmarksEnabled) { 3730 } else if (pref_name == prefs::kEditBookmarksEnabled) {
3730 UpdateCommandsForBookmarkEditing(); 3731 UpdateCommandsForBookmarkEditing();
3732 } else if (pref_name == prefs::kEnableBookmarkBar) {
3733 UpdateCommandsForBookmarkBar();
3731 } else if (pref_name == prefs::kAllowFileSelectionDialogs) { 3734 } else if (pref_name == prefs::kAllowFileSelectionDialogs) {
3732 UpdateSaveAsState(GetContentRestrictionsForSelectedTab()); 3735 UpdateSaveAsState(GetContentRestrictionsForSelectedTab());
3733 UpdateOpenFileState(); 3736 UpdateOpenFileState();
3734 } else { 3737 } else {
3735 NOTREACHED(); 3738 NOTREACHED();
3736 } 3739 }
3737 break; 3740 break;
3738 } 3741 }
3739 3742
3740 case chrome::NOTIFICATION_TAB_CONTENT_SETTINGS_CHANGED: { 3743 case chrome::NOTIFICATION_TAB_CONTENT_SETTINGS_CHANGED: {
(...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after
4036 command_updater_.UpdateCommandEnabled( 4039 command_updater_.UpdateCommandEnabled(
4037 IDC_FOCUS_PREVIOUS_PANE, main_not_fullscreen); 4040 IDC_FOCUS_PREVIOUS_PANE, main_not_fullscreen);
4038 command_updater_.UpdateCommandEnabled( 4041 command_updater_.UpdateCommandEnabled(
4039 IDC_FOCUS_BOOKMARKS, main_not_fullscreen); 4042 IDC_FOCUS_BOOKMARKS, main_not_fullscreen);
4040 command_updater_.UpdateCommandEnabled( 4043 command_updater_.UpdateCommandEnabled(
4041 IDC_FOCUS_CHROMEOS_STATUS, main_not_fullscreen); 4044 IDC_FOCUS_CHROMEOS_STATUS, main_not_fullscreen);
4042 4045
4043 // Show various bits of UI 4046 // Show various bits of UI
4044 command_updater_.UpdateCommandEnabled(IDC_DEVELOPER_MENU, show_main_ui); 4047 command_updater_.UpdateCommandEnabled(IDC_DEVELOPER_MENU, show_main_ui);
4045 command_updater_.UpdateCommandEnabled(IDC_FEEDBACK, show_main_ui); 4048 command_updater_.UpdateCommandEnabled(IDC_FEEDBACK, show_main_ui);
4046 command_updater_.UpdateCommandEnabled(IDC_SHOW_BOOKMARK_BAR,
4047 browser_defaults::bookmarks_enabled && show_main_ui);
4048 command_updater_.UpdateCommandEnabled(IDC_IMPORT_SETTINGS, show_main_ui); 4049 command_updater_.UpdateCommandEnabled(IDC_IMPORT_SETTINGS, show_main_ui);
4049 command_updater_.UpdateCommandEnabled(IDC_SYNC_BOOKMARKS, 4050 command_updater_.UpdateCommandEnabled(IDC_SYNC_BOOKMARKS,
4050 show_main_ui && profile_->GetOriginalProfile()->IsSyncAccessible()); 4051 show_main_ui && profile_->GetOriginalProfile()->IsSyncAccessible());
4051 4052
4052 command_updater_.UpdateCommandEnabled(IDC_OPTIONS, show_main_ui); 4053 command_updater_.UpdateCommandEnabled(IDC_OPTIONS, show_main_ui);
4053 command_updater_.UpdateCommandEnabled(IDC_EDIT_SEARCH_ENGINES, show_main_ui); 4054 command_updater_.UpdateCommandEnabled(IDC_EDIT_SEARCH_ENGINES, show_main_ui);
4054 command_updater_.UpdateCommandEnabled(IDC_VIEW_PASSWORDS, show_main_ui); 4055 command_updater_.UpdateCommandEnabled(IDC_VIEW_PASSWORDS, show_main_ui);
4055 command_updater_.UpdateCommandEnabled(IDC_ABOUT, show_main_ui); 4056 command_updater_.UpdateCommandEnabled(IDC_ABOUT, show_main_ui);
4056 command_updater_.UpdateCommandEnabled(IDC_SHOW_APP_MENU, show_main_ui); 4057 command_updater_.UpdateCommandEnabled(IDC_SHOW_APP_MENU, show_main_ui);
4057 command_updater_.UpdateCommandEnabled(IDC_TOGGLE_VERTICAL_TABS, show_main_ui); 4058 command_updater_.UpdateCommandEnabled(IDC_TOGGLE_VERTICAL_TABS, show_main_ui);
4058 command_updater_.UpdateCommandEnabled(IDC_COMPACT_NAVBAR, show_main_ui); 4059 command_updater_.UpdateCommandEnabled(IDC_COMPACT_NAVBAR, show_main_ui);
4059 #if defined (ENABLE_PROFILING) && !defined(NO_TCMALLOC) 4060 #if defined (ENABLE_PROFILING) && !defined(NO_TCMALLOC)
4060 command_updater_.UpdateCommandEnabled(IDC_PROFILING_ENABLED, show_main_ui); 4061 command_updater_.UpdateCommandEnabled(IDC_PROFILING_ENABLED, show_main_ui);
4061 #endif 4062 #endif
4063
4064 UpdateCommandsForBookmarkBar();
4062 } 4065 }
4063 4066
4064 void Browser::UpdateCommandsForTabState() { 4067 void Browser::UpdateCommandsForTabState() {
4065 TabContents* current_tab = GetSelectedTabContents(); 4068 TabContents* current_tab = GetSelectedTabContents();
4066 TabContentsWrapper* current_tab_wrapper = GetSelectedTabContentsWrapper(); 4069 TabContentsWrapper* current_tab_wrapper = GetSelectedTabContentsWrapper();
4067 if (!current_tab || !current_tab_wrapper) // May be NULL during tab restore. 4070 if (!current_tab || !current_tab_wrapper) // May be NULL during tab restore.
4068 return; 4071 return;
4069 4072
4070 // Navigation commands 4073 // Navigation commands
4071 NavigationController& nc = current_tab->controller(); 4074 NavigationController& nc = current_tab->controller();
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
4152 bool enabled = 4155 bool enabled =
4153 profile_->GetPrefs()->GetBoolean(prefs::kEditBookmarksEnabled) && 4156 profile_->GetPrefs()->GetBoolean(prefs::kEditBookmarksEnabled) &&
4154 browser_defaults::bookmarks_enabled; 4157 browser_defaults::bookmarks_enabled;
4155 4158
4156 command_updater_.UpdateCommandEnabled(IDC_BOOKMARK_PAGE, 4159 command_updater_.UpdateCommandEnabled(IDC_BOOKMARK_PAGE,
4157 enabled && is_type_tabbed()); 4160 enabled && is_type_tabbed());
4158 command_updater_.UpdateCommandEnabled(IDC_BOOKMARK_ALL_TABS, 4161 command_updater_.UpdateCommandEnabled(IDC_BOOKMARK_ALL_TABS,
4159 enabled && CanBookmarkAllTabs()); 4162 enabled && CanBookmarkAllTabs());
4160 } 4163 }
4161 4164
4165 void Browser::UpdateCommandsForBookmarkBar() {
4166 #if !defined(OS_MACOSX)
4167 const bool show_main_ui = is_type_tabbed() &&
4168 (!window_ || !window_->IsFullscreen());
4169 #else
4170 const bool show_main_ui = is_type_tabbed();
4171 #endif
4172 command_updater_.UpdateCommandEnabled(IDC_SHOW_BOOKMARK_BAR,
4173 browser_defaults::bookmarks_enabled &&
4174 !profile_->GetPrefs()->IsManagedPreference(prefs::kEnableBookmarkBar) &&
4175 show_main_ui);
4176 }
4177
4162 void Browser::UpdateSaveAsState(int content_restrictions) { 4178 void Browser::UpdateSaveAsState(int content_restrictions) {
4163 bool enabled = !(content_restrictions & CONTENT_RESTRICTION_SAVE); 4179 bool enabled = !(content_restrictions & CONTENT_RESTRICTION_SAVE);
4164 PrefService* state = g_browser_process->local_state(); 4180 PrefService* state = g_browser_process->local_state();
4165 if (state) 4181 if (state)
4166 enabled = enabled && state->GetBoolean(prefs::kAllowFileSelectionDialogs); 4182 enabled = enabled && state->GetBoolean(prefs::kAllowFileSelectionDialogs);
4167 4183
4168 command_updater_.UpdateCommandEnabled(IDC_SAVE_PAGE, enabled); 4184 command_updater_.UpdateCommandEnabled(IDC_SAVE_PAGE, enabled);
4169 } 4185 }
4170 4186
4171 void Browser::UpdateOpenFileState() { 4187 void Browser::UpdateOpenFileState() {
(...skipping 664 matching lines...) Expand 10 before | Expand all | Expand 10 after
4836 } 4852 }
4837 4853
4838 void Browser::ShowSyncSetup() { 4854 void Browser::ShowSyncSetup() {
4839 ProfileSyncService* service = 4855 ProfileSyncService* service =
4840 profile()->GetOriginalProfile()->GetProfileSyncService(); 4856 profile()->GetOriginalProfile()->GetProfileSyncService();
4841 if (service->HasSyncSetupCompleted()) 4857 if (service->HasSyncSetupCompleted())
4842 ShowOptionsTab(chrome::kSyncSetupSubPage); 4858 ShowOptionsTab(chrome::kSyncSetupSubPage);
4843 else 4859 else
4844 service->ShowLoginDialog(); 4860 service->ShowLoginDialog();
4845 } 4861 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/browser.h ('k') | chrome/browser/ui/cocoa/browser_window_cocoa.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698