Skip to content

Commit 4ad1655

Browse files
committed
move settings sync options into single interface
1 parent e649ef3 commit 4ad1655

2 files changed

Lines changed: 15 additions & 13 deletions

File tree

src/vs/workbench/services/userDataSync/browser/userDataAutoSyncService.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ export class WebUserDataAutoSyncService extends UserDataAutoSyncService implemen
1414

1515
isEnabled(): boolean {
1616
if (this.enabled === undefined) {
17-
this.enabled = this.workbenchEnvironmentService.options?.enableSettingsSync;
17+
this.enabled = this.workbenchEnvironmentService.options?.settingsSyncOptions?.enabled;
1818
}
1919
if (this.enabled === undefined) {
2020
this.enabled = super.isEnabled(this.workbenchEnvironmentService.options?.enableSyncByDefault);
@@ -25,8 +25,8 @@ export class WebUserDataAutoSyncService extends UserDataAutoSyncService implemen
2525
protected setEnablement(enabled: boolean) {
2626
if (this.enabled !== enabled) {
2727
this.enabled = enabled;
28-
if (this.workbenchEnvironmentService.options?.settingsSyncEnablementHandler) {
29-
this.workbenchEnvironmentService.options.settingsSyncEnablementHandler(this.enabled);
28+
if (this.workbenchEnvironmentService.options?.settingsSyncOptions?.enablementHandler) {
29+
this.workbenchEnvironmentService.options.settingsSyncOptions.enablementHandler(this.enabled);
3030
}
3131
}
3232
}

src/vs/workbench/workbench.web.api.ts

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -235,12 +235,19 @@ interface IProductQualityChangeHandler {
235235
(newQuality: 'insider' | 'stable'): void;
236236
}
237237

238-
interface ISettingsSyncEnablementHandler {
238+
/**
239+
* Settings sync options
240+
*/
241+
interface ISettingsSyncOptions {
242+
/**
243+
* Is settings sync enabled
244+
*/
245+
readonly enabled: boolean;
239246

240247
/**
241248
* Handler is being called when the user changes Settings Sync enablement.
242249
*/
243-
(enablement: boolean): void;
250+
enablementHandler(enablement: boolean): void;
244251
}
245252

246253
interface IWorkbenchConstructionOptions {
@@ -318,19 +325,14 @@ interface IWorkbenchConstructionOptions {
318325
*
319326
* Syncs with the current authenticated user account (provided in [credentialsProvider](#credentialsProvider)) by default.
320327
*
321-
* @deprecated Instead use [enableSettingsSync](#enableSettingsSync) to enable/disable settings sync in the workbench.
328+
* @deprecated Instead use [settingsSyncOptions](#settingsSyncOptions) to enable/disable settings sync in the workbench.
322329
*/
323330
readonly enableSyncByDefault?: boolean;
324331

325332
/**
326-
* Enable or disable the Settings Sync
327-
*/
328-
readonly enableSettingsSync?: boolean;
329-
330-
/**
331-
* Support for Settings Sync enablement change
333+
* Settings sync options
332334
*/
333-
readonly settingsSyncEnablementHandler?: ISettingsSyncEnablementHandler;
335+
readonly settingsSyncOptions?: ISettingsSyncOptions;
334336

335337
/**
336338
* The credentials provider to store and retrieve secrets.

0 commit comments

Comments
 (0)