summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/app/nibs/SyncCustomize.xib90
-rw-r--r--chrome/browser/cocoa/sync_customize_controller.h4
-rw-r--r--chrome/browser/cocoa/sync_customize_controller.mm15
3 files changed, 104 insertions, 5 deletions
diff --git a/chrome/app/nibs/SyncCustomize.xib b/chrome/app/nibs/SyncCustomize.xib
index 894fb0b..188c715 100644
--- a/chrome/app/nibs/SyncCustomize.xib
+++ b/chrome/app/nibs/SyncCustomize.xib
@@ -159,6 +159,28 @@
<int key="NSPeriodicInterval">25</int>
</object>
</object>
+ <object class="NSButton" id="430596235">
+ <reference key="NSNextResponder" ref="925353020"/>
+ <int key="NSvFlags">292</int>
+ <string key="NSFrame">{{26, 59}, {251, 18}}</string>
+ <reference key="NSSuperview" ref="925353020"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSButtonCell" key="NSCell" id="237072256">
+ <int key="NSCellFlags">604110336</int>
+ <int key="NSCellFlags2">0</int>
+ <string key="NSContents">^IDS_SYNC_DATATYPE_EXTENSIONS</string>
+ <reference key="NSSupport" ref="460135184"/>
+ <reference key="NSControlView" ref="430596235"/>
+ <int key="NSButtonFlags">1211912703</int>
+ <int key="NSButtonFlags2">2</int>
+ <reference key="NSNormalImage" ref="817906260"/>
+ <reference key="NSAlternateImage" ref="165114022"/>
+ <string key="NSAlternateContents"/>
+ <string key="NSKeyEquivalent"/>
+ <int key="NSPeriodicDelay">200</int>
+ <int key="NSPeriodicInterval">25</int>
+ </object>
+ </object>
<object class="NSButton" id="425937350">
<reference key="NSNextResponder" ref="925353020"/>
<int key="NSvFlags">292</int>
@@ -459,6 +481,42 @@
</object>
<int key="connectionID">149</int>
</object>
+ <object class="IBConnectionRecord">
+ <object class="IBBindingConnection" key="connection">
+ <string key="label">value: extensionsPreferred</string>
+ <reference key="source" ref="430596235"/>
+ <reference key="destination" ref="1001"/>
+ <object class="NSNibBindingConnector" key="connector">
+ <reference key="NSSource" ref="430596235"/>
+ <reference key="NSDestination" ref="1001"/>
+ <string key="NSLabel">value: extensionsPreferred</string>
+ <string key="NSBinding">value</string>
+ <string key="NSKeyPath">extensionsPreferred</string>
+ <object class="NSDictionary" key="NSOptions">
+ <string key="NS.key.0">NSAllowsEditingMultipleValuesSelection</string>
+ <reference key="NS.object.0" ref="6"/>
+ </object>
+ <int key="NSNibBindingConnectorVersion">2</int>
+ </object>
+ </object>
+ <int key="connectionID">163</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBBindingConnection" key="connection">
+ <string key="label">enabled: extensionsRegistered</string>
+ <reference key="source" ref="430596235"/>
+ <reference key="destination" ref="1001"/>
+ <object class="NSNibBindingConnector" key="connector">
+ <reference key="NSSource" ref="430596235"/>
+ <reference key="NSDestination" ref="1001"/>
+ <string key="NSLabel">enabled: extensionsRegistered</string>
+ <string key="NSBinding">enabled</string>
+ <string key="NSKeyPath">extensionsRegistered</string>
+ <int key="NSNibBindingConnectorVersion">2</int>
+ </object>
+ </object>
+ <int key="connectionID">166</int>
+ </object>
</object>
<object class="IBMutableOrderedSet" key="objectRecords">
<object class="NSArray" key="orderedObjects">
@@ -519,6 +577,7 @@
<reference ref="515710968"/>
<reference ref="425937350"/>
<reference ref="903818124"/>
+ <reference ref="430596235"/>
</object>
<reference key="parent" ref="114461420"/>
</object>
@@ -635,6 +694,20 @@
<reference key="object" ref="683407897"/>
<reference key="parent" ref="903818124"/>
</object>
+ <object class="IBObjectRecord">
+ <int key="objectID">156</int>
+ <reference key="object" ref="430596235"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="237072256"/>
+ </object>
+ <reference key="parent" ref="925353020"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">157</int>
+ <reference key="object" ref="237072256"/>
+ <reference key="parent" ref="430596235"/>
+ </object>
</object>
</object>
<object class="NSMutableDictionary" key="flattenedProperties">
@@ -650,6 +723,8 @@
<string>107.IBPluginDependency</string>
<string>108.IBPluginDependency</string>
<string>109.IBPluginDependency</string>
+ <string>156.IBPluginDependency</string>
+ <string>157.IBPluginDependency</string>
<string>49.IBEditorWindowLastContentRect</string>
<string>49.IBPluginDependency</string>
<string>49.IBWindowTemplateEditedContentRect</string>
@@ -676,9 +751,11 @@
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string>{{782, 863}, {327, 207}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string>{{782, 863}, {327, 207}}</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>{{832, 795}, {327, 207}}</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>{{832, 795}, {327, 207}}</string>
<reference ref="6"/>
<string>{196, 240}</string>
<string>{{357, 418}, {480, 270}}</string>
@@ -712,7 +789,7 @@
</object>
</object>
<nil key="sourceID"/>
- <int key="maxID">155</int>
+ <int key="maxID">166</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
@@ -802,6 +879,13 @@
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">browser/cocoa/objc_zombie.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
<string key="minorKey">browser/cocoa/status_bubble_mac.h</string>
</object>
</object>
diff --git a/chrome/browser/cocoa/sync_customize_controller.h b/chrome/browser/cocoa/sync_customize_controller.h
index 32f626e..da22203 100644
--- a/chrome/browser/cocoa/sync_customize_controller.h
+++ b/chrome/browser/cocoa/sync_customize_controller.h
@@ -28,6 +28,7 @@ class ProfileSyncService;
BOOL preferencesRegistered_;
BOOL autofillRegistered_;
BOOL themesRegistered_;
+ BOOL extensionsRegistered_;
// The preferred flags indicate which model types the user would
// like to sync.
@@ -35,6 +36,7 @@ class ProfileSyncService;
BOOL preferencesPreferred_;
BOOL autofillPreferred_;
BOOL themesPreferred_;
+ BOOL extensionsPreferred_;
}
// syncService cannot be NULL.
@@ -54,11 +56,13 @@ class ProfileSyncService;
@property(assign) BOOL preferencesRegistered;
@property(assign) BOOL autofillRegistered;
@property(assign) BOOL themesRegistered;
+@property(assign) BOOL extensionsRegistered;
@property(assign) BOOL bookmarksPreferred;
@property(assign) BOOL preferencesPreferred;
@property(assign) BOOL autofillPreferred;
@property(assign) BOOL themesPreferred;
+@property(assign) BOOL extensionsPreferred;
@property(readonly) BOOL okEnabled;
diff --git a/chrome/browser/cocoa/sync_customize_controller.mm b/chrome/browser/cocoa/sync_customize_controller.mm
index 5ceface..9bb7cfe 100644
--- a/chrome/browser/cocoa/sync_customize_controller.mm
+++ b/chrome/browser/cocoa/sync_customize_controller.mm
@@ -22,6 +22,7 @@
@synthesize preferencesRegistered = preferencesRegistered_;
@synthesize autofillRegistered = autofillRegistered_;
@synthesize themesRegistered = themesRegistered_;
+@synthesize extensionsRegistered = extensionsRegistered_;
// If you add another ***Preferred variable, you must update okEnabled and
// keyPathsForValuesAffectingOkEnabled below.
@@ -29,19 +30,21 @@
@synthesize preferencesPreferred = preferencesPreferred_;
@synthesize autofillPreferred = autofillPreferred_;
@synthesize themesPreferred = themesPreferred_;
+@synthesize extensionsPreferred = extensionsPreferred_;
// The OK button should be clickable if and only if there's at least one
// datatype chosen to sync.
- (BOOL)okEnabled {
return bookmarksPreferred_ || preferencesPreferred_ || autofillPreferred_ ||
- themesPreferred_;
+ themesPreferred_ || extensionsPreferred_;
}
// Naming convention; makes okEnabled get updated whenever any of the below
// "Preferred" variables are updated.
+ (NSSet*)keyPathsForValuesAffectingOkEnabled {
return [NSSet setWithObjects:@"bookmarksPreferred", @"preferencesPreferred",
- @"autofillPreferred", @"themesPreferred", nil];
+ @"autofillPreferred", @"themesPreferred",
+ @"extensionsPreferred", nil];
}
- (id)initWithProfileSyncService:(ProfileSyncService*)syncService {
@@ -100,6 +103,7 @@
syncable::PREFERENCES,
syncable::AUTOFILL,
syncable::THEMES,
+ syncable::EXTENSIONS,
};
DCHECK(std::includes(expected_types,
expected_types + arraysize(expected_types),
@@ -114,6 +118,8 @@
syncable::AUTOFILL)];
[self setThemesRegistered:ContainsKey(registered_types,
syncable::THEMES)];
+ [self setExtensionsRegistered:ContainsKey(registered_types,
+ syncable::EXTENSIONS)];
syncable::ModelTypeSet preferred_types;
syncService_->GetPreferredDataTypes(&preferred_types);
@@ -128,6 +134,8 @@
syncable::AUTOFILL)];
[self setThemesPreferred:ContainsKey(preferred_types,
syncable::THEMES)];
+ [self setExtensionsPreferred:ContainsKey(preferred_types,
+ syncable::EXTENSIONS)];
}
- (void)windowWillClose:(NSNotification*)notification {
@@ -158,6 +166,9 @@
if ([self themesPreferred]) {
preferred_types.insert(syncable::THEMES);
}
+ if ([self extensionsPreferred]) {
+ preferred_types.insert(syncable::EXTENSIONS);
+ }
syncService_->ChangePreferredDataTypes(preferred_types);
[self endSheet];
}