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

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

Issue 9500003: Add a button to exit managed mode. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review Created 8 years, 8 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 407 matching lines...) Expand 10 before | Expand all | Expand 10 after
418 #endif 418 #endif
419 registrar_.Add(this, chrome::NOTIFICATION_WEB_CONTENT_SETTINGS_CHANGED, 419 registrar_.Add(this, chrome::NOTIFICATION_WEB_CONTENT_SETTINGS_CHANGED,
420 content::NotificationService::AllSources()); 420 content::NotificationService::AllSources());
421 421
422 PrefService* local_state = g_browser_process->local_state(); 422 PrefService* local_state = g_browser_process->local_state();
423 if (local_state) { 423 if (local_state) {
424 local_pref_registrar_.Init(local_state); 424 local_pref_registrar_.Init(local_state);
425 local_pref_registrar_.Add(prefs::kPrintingEnabled, this); 425 local_pref_registrar_.Add(prefs::kPrintingEnabled, this);
426 local_pref_registrar_.Add(prefs::kAllowFileSelectionDialogs, this); 426 local_pref_registrar_.Add(prefs::kAllowFileSelectionDialogs, this);
427 local_pref_registrar_.Add(prefs::kMetricsReportingEnabled, this); 427 local_pref_registrar_.Add(prefs::kMetricsReportingEnabled, this);
428 local_pref_registrar_.Add(prefs::kInManagedMode, this);
428 } 429 }
429 430
430 profile_pref_registrar_.Init(profile_->GetPrefs()); 431 profile_pref_registrar_.Init(profile_->GetPrefs());
431 profile_pref_registrar_.Add(prefs::kDevToolsDisabled, this); 432 profile_pref_registrar_.Add(prefs::kDevToolsDisabled, this);
432 profile_pref_registrar_.Add(prefs::kEditBookmarksEnabled, this); 433 profile_pref_registrar_.Add(prefs::kEditBookmarksEnabled, this);
433 profile_pref_registrar_.Add(prefs::kShowBookmarkBar, this); 434 profile_pref_registrar_.Add(prefs::kShowBookmarkBar, this);
434 profile_pref_registrar_.Add(prefs::kHomePage, this); 435 profile_pref_registrar_.Add(prefs::kHomePage, this);
435 profile_pref_registrar_.Add(prefs::kInstantEnabled, this); 436 profile_pref_registrar_.Add(prefs::kInstantEnabled, this);
436 profile_pref_registrar_.Add(prefs::kIncognitoModeAvailability, this); 437 profile_pref_registrar_.Add(prefs::kIncognitoModeAvailability, this);
437 profile_pref_registrar_.Add(prefs::kSearchSuggestEnabled, this); 438 profile_pref_registrar_.Add(prefs::kSearchSuggestEnabled, this);
(...skipping 3826 matching lines...) Expand 10 before | Expand all | Expand 10 after
4264 UpdateCommandsForBookmarkEditing(); 4265 UpdateCommandsForBookmarkEditing();
4265 } else if (pref_name == prefs::kShowBookmarkBar) { 4266 } else if (pref_name == prefs::kShowBookmarkBar) {
4266 UpdateCommandsForBookmarkBar(); 4267 UpdateCommandsForBookmarkBar();
4267 UpdateBookmarkBarState(BOOKMARK_BAR_STATE_CHANGE_PREF_CHANGE); 4268 UpdateBookmarkBarState(BOOKMARK_BAR_STATE_CHANGE_PREF_CHANGE);
4268 } else if (pref_name == prefs::kHomePage) { 4269 } else if (pref_name == prefs::kHomePage) {
4269 PrefService* pref_service = content::Source<PrefService>(source).ptr(); 4270 PrefService* pref_service = content::Source<PrefService>(source).ptr();
4270 MarkHomePageAsChanged(pref_service); 4271 MarkHomePageAsChanged(pref_service);
4271 } else if (pref_name == prefs::kAllowFileSelectionDialogs) { 4272 } else if (pref_name == prefs::kAllowFileSelectionDialogs) {
4272 UpdateSaveAsState(GetContentRestrictionsForSelectedTab()); 4273 UpdateSaveAsState(GetContentRestrictionsForSelectedTab());
4273 UpdateOpenFileState(); 4274 UpdateOpenFileState();
4275 } else if (pref_name == prefs::kInManagedMode) {
4276 UpdateCommandsForMultipleProfiles();
4274 } else { 4277 } else {
4275 NOTREACHED(); 4278 NOTREACHED();
4276 } 4279 }
4277 break; 4280 break;
4278 } 4281 }
4279 4282
4280 case chrome::NOTIFICATION_WEB_CONTENT_SETTINGS_CHANGED: { 4283 case chrome::NOTIFICATION_WEB_CONTENT_SETTINGS_CHANGED: {
4281 WebContents* web_contents = content::Source<WebContents>(source).ptr(); 4284 WebContents* web_contents = content::Source<WebContents>(source).ptr();
4282 if (web_contents == GetSelectedWebContents()) { 4285 if (web_contents == GetSelectedWebContents()) {
4283 LocationBar* location_bar = window()->GetLocationBar(); 4286 LocationBar* location_bar = window()->GetLocationBar();
(...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after
4686 const bool options_enabled = show_main_ui && 4689 const bool options_enabled = show_main_ui &&
4687 IncognitoModePrefs::GetAvailability( 4690 IncognitoModePrefs::GetAvailability(
4688 profile_->GetPrefs()) != IncognitoModePrefs::FORCED; 4691 profile_->GetPrefs()) != IncognitoModePrefs::FORCED;
4689 command_updater_.UpdateCommandEnabled(IDC_OPTIONS, options_enabled); 4692 command_updater_.UpdateCommandEnabled(IDC_OPTIONS, options_enabled);
4690 command_updater_.UpdateCommandEnabled(IDC_IMPORT_SETTINGS, options_enabled); 4693 command_updater_.UpdateCommandEnabled(IDC_IMPORT_SETTINGS, options_enabled);
4691 4694
4692 command_updater_.UpdateCommandEnabled(IDC_EDIT_SEARCH_ENGINES, show_main_ui); 4695 command_updater_.UpdateCommandEnabled(IDC_EDIT_SEARCH_ENGINES, show_main_ui);
4693 command_updater_.UpdateCommandEnabled(IDC_VIEW_PASSWORDS, show_main_ui); 4696 command_updater_.UpdateCommandEnabled(IDC_VIEW_PASSWORDS, show_main_ui);
4694 command_updater_.UpdateCommandEnabled(IDC_ABOUT, show_main_ui); 4697 command_updater_.UpdateCommandEnabled(IDC_ABOUT, show_main_ui);
4695 command_updater_.UpdateCommandEnabled(IDC_SHOW_APP_MENU, show_main_ui); 4698 command_updater_.UpdateCommandEnabled(IDC_SHOW_APP_MENU, show_main_ui);
4696 command_updater_.UpdateCommandEnabled(IDC_SHOW_AVATAR_MENU,
4697 show_main_ui && !profile()->IsOffTheRecord());
4698 #if defined (ENABLE_PROFILING) && !defined(NO_TCMALLOC) 4699 #if defined (ENABLE_PROFILING) && !defined(NO_TCMALLOC)
4699 command_updater_.UpdateCommandEnabled(IDC_PROFILING_ENABLED, show_main_ui); 4700 command_updater_.UpdateCommandEnabled(IDC_PROFILING_ENABLED, show_main_ui);
4700 #endif 4701 #endif
4701 4702
4702 UpdateCommandsForBookmarkBar(); 4703 UpdateCommandsForBookmarkBar();
4704 UpdateCommandsForMultipleProfiles();
4705 }
4706
4707 void Browser::UpdateCommandsForMultipleProfiles() {
4708 bool show_main_ui = IsShowingMainUI(window_ && window_->IsFullscreen());
4709 command_updater_.UpdateCommandEnabled(IDC_SHOW_AVATAR_MENU,
4710 show_main_ui &&
4711 !profile()->IsOffTheRecord() &&
4712 ProfileManager::IsMultipleProfilesEnabled());
4703 } 4713 }
4704 4714
4705 void Browser::UpdatePrintingState(int content_restrictions) { 4715 void Browser::UpdatePrintingState(int content_restrictions) {
4706 bool print_enabled = true; 4716 bool print_enabled = true;
4707 bool advanced_print_enabled = true; 4717 bool advanced_print_enabled = true;
4708 if (g_browser_process->local_state()) { 4718 if (g_browser_process->local_state()) {
4709 print_enabled = 4719 print_enabled =
4710 g_browser_process->local_state()->GetBoolean(prefs::kPrintingEnabled); 4720 g_browser_process->local_state()->GetBoolean(prefs::kPrintingEnabled);
4711 advanced_print_enabled = print_enabled; 4721 advanced_print_enabled = print_enabled;
4712 } 4722 }
(...skipping 787 matching lines...) Expand 10 before | Expand all | Expand 10 after
5500 if (contents && !allow_js_access) { 5510 if (contents && !allow_js_access) {
5501 contents->web_contents()->GetController().LoadURL( 5511 contents->web_contents()->GetController().LoadURL(
5502 target_url, 5512 target_url,
5503 content::Referrer(), 5513 content::Referrer(),
5504 content::PAGE_TRANSITION_LINK, 5514 content::PAGE_TRANSITION_LINK,
5505 std::string()); // No extra headers. 5515 std::string()); // No extra headers.
5506 } 5516 }
5507 5517
5508 return contents != NULL; 5518 return contents != NULL;
5509 } 5519 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698