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

Side by Side Diff: chrome/browser/cocoa/preferences_window_controller.mm

Issue 3140024: Implement policy for disabling auto fill. (Closed) Base URL: http://src.chromium.org/git/chromium.git
Patch Set: regenerate XIBs in order to avoid maxID corruption. Created 10 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #import "chrome/browser/cocoa/preferences_window_controller.h" 5 #import "chrome/browser/cocoa/preferences_window_controller.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "app/l10n_util.h" 9 #include "app/l10n_util.h"
10 #include "app/l10n_util_mac.h" 10 #include "app/l10n_util_mac.h"
(...skipping 401 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 private: 412 private:
413 PreferencesWindowController* controller_; // weak, owns us 413 PreferencesWindowController* controller_; // weak, owns us
414 OptionsPage page_; // current options page 414 OptionsPage page_; // current options page
415 }; 415 };
416 416
417 } // namespace PreferencesWindowControllerInternal 417 } // namespace PreferencesWindowControllerInternal
418 418
419 @implementation PreferencesWindowController 419 @implementation PreferencesWindowController
420 420
421 @synthesize showHomeButtonEnabled = showHomeButtonEnabled_; 421 @synthesize showHomeButtonEnabled = showHomeButtonEnabled_;
422 @synthesize autoFillSettingsButtonEnabled = autoFillSettingsButtonEnabled_;
422 @synthesize proxiesConfigureButtonEnabled = proxiesConfigureButtonEnabled_; 423 @synthesize proxiesConfigureButtonEnabled = proxiesConfigureButtonEnabled_;
423 424
424 - (id)initWithProfile:(Profile*)profile initialPage:(OptionsPage)initialPage { 425 - (id)initWithProfile:(Profile*)profile initialPage:(OptionsPage)initialPage {
425 DCHECK(profile); 426 DCHECK(profile);
426 // Use initWithWindowNibPath:: instead of initWithWindowNibName: so we 427 // Use initWithWindowNibPath:: instead of initWithWindowNibName: so we
427 // can override it in a unit test. 428 // can override it in a unit test.
428 NSString* nibPath = [mac_util::MainAppBundle() 429 NSString* nibPath = [mac_util::MainAppBundle()
429 pathForResource:@"Preferences" 430 pathForResource:@"Preferences"
430 ofType:@"nib"]; 431 ofType:@"nib"];
431 if ((self = [super initWithWindowNibPath:nibPath owner:self])) { 432 if ((self = [super initWithWindowNibPath:nibPath owner:self])) {
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
481 [[NSColor colorWithDeviceRed:0xff/255.0 482 [[NSColor colorWithDeviceRed:0xff/255.0
482 green:0x9a/255.0 483 green:0x9a/255.0
483 blue:0x9a/255.0 484 blue:0x9a/255.0
484 alpha:1.0] retain]); 485 alpha:1.0] retain]);
485 486
486 // Disable the |autoFillSettingsButton_| if we have no 487 // Disable the |autoFillSettingsButton_| if we have no
487 // |personalDataManager|. 488 // |personalDataManager|.
488 PersonalDataManager* personalDataManager = 489 PersonalDataManager* personalDataManager =
489 profile_->GetPersonalDataManager(); 490 profile_->GetPersonalDataManager();
490 [autoFillSettingsButton_ setHidden:(personalDataManager == NULL)]; 491 [autoFillSettingsButton_ setHidden:(personalDataManager == NULL)];
492 bool autofill_disabled_by_policy =
493 autoFillEnabled_.IsManaged() && !autoFillEnabled_.GetValue();
494 [self setAutoFillSettingsButtonEnabled:!autofill_disabled_by_policy];
491 495
492 // Initialize the proxy pref set observer. 496 // Initialize the proxy pref set observer.
493 proxyPrefs_.reset( 497 proxyPrefs_.reset(
494 PrefSetObserver::CreateProxyPrefSetObserver(prefs_, observer_.get())); 498 PrefSetObserver::CreateProxyPrefSetObserver(prefs_, observer_.get()));
495 [self setProxiesConfigureButtonEnabled:!proxyPrefs_->IsManaged()]; 499 [self setProxiesConfigureButtonEnabled:!proxyPrefs_->IsManaged()];
496 500
497 // Initialize show home button checkbox enabled state. 501 // Initialize show home button checkbox enabled state.
498 [self setShowHomeButtonEnabled:!showHomeButton_.IsManaged()]; 502 [self setShowHomeButtonEnabled:!showHomeButton_.IsManaged()];
499 } 503 }
500 return self; 504 return self;
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after
750 prefs_->AddPrefObserver(prefs::kURLsToRestoreOnStartup, observer_.get()); 754 prefs_->AddPrefObserver(prefs::kURLsToRestoreOnStartup, observer_.get());
751 restoreOnStartup_.Init(prefs::kRestoreOnStartup, prefs_, observer_.get()); 755 restoreOnStartup_.Init(prefs::kRestoreOnStartup, prefs_, observer_.get());
752 newTabPageIsHomePage_.Init(prefs::kHomePageIsNewTabPage, 756 newTabPageIsHomePage_.Init(prefs::kHomePageIsNewTabPage,
753 prefs_, observer_.get()); 757 prefs_, observer_.get());
754 homepage_.Init(prefs::kHomePage, prefs_, observer_.get()); 758 homepage_.Init(prefs::kHomePage, prefs_, observer_.get());
755 showHomeButton_.Init(prefs::kShowHomeButton, prefs_, observer_.get()); 759 showHomeButton_.Init(prefs::kShowHomeButton, prefs_, observer_.get());
756 760
757 // Personal Stuff panel 761 // Personal Stuff panel
758 askSavePasswords_.Init(prefs::kPasswordManagerEnabled, 762 askSavePasswords_.Init(prefs::kPasswordManagerEnabled,
759 prefs_, observer_.get()); 763 prefs_, observer_.get());
764 autoFillEnabled_.Init(prefs::kAutoFillEnabled, prefs_, observer_.get());
760 currentTheme_.Init(prefs::kCurrentThemeID, prefs_, observer_.get()); 765 currentTheme_.Init(prefs::kCurrentThemeID, prefs_, observer_.get());
761 766
762 // Under the hood panel 767 // Under the hood panel
763 alternateErrorPages_.Init(prefs::kAlternateErrorPagesEnabled, 768 alternateErrorPages_.Init(prefs::kAlternateErrorPagesEnabled,
764 prefs_, observer_.get()); 769 prefs_, observer_.get());
765 useSuggest_.Init(prefs::kSearchSuggestEnabled, prefs_, observer_.get()); 770 useSuggest_.Init(prefs::kSearchSuggestEnabled, prefs_, observer_.get());
766 dnsPrefetch_.Init(prefs::kDnsPrefetchingEnabled, prefs_, observer_.get()); 771 dnsPrefetch_.Init(prefs::kDnsPrefetchingEnabled, prefs_, observer_.get());
767 safeBrowsing_.Init(prefs::kSafeBrowsingEnabled, prefs_, observer_.get()); 772 safeBrowsing_.Init(prefs::kSafeBrowsingEnabled, prefs_, observer_.get());
768 autoOpenFiles_.Init( 773 autoOpenFiles_.Init(
769 prefs::kDownloadExtensionsToOpen, prefs_, observer_.get()); 774 prefs::kDownloadExtensionsToOpen, prefs_, observer_.get());
(...skipping 435 matching lines...) Expand 10 before | Expand all | Expand 10 after
1205 1210
1206 // Callback when preferences are changed. |prefName| is the name of the pref 1211 // Callback when preferences are changed. |prefName| is the name of the pref
1207 // that has changed. Unlike on Windows, we don't need to use this method for 1212 // that has changed. Unlike on Windows, we don't need to use this method for
1208 // initializing, that's handled by Cocoa Bindings. 1213 // initializing, that's handled by Cocoa Bindings.
1209 // Handles prefs for the "Personal Stuff" panel. 1214 // Handles prefs for the "Personal Stuff" panel.
1210 - (void)userDataPrefChanged:(std::string*)prefName { 1215 - (void)userDataPrefChanged:(std::string*)prefName {
1211 if (*prefName == prefs::kPasswordManagerEnabled) { 1216 if (*prefName == prefs::kPasswordManagerEnabled) {
1212 [self setPasswordManagerEnabledIndex:askSavePasswords_.GetValue() ? 1217 [self setPasswordManagerEnabledIndex:askSavePasswords_.GetValue() ?
1213 kEnabledIndex : kDisabledIndex]; 1218 kEnabledIndex : kDisabledIndex];
1214 } 1219 }
1220 if (*prefName == prefs::kAutoFillEnabled) {
1221 bool autofill_disabled_by_policy =
1222 autoFillEnabled_.IsManaged() && !autoFillEnabled_.GetValue();
1223 [self setAutoFillSettingsButtonEnabled:!autofill_disabled_by_policy];
1224 }
1215 if (*prefName == prefs::kCurrentThemeID) { 1225 if (*prefName == prefs::kCurrentThemeID) {
1216 [self setIsUsingDefaultTheme:currentTheme_.GetValue().length() == 0]; 1226 [self setIsUsingDefaultTheme:currentTheme_.GetValue().length() == 0];
1217 } 1227 }
1218 } 1228 }
1219 1229
1220 // Called to launch the Keychain Access app to show the user's stored 1230 // Called to launch the Keychain Access app to show the user's stored
1221 // passwords. 1231 // passwords.
1222 - (IBAction)showSavedPasswords:(id)sender { 1232 - (IBAction)showSavedPasswords:(id)sender {
1223 [self recordUserAction:UserMetricsAction("Options_ShowPasswordsExceptions")]; 1233 [self recordUserAction:UserMetricsAction("Options_ShowPasswordsExceptions")];
1224 [self launchKeychainAccess]; 1234 [self launchKeychainAccess];
(...skipping 858 matching lines...) Expand 10 before | Expand all | Expand 10 after
2083 case OPTIONS_PAGE_ADVANCED: 2093 case OPTIONS_PAGE_ADVANCED:
2084 return underTheHoodView_; 2094 return underTheHoodView_;
2085 case OPTIONS_PAGE_DEFAULT: 2095 case OPTIONS_PAGE_DEFAULT:
2086 case OPTIONS_PAGE_COUNT: 2096 case OPTIONS_PAGE_COUNT:
2087 LOG(DFATAL) << "Invalid page value " << page; 2097 LOG(DFATAL) << "Invalid page value " << page;
2088 } 2098 }
2089 return basicsView_; 2099 return basicsView_;
2090 } 2100 }
2091 2101
2092 @end 2102 @end
OLDNEW
« no previous file with comments | « chrome/browser/cocoa/preferences_window_controller.h ('k') | chrome/browser/gtk/options/content_page_gtk.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698