diff --git a/src/vs/workbench/services/userDataSync/browser/userDataAutoSyncService.ts b/src/vs/workbench/services/userDataSync/browser/userDataAutoSyncService.ts index 85d53f75a5d..fa85c6a2f54 100644 --- a/src/vs/workbench/services/userDataSync/browser/userDataAutoSyncService.ts +++ b/src/vs/workbench/services/userDataSync/browser/userDataAutoSyncService.ts @@ -14,7 +14,7 @@ export class WebUserDataAutoSyncService extends UserDataAutoSyncService implemen isEnabled(): boolean { if (this.enabled === undefined) { - this.enabled = this.workbenchEnvironmentService.options?.enableSettingsSync; + this.enabled = this.workbenchEnvironmentService.options?.settingsSyncOptions?.enabled; } if (this.enabled === undefined) { this.enabled = super.isEnabled(this.workbenchEnvironmentService.options?.enableSyncByDefault); @@ -25,8 +25,8 @@ export class WebUserDataAutoSyncService extends UserDataAutoSyncService implemen protected setEnablement(enabled: boolean) { if (this.enabled !== enabled) { this.enabled = enabled; - if (this.workbenchEnvironmentService.options?.settingsSyncEnablementHandler) { - this.workbenchEnvironmentService.options.settingsSyncEnablementHandler(this.enabled); + if (this.workbenchEnvironmentService.options?.settingsSyncOptions?.enablementHandler) { + this.workbenchEnvironmentService.options.settingsSyncOptions.enablementHandler(this.enabled); } } } diff --git a/src/vs/workbench/workbench.web.api.ts b/src/vs/workbench/workbench.web.api.ts index f614d59929a..9776a5a1453 100644 --- a/src/vs/workbench/workbench.web.api.ts +++ b/src/vs/workbench/workbench.web.api.ts @@ -235,12 +235,19 @@ interface IProductQualityChangeHandler { (newQuality: 'insider' | 'stable'): void; } -interface ISettingsSyncEnablementHandler { +/** + * Settings sync options + */ +interface ISettingsSyncOptions { + /** + * Is settings sync enabled + */ + readonly enabled: boolean; /** * Handler is being called when the user changes Settings Sync enablement. */ - (enablement: boolean): void; + enablementHandler(enablement: boolean): void; } interface IWorkbenchConstructionOptions { @@ -318,19 +325,14 @@ interface IWorkbenchConstructionOptions { * * Syncs with the current authenticated user account (provided in [credentialsProvider](#credentialsProvider)) by default. * - * @deprecated Instead use [enableSettingsSync](#enableSettingsSync) to enable/disable settings sync in the workbench. + * @deprecated Instead use [settingsSyncOptions](#settingsSyncOptions) to enable/disable settings sync in the workbench. */ readonly enableSyncByDefault?: boolean; /** - * Enable or disable the Settings Sync + * Settings sync options */ - readonly enableSettingsSync?: boolean; - - /** - * Support for Settings Sync enablement change - */ - readonly settingsSyncEnablementHandler?: ISettingsSyncEnablementHandler; + readonly settingsSyncOptions?: ISettingsSyncOptions; /** * The credentials provider to store and retrieve secrets.