Commit b0a1368f authored by Jérôme Lebel's avatar Jérôme Lebel Committed by Commit Bot

[iOS] Code cleanup for Google services settings

Reorganizing GoogleServicesSettingsCommandID enum and
<GoogleServicesSettingsCommandHandler> to match the UI layout.

Cq-Include-Trybots: luci.chromium.try:ios-simulator-full-configs;master.tryserver.chromium.mac:ios-simulator-cronet
Change-Id: Ie60468e0d3f2f2ad3b9ad3d515675ab4deafaaa8
Reviewed-on: https://chromium-review.googlesource.com/1163663
Commit-Queue: Jérôme Lebel <jlebel@chromium.org>
Reviewed-by: default avatarSergio Collazos <sczs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#581273}
parent c799f6a7
......@@ -11,8 +11,18 @@ typedef NS_ENUM(NSInteger, GoogleServicesSettingsCommandID) {
GoogleServicesSettingsCommandIDNoOp,
// Enabble/disable all the Google services.
GoogleServicesSettingsCommandIDToggleSyncEverything,
// Personalized section.
// Enable/disabble bookmark sync.
GoogleServicesSettingsCommandIDToggleDataTypeSync,
// Opens the Google activity controls dialog.
GoogleServicesSettingsCommandIDOpenGoogleActivityPage,
// Opens the encryption dialog.
GoogleServicesSettingsCommandIDOpenEncryptionDialog,
// Opens manage synced data page.
GoogleServicesSettingsCommandIDOpenManageSyncedDataPage,
// Non-personalized section.
// Enable/disabble autocomplete searches service.
GoogleServicesSettingsCommandIDToggleAutocompleteSearchesService,
// Enable/disabble preload pages service.
......@@ -21,32 +31,17 @@ typedef NS_ENUM(NSInteger, GoogleServicesSettingsCommandID) {
GoogleServicesSettingsCommandIDToggleImproveChromeService,
// Enable/disabble better search and browsing service.
GoogleServicesSettingsCommandIDToggleBetterSearchAndBrowsingService,
// Opens the Google activity controls dialog.
GoogleServicesSettingsCommandIDOpenGoogleActivityPage,
// Opens the encryption dialog.
GoogleServicesSettingsCommandIDOpenEncryptionDialog,
// Opens manage synced data page.
GoogleServicesSettingsCommandIDOpenManageSyncedDataPage,
};
// Protocol to handle Google services settings commands.
@protocol GoogleServicesSettingsCommandHandler<NSObject>
// Called when GoogleServicesSettingsCommandIDToggleSyncEverything is triggered.
- (void)toggleSyncEverythingWithValue:(BOOL)on;
- (void)toggleSyncEverythingWithValue:(BOOL)value;
// Personalized section.
// Called when GoogleServicesSettingsCommandIDToggleDataTypeSync is triggered.
- (void)toggleSyncDataSync:(NSInteger)dataType WithValue:(BOOL)on;
- (void)toggleAutocompleteSearchesServiceWithValue:(BOOL)on;
// Called when GoogleServicesSettingsCommandIDTogglePreloadPagesService is
// triggered.
- (void)togglePreloadPagesServiceWithValue:(BOOL)on;
// Called when GoogleServicesSettingsCommandIDToggleImproveChromeService is
// triggered.
- (void)toggleImproveChromeServiceWithValue:(BOOL)on;
// Called when
// GoogleServicesSettingsCommandIDToggleBetterSearchAndBrowsingService is
// triggered.
- (void)toggleBetterSearchAndBrowsingServiceWithValue:(BOOL)on;
- (void)toggleSyncDataSync:(NSInteger)dataType withValue:(BOOL)value;
// Called when GoogleServicesSettingsCommandIDOpenGoogleActivityPage is
// triggered.
- (void)openGoogleActivityPage;
......@@ -57,6 +52,21 @@ typedef NS_ENUM(NSInteger, GoogleServicesSettingsCommandID) {
// triggered.
- (void)openManageSyncedDataPage;
// Non-personalized section.
// Called when GoogleServicesSettingsCommandIDToggleAutocompleteSearchesService
// is triggered.
- (void)toggleAutocompleteSearchesServiceWithValue:(BOOL)value;
// Called when GoogleServicesSettingsCommandIDTogglePreloadPagesService is
// triggered.
- (void)togglePreloadPagesServiceWithValue:(BOOL)value;
// Called when GoogleServicesSettingsCommandIDToggleImproveChromeService is
// triggered.
- (void)toggleImproveChromeServiceWithValue:(BOOL)value;
// Called when
// GoogleServicesSettingsCommandIDToggleBetterSearchAndBrowsingService is
// triggered.
- (void)toggleBetterSearchAndBrowsingServiceWithValue:(BOOL)value;
@end
#endif // IOS_CHROME_BROWSER_UI_SETTINGS_GOOGLE_SERVICES_SETTINGS_COMMAND_HANDLER_H_
......@@ -26,6 +26,11 @@ class ProfileSyncService;
: NSObject<GoogleServicesSettingsCommandHandler,
GoogleServicesSettingsViewControllerModelDelegate>
// View controller.
@property(nonatomic, weak) id<GoogleServicesSettingsConsumer> consumer;
// Authentication service.
@property(nonatomic, assign) AuthenticationService* authService;
// Designated initializer. |prefService|, |syncService| and |syncSetupService|
// should not be null.
- (instancetype)initWithPrefService:(PrefService*)prefService
......@@ -36,11 +41,6 @@ class ProfileSyncService;
- (instancetype)init NS_UNAVAILABLE;
// View controller.
@property(nonatomic, weak) id<GoogleServicesSettingsConsumer> consumer;
// Authentication service.
@property(nonatomic, assign) AuthenticationService* authService;
@end
#endif // IOS_CHROME_BROWSER_UI_SETTINGS_GOOGLE_SERVICES_SETTINGS_MEDIATOR_H_
......@@ -499,39 +499,39 @@ textItemWithItemType:(NSInteger)itemType
self.prefService->SetBoolean(kUnifiedConsentGiven, value);
}
- (void)toggleSyncDataSync:(NSInteger)dataTypeInt WithValue:(BOOL)on {
- (void)toggleSyncDataSync:(NSInteger)dataTypeInt withValue:(BOOL)value {
base::AutoReset<BOOL> autoReset(&_personalizedSectionBeingAnimated, YES);
SyncSetupService::SyncableDatatype dataType =
static_cast<SyncSetupService::SyncableDatatype>(dataTypeInt);
syncer::ModelType modelType = self.syncSetupService->GetModelType(dataType);
self.syncSetupService->SetDataTypeEnabled(modelType, on);
self.syncSetupService->SetDataTypeEnabled(modelType, value);
}
- (void)toggleAutocompleteSearchesServiceWithValue:(BOOL)on {
- (void)openGoogleActivityPage {
// Needs to be implemented.
}
- (void)togglePreloadPagesServiceWithValue:(BOOL)on {
- (void)openEncryptionDialog {
// Needs to be implemented.
}
- (void)toggleImproveChromeServiceWithValue:(BOOL)on {
- (void)openManageSyncedDataPage {
// Needs to be implemented.
}
- (void)toggleBetterSearchAndBrowsingServiceWithValue:(BOOL)on {
- (void)toggleAutocompleteSearchesServiceWithValue:(BOOL)value {
// Needs to be implemented.
}
- (void)openGoogleActivityPage {
- (void)togglePreloadPagesServiceWithValue:(BOOL)value {
// Needs to be implemented.
}
- (void)openEncryptionDialog {
- (void)toggleImproveChromeServiceWithValue:(BOOL)value {
// Needs to be implemented.
}
- (void)openManageSyncedDataPage {
- (void)toggleBetterSearchAndBrowsingServiceWithValue:(BOOL)value {
// Needs to be implemented.
}
......
......@@ -101,18 +101,12 @@ constexpr NSInteger kSectionOffset = 1000;
GoogleServicesSettingsCommandID commandID =
static_cast<GoogleServicesSettingsCommandID>(syncSwitchItem.commandID);
switch (commandID) {
case GoogleServicesSettingsCommandIDNoOp:
case GoogleServicesSettingsCommandIDOpenGoogleActivityPage:
case GoogleServicesSettingsCommandIDOpenEncryptionDialog:
case GoogleServicesSettingsCommandIDOpenManageSyncedDataPage:
NOTREACHED();
break;
case GoogleServicesSettingsCommandIDToggleSyncEverything:
[self.commandHandler toggleSyncEverythingWithValue:isOn];
break;
case GoogleServicesSettingsCommandIDToggleDataTypeSync:
[self.commandHandler toggleSyncDataSync:syncSwitchItem.dataType
WithValue:isOn];
withValue:isOn];
break;
case GoogleServicesSettingsCommandIDToggleAutocompleteSearchesService:
[self.commandHandler toggleAutocompleteSearchesServiceWithValue:isOn];
......@@ -126,6 +120,12 @@ constexpr NSInteger kSectionOffset = 1000;
case GoogleServicesSettingsCommandIDToggleBetterSearchAndBrowsingService:
[self.commandHandler toggleBetterSearchAndBrowsingServiceWithValue:isOn];
break;
case GoogleServicesSettingsCommandIDNoOp:
case GoogleServicesSettingsCommandIDOpenGoogleActivityPage:
case GoogleServicesSettingsCommandIDOpenEncryptionDialog:
case GoogleServicesSettingsCommandIDOpenManageSyncedDataPage:
NOTREACHED();
break;
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment