Index: chrome/browser/cocoa/preferences_window_controller.mm |
=================================================================== |
--- chrome/browser/cocoa/preferences_window_controller.mm (revision 28977) |
+++ chrome/browser/cocoa/preferences_window_controller.mm (working copy) |
@@ -86,6 +86,7 @@ |
- (void)setShowPageOptionsButtons:(BOOL)value; |
- (void)setPasswordManagerEnabledIndex:(NSInteger)value; |
- (void)setFormAutofillEnabledIndex:(NSInteger)value; |
+- (void)setIsUsingDefaultTheme:(BOOL)value; |
- (void)setShowAlternateErrorPages:(BOOL)value; |
- (void)setUseSuggest:(BOOL)value; |
- (void)setDnsPrefetch:(BOOL)value; |
@@ -249,10 +250,11 @@ |
observer_.get()); |
// TODO(pinkerton): Register Default search. |
- // UserData panel |
+ // Personal Stuff panel |
askSavePasswords_.Init(prefs::kPasswordManagerEnabled, |
prefs_, observer_.get()); |
formAutofill_.Init(prefs::kFormAutofillEnabled, prefs_, observer_.get()); |
+ currentTheme_.Init(prefs::kCurrentThemeID, prefs_, observer_.get()); |
// Under the hood panel |
alternateErrorPages_.Init(prefs::kAlternateErrorPagesEnabled, |
@@ -260,6 +262,7 @@ |
useSuggest_.Init(prefs::kSearchSuggestEnabled, prefs_, observer_.get()); |
dnsPrefetch_.Init(prefs::kDnsPrefetchingEnabled, prefs_, observer_.get()); |
safeBrowsing_.Init(prefs::kSafeBrowsingEnabled, prefs_, observer_.get()); |
+ |
// During unit tests, there is no local state object, so we fall back to |
// the prefs object (where we've explicitly registered this pref so we |
// know it's there). |
@@ -671,7 +674,7 @@ |
// Callback when preferences are changed. |prefName| is the name of the pref |
// that has changed. Unlike on Windows, we don't need to use this method for |
// initializing, that's handled by Cocoa Bindings. |
-// Handles prefs for the "Minor Tweaks" panel. |
+// Handles prefs for the "Personal Stuff" panel. |
- (void)userDataPrefChanged:(std::wstring*)prefName { |
if (*prefName == prefs::kPasswordManagerEnabled) { |
[self setPasswordManagerEnabledIndex:askSavePasswords_.GetValue() ? |
@@ -681,6 +684,9 @@ |
[self setFormAutofillEnabledIndex:formAutofill_.GetValue() ? |
kEnabledIndex : kDisabledIndex]; |
} |
+ if (*prefName == prefs::kCurrentThemeID) { |
+ [self setIsUsingDefaultTheme:currentTheme_.GetValue().length() == 0]; |
+ } |
} |
// Called to launch the Keychain Access app to show the user's stored |
@@ -755,6 +761,17 @@ |
return formAutofill_.GetValue() ? kEnabledIndex : kDisabledIndex; |
} |
+- (void)setIsUsingDefaultTheme:(BOOL)value { |
+ if (value) |
+ [self recordUserAction:L"Options_IsUsingDefaultTheme_Enable"]; |
+ else |
+ [self recordUserAction:L"Options_IsUsingDefaultTheme_Disable"]; |
+} |
+ |
+- (BOOL)isUsingDefaultTheme { |
+ return currentTheme_.GetValue().length() == 0; |
+} |
+ |
//------------------------------------------------------------------------- |
// Under the hood panel |