Add ignoreDirtyFile param

This commit is contained in:
Raymond Zhao 2021-11-23 16:25:34 -08:00
parent 4ab1e77fa7
commit a557a12ca9
No known key found for this signature in database
GPG key ID: D36E5FCE46B63B58
3 changed files with 7 additions and 7 deletions

View file

@ -118,7 +118,7 @@ export interface IConfigurationService {
updateValue(key: string, value: any): Promise<void>;
updateValue(key: string, value: any, overrides: IConfigurationOverrides | IConfigurationUpdateOverrides): Promise<void>;
updateValue(key: string, value: any, target: ConfigurationTarget): Promise<void>;
updateValue(key: string, value: any, overrides: IConfigurationOverrides | IConfigurationUpdateOverrides, target: ConfigurationTarget, donotNotifyError?: boolean): Promise<void>;
updateValue(key: string, value: any, overrides: IConfigurationOverrides | IConfigurationUpdateOverrides, target: ConfigurationTarget, donotNotifyError?: boolean, ignoreDirtyFile?: boolean): Promise<void>;
inspect<T>(key: string, overrides?: IConfigurationOverrides): IConfigurationValue<Readonly<T>>;

View file

@ -78,7 +78,7 @@ export class UserSettingsRenderer extends Disposable implements IPreferencesRend
updatePreference(key: string, value: any, source: IIndexedSetting): void {
const overrideIdentifiers = source.overrideOf ? overrideIdentifiersFromKey(source.overrideOf.key) : null;
const resource = this.preferencesModel.uri;
this.configurationService.updateValue(key, value, { overrideIdentifiers, resource }, this.preferencesModel.configurationTarget)
this.configurationService.updateValue(key, value, { overrideIdentifiers, resource }, this.preferencesModel.configurationTarget, undefined, true)
.then(() => this.onSettingUpdated(source));
}

View file

@ -307,8 +307,8 @@ export class WorkspaceService extends Disposable implements IWorkbenchConfigurat
updateValue(key: string, value: any): Promise<void>;
updateValue(key: string, value: any, overrides: IConfigurationOverrides | IConfigurationUpdateOverrides): Promise<void>;
updateValue(key: string, value: any, target: ConfigurationTarget): Promise<void>;
updateValue(key: string, value: any, overrides: IConfigurationOverrides | IConfigurationUpdateOverrides, target: ConfigurationTarget, donotNotifyError?: boolean): Promise<void>;
async updateValue(key: string, value: any, arg3?: any, arg4?: any, donotNotifyError?: any): Promise<void> {
updateValue(key: string, value: any, overrides: IConfigurationOverrides | IConfigurationUpdateOverrides, target: ConfigurationTarget, donotNotifyError?: boolean, ignoreDirtyFile?: boolean): Promise<void>;
async updateValue(key: string, value: any, arg3?: any, arg4?: any, donotNotifyError?: any, ignoreDirtyFile?: any): Promise<void> {
await this.cyclicDependency;
const overrides: IConfigurationUpdateOverrides | undefined = isConfigurationUpdateOverrides(arg3) ? arg3
: isConfigurationOverrides(arg3) ? { resource: arg3.resource, overrideIdentifiers: arg3.overrideIdentifier ? [arg3.overrideIdentifier] : undefined } : undefined;
@ -333,7 +333,7 @@ export class WorkspaceService extends Disposable implements IWorkbenchConfigurat
}
}
await Promises.settled(targets.map(target => this.writeConfigurationValue(key, value, target, overrides, donotNotifyError)));
await Promises.settled(targets.map(target => this.writeConfigurationValue(key, value, target, overrides, donotNotifyError, ignoreDirtyFile)));
}
async reloadConfiguration(target?: ConfigurationTarget | IWorkspaceFolder): Promise<void> {
@ -864,7 +864,7 @@ export class WorkspaceService extends Disposable implements IWorkbenchConfigurat
return validWorkspaceFolders;
}
private async writeConfigurationValue(key: string, value: any, target: ConfigurationTarget, overrides: IConfigurationUpdateOverrides | undefined, donotNotifyError: boolean): Promise<void> {
private async writeConfigurationValue(key: string, value: any, target: ConfigurationTarget, overrides: IConfigurationUpdateOverrides | undefined, donotNotifyError: boolean | undefined, ignoreDirtyFile: boolean | undefined): Promise<void> {
if (target === ConfigurationTarget.DEFAULT) {
throw new Error('Invalid configuration target');
}
@ -888,7 +888,7 @@ export class WorkspaceService extends Disposable implements IWorkbenchConfigurat
const writeOptions: ConfigurationEditingOptions = {
scopes: overrides,
donotNotifyError,
ignoreDirtyFile: true
ignoreDirtyFile
};
await this.configurationEditingService.writeConfiguration(editableConfigurationTarget, { key, value }, writeOptions);
switch (editableConfigurationTarget) {