diff options
-rw-r--r-- | chrome/app/nibs/SyncCustomize.xib | 90 | ||||
-rw-r--r-- | chrome/browser/cocoa/sync_customize_controller.h | 4 | ||||
-rw-r--r-- | chrome/browser/cocoa/sync_customize_controller.mm | 15 |
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]; } |