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

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

Issue 1298973005: Reland c91b178b07b0d - Delete dead signin code (SigninGlobalError) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: . Created 5 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
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_command_controller.h" 5 #include "chrome/browser/ui/browser_command_controller.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/prefs/pref_service.h" 8 #include "base/prefs/pref_service.h"
9 #include "chrome/app/chrome_command_ids.h" 9 #include "chrome/app/chrome_command_ids.h"
10 #include "chrome/browser/browser_process.h" 10 #include "chrome/browser/browser_process.h"
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 profile_pref_registrar_.Add( 222 profile_pref_registrar_.Add(
223 prefs::kPrintingEnabled, 223 prefs::kPrintingEnabled,
224 base::Bind(&BrowserCommandController::UpdatePrintingState, 224 base::Bind(&BrowserCommandController::UpdatePrintingState,
225 base::Unretained(this))); 225 base::Unretained(this)));
226 #if !defined(OS_MACOSX) 226 #if !defined(OS_MACOSX)
227 profile_pref_registrar_.Add( 227 profile_pref_registrar_.Add(
228 prefs::kFullscreenAllowed, 228 prefs::kFullscreenAllowed,
229 base::Bind(&BrowserCommandController::UpdateCommandsForFullscreenMode, 229 base::Bind(&BrowserCommandController::UpdateCommandsForFullscreenMode,
230 base::Unretained(this))); 230 base::Unretained(this)));
231 #endif 231 #endif
232 pref_signin_allowed_.Init(
233 prefs::kSigninAllowed,
234 profile()->GetOriginalProfile()->GetPrefs(),
235 base::Bind(&BrowserCommandController::OnSigninAllowedPrefChange,
236 base::Unretained(this)));
237 232
238 InitCommandState(); 233 InitCommandState();
239 234
240 TabRestoreService* tab_restore_service = 235 TabRestoreService* tab_restore_service =
241 TabRestoreServiceFactory::GetForProfile(profile()); 236 TabRestoreServiceFactory::GetForProfile(profile());
242 if (tab_restore_service) { 237 if (tab_restore_service) {
243 tab_restore_service->AddObserver(this); 238 tab_restore_service->AddObserver(this);
244 TabRestoreServiceChanged(tab_restore_service); 239 TabRestoreServiceChanged(tab_restore_service);
245 } 240 }
246 } 241 }
(...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after
757 break; 752 break;
758 case IDC_VIEW_INCOMPATIBILITIES: 753 case IDC_VIEW_INCOMPATIBILITIES:
759 ShowConflicts(browser_); 754 ShowConflicts(browser_);
760 break; 755 break;
761 case IDC_HELP_PAGE_VIA_KEYBOARD: 756 case IDC_HELP_PAGE_VIA_KEYBOARD:
762 ShowHelp(browser_, HELP_SOURCE_KEYBOARD); 757 ShowHelp(browser_, HELP_SOURCE_KEYBOARD);
763 break; 758 break;
764 case IDC_HELP_PAGE_VIA_MENU: 759 case IDC_HELP_PAGE_VIA_MENU:
765 ShowHelp(browser_, HELP_SOURCE_MENU); 760 ShowHelp(browser_, HELP_SOURCE_MENU);
766 break; 761 break;
767 case IDC_SHOW_SIGNIN:
768 ShowBrowserSigninOrSettings(browser_, signin_metrics::SOURCE_MENU);
769 break;
770 case IDC_TOGGLE_SPEECH_INPUT: 762 case IDC_TOGGLE_SPEECH_INPUT:
771 ToggleSpeechInput(browser_); 763 ToggleSpeechInput(browser_);
772 break; 764 break;
773 case IDC_DISTILL_PAGE: 765 case IDC_DISTILL_PAGE:
774 DistillCurrentPage(browser_); 766 DistillCurrentPage(browser_);
775 break; 767 break;
776 #if defined(OS_CHROMEOS) 768 #if defined(OS_CHROMEOS)
777 case IDC_TOUCH_HUD_PROJECTION_TOGGLE: 769 case IDC_TOUCH_HUD_PROJECTION_TOGGLE:
778 ash::accelerators::ToggleTouchHudProjection(); 770 ash::accelerators::ToggleTouchHudProjection();
779 break; 771 break;
780 #endif 772 #endif
781 773
782 default: 774 default:
783 LOG(WARNING) << "Received Unimplemented Command: " << id; 775 LOG(WARNING) << "Received Unimplemented Command: " << id;
784 break; 776 break;
785 } 777 }
786 } 778 }
787 779
788 ////////////////////////////////////////////////////////////////////////////////
789 // BrowserCommandController, SigninPrefObserver implementation:
790
791 void BrowserCommandController::OnSigninAllowedPrefChange() {
792 // For unit tests, we don't have a window.
793 if (!window())
794 return;
795 UpdateShowSyncState(IsShowingMainUI());
796 }
797
798 // BrowserCommandController, TabStripModelObserver implementation: 780 // BrowserCommandController, TabStripModelObserver implementation:
799 781
800 void BrowserCommandController::TabInsertedAt(WebContents* contents, 782 void BrowserCommandController::TabInsertedAt(WebContents* contents,
801 int index, 783 int index,
802 bool foreground) { 784 bool foreground) {
803 AddInterstitialObservers(contents); 785 AddInterstitialObservers(contents);
804 } 786 }
805 787
806 void BrowserCommandController::TabDetachedAt(WebContents* contents, int index) { 788 void BrowserCommandController::TabDetachedAt(WebContents* contents, int index) {
807 RemoveInterstitialObservers(contents); 789 RemoveInterstitialObservers(contents);
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
977 command_updater_.UpdateCommandEnabled(IDC_TAKE_SCREENSHOT, true); 959 command_updater_.UpdateCommandEnabled(IDC_TAKE_SCREENSHOT, true);
978 command_updater_.UpdateCommandEnabled(IDC_TOUCH_HUD_PROJECTION_TOGGLE, true); 960 command_updater_.UpdateCommandEnabled(IDC_TOUCH_HUD_PROJECTION_TOGGLE, true);
979 #else 961 #else
980 // Chrome OS uses the system tray menu to handle multi-profiles. 962 // Chrome OS uses the system tray menu to handle multi-profiles.
981 if (normal_window && (guest_session || !profile()->IsOffTheRecord())) { 963 if (normal_window && (guest_session || !profile()->IsOffTheRecord())) {
982 command_updater_.UpdateCommandEnabled(IDC_SHOW_AVATAR_MENU, true); 964 command_updater_.UpdateCommandEnabled(IDC_SHOW_AVATAR_MENU, true);
983 command_updater_.UpdateCommandEnabled(IDC_SHOW_FAST_USER_SWITCHER, true); 965 command_updater_.UpdateCommandEnabled(IDC_SHOW_FAST_USER_SWITCHER, true);
984 } 966 }
985 #endif 967 #endif
986 968
987 UpdateShowSyncState(true);
988
989 // Navigation commands 969 // Navigation commands
990 command_updater_.UpdateCommandEnabled( 970 command_updater_.UpdateCommandEnabled(
991 IDC_HOME, 971 IDC_HOME,
992 normal_window || 972 normal_window ||
993 (extensions::util::IsNewBookmarkAppsEnabled() && browser_->is_app())); 973 (extensions::util::IsNewBookmarkAppsEnabled() && browser_->is_app()));
994 974
995 // Window management commands 975 // Window management commands
996 command_updater_.UpdateCommandEnabled(IDC_SELECT_NEXT_TAB, normal_window); 976 command_updater_.UpdateCommandEnabled(IDC_SELECT_NEXT_TAB, normal_window);
997 command_updater_.UpdateCommandEnabled(IDC_SELECT_PREVIOUS_TAB, 977 command_updater_.UpdateCommandEnabled(IDC_SELECT_PREVIOUS_TAB,
998 normal_window); 978 normal_window);
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
1063 extension_service && extension_service->extensions_enabled(); 1043 extension_service && extension_service->extensions_enabled();
1064 1044
1065 // Bookmark manager and settings page/subpages are forced to open in normal 1045 // Bookmark manager and settings page/subpages are forced to open in normal
1066 // mode. For this reason we disable these commands when incognito is forced. 1046 // mode. For this reason we disable these commands when incognito is forced.
1067 command_updater->UpdateCommandEnabled(IDC_MANAGE_EXTENSIONS, 1047 command_updater->UpdateCommandEnabled(IDC_MANAGE_EXTENSIONS,
1068 enable_extensions && !forced_incognito); 1048 enable_extensions && !forced_incognito);
1069 1049
1070 command_updater->UpdateCommandEnabled(IDC_IMPORT_SETTINGS, !forced_incognito); 1050 command_updater->UpdateCommandEnabled(IDC_IMPORT_SETTINGS, !forced_incognito);
1071 command_updater->UpdateCommandEnabled(IDC_OPTIONS, 1051 command_updater->UpdateCommandEnabled(IDC_OPTIONS,
1072 !forced_incognito || guest_session); 1052 !forced_incognito || guest_session);
1073 command_updater->UpdateCommandEnabled(IDC_SHOW_SIGNIN, !forced_incognito);
1074 } 1053 }
1075 1054
1076 void BrowserCommandController::UpdateCommandsForIncognitoAvailability() { 1055 void BrowserCommandController::UpdateCommandsForIncognitoAvailability() {
1077 UpdateSharedCommandsForIncognitoAvailability(&command_updater_, profile()); 1056 UpdateSharedCommandsForIncognitoAvailability(&command_updater_, profile());
1078 1057
1079 if (!IsShowingMainUI()) { 1058 if (!IsShowingMainUI()) {
1080 command_updater_.UpdateCommandEnabled(IDC_IMPORT_SETTINGS, false); 1059 command_updater_.UpdateCommandEnabled(IDC_IMPORT_SETTINGS, false);
1081 command_updater_.UpdateCommandEnabled(IDC_OPTIONS, false); 1060 command_updater_.UpdateCommandEnabled(IDC_OPTIONS, false);
1082 } 1061 }
1083 } 1062 }
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
1242 command_updater_.UpdateCommandEnabled( 1221 command_updater_.UpdateCommandEnabled(
1243 IDC_FOCUS_BOOKMARKS, main_not_fullscreen); 1222 IDC_FOCUS_BOOKMARKS, main_not_fullscreen);
1244 command_updater_.UpdateCommandEnabled( 1223 command_updater_.UpdateCommandEnabled(
1245 IDC_FOCUS_INFOBARS, main_not_fullscreen); 1224 IDC_FOCUS_INFOBARS, main_not_fullscreen);
1246 1225
1247 // Show various bits of UI 1226 // Show various bits of UI
1248 command_updater_.UpdateCommandEnabled(IDC_DEVELOPER_MENU, show_main_ui); 1227 command_updater_.UpdateCommandEnabled(IDC_DEVELOPER_MENU, show_main_ui);
1249 #if defined(GOOGLE_CHROME_BUILD) 1228 #if defined(GOOGLE_CHROME_BUILD)
1250 command_updater_.UpdateCommandEnabled(IDC_FEEDBACK, show_main_ui); 1229 command_updater_.UpdateCommandEnabled(IDC_FEEDBACK, show_main_ui);
1251 #endif 1230 #endif
1252 UpdateShowSyncState(show_main_ui);
1253 1231
1254 // Settings page/subpages are forced to open in normal mode. We disable these 1232 // Settings page/subpages are forced to open in normal mode. We disable these
1255 // commands for guest sessions and when incognito is forced. 1233 // commands for guest sessions and when incognito is forced.
1256 const bool options_enabled = show_main_ui && 1234 const bool options_enabled = show_main_ui &&
1257 IncognitoModePrefs::GetAvailability( 1235 IncognitoModePrefs::GetAvailability(
1258 profile()->GetPrefs()) != IncognitoModePrefs::FORCED; 1236 profile()->GetPrefs()) != IncognitoModePrefs::FORCED;
1259 const bool guest_session = profile()->IsGuestSession(); 1237 const bool guest_session = profile()->IsGuestSession();
1260 command_updater_.UpdateCommandEnabled(IDC_OPTIONS, options_enabled); 1238 command_updater_.UpdateCommandEnabled(IDC_OPTIONS, options_enabled);
1261 command_updater_.UpdateCommandEnabled(IDC_IMPORT_SETTINGS, 1239 command_updater_.UpdateCommandEnabled(IDC_IMPORT_SETTINGS,
1262 options_enabled && !guest_session); 1240 options_enabled && !guest_session);
(...skipping 29 matching lines...) Expand all
1292 #if defined(ENABLE_BASIC_PRINTING) 1270 #if defined(ENABLE_BASIC_PRINTING)
1293 command_updater_.UpdateCommandEnabled(IDC_BASIC_PRINT, 1271 command_updater_.UpdateCommandEnabled(IDC_BASIC_PRINT,
1294 CanBasicPrint(browser_)); 1272 CanBasicPrint(browser_));
1295 #endif // ENABLE_BASIC_PRINTING 1273 #endif // ENABLE_BASIC_PRINTING
1296 } 1274 }
1297 1275
1298 void BrowserCommandController::UpdateSaveAsState() { 1276 void BrowserCommandController::UpdateSaveAsState() {
1299 command_updater_.UpdateCommandEnabled(IDC_SAVE_PAGE, CanSavePage(browser_)); 1277 command_updater_.UpdateCommandEnabled(IDC_SAVE_PAGE, CanSavePage(browser_));
1300 } 1278 }
1301 1279
1302 void BrowserCommandController::UpdateShowSyncState(bool show_main_ui) {
1303 command_updater_.UpdateCommandEnabled(
1304 IDC_SHOW_SYNC_SETUP, show_main_ui && pref_signin_allowed_.GetValue());
1305 }
1306
1307 // static 1280 // static
1308 void BrowserCommandController::UpdateOpenFileState( 1281 void BrowserCommandController::UpdateOpenFileState(
1309 CommandUpdater* command_updater) { 1282 CommandUpdater* command_updater) {
1310 bool enabled = true; 1283 bool enabled = true;
1311 PrefService* local_state = g_browser_process->local_state(); 1284 PrefService* local_state = g_browser_process->local_state();
1312 if (local_state) 1285 if (local_state)
1313 enabled = local_state->GetBoolean(prefs::kAllowFileSelectionDialogs); 1286 enabled = local_state->GetBoolean(prefs::kAllowFileSelectionDialogs);
1314 1287
1315 command_updater->UpdateCommandEnabled(IDC_OPEN_FILE, enabled); 1288 command_updater->UpdateCommandEnabled(IDC_OPEN_FILE, enabled);
1316 } 1289 }
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
1361 1334
1362 BrowserWindow* BrowserCommandController::window() { 1335 BrowserWindow* BrowserCommandController::window() {
1363 return browser_->window(); 1336 return browser_->window();
1364 } 1337 }
1365 1338
1366 Profile* BrowserCommandController::profile() { 1339 Profile* BrowserCommandController::profile() {
1367 return browser_->profile(); 1340 return browser_->profile();
1368 } 1341 }
1369 1342
1370 } // namespace chrome 1343 } // namespace chrome
OLDNEW
« no previous file with comments | « chrome/browser/ui/browser_command_controller.h ('k') | chrome/browser/ui/browser_command_controller_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698