mirror of
https://github.com/Microsoft/vscode
synced 2024-09-13 13:46:13 +00:00
* Add indicator, fixes #148672 This PR adds a default override indicator to extension-contributed language-specific default setting overrides. * Remove indicator from language tag settings
This commit is contained in:
parent
0db3cee2a4
commit
a3243b282c
|
@ -18,8 +18,9 @@ import { FOLDER_SCOPES, WORKSPACE_SCOPES, REMOTE_MACHINE_SCOPES, LOCAL_MACHINE_S
|
|||
import { IJSONSchema } from 'vs/base/common/jsonSchema';
|
||||
import { Disposable } from 'vs/base/common/lifecycle';
|
||||
import { Emitter } from 'vs/base/common/event';
|
||||
import { ConfigurationScope, EditPresentationTypes } from 'vs/platform/configuration/common/configurationRegistry';
|
||||
import { ConfigurationScope, EditPresentationTypes, Extensions, IConfigurationRegistry } from 'vs/platform/configuration/common/configurationRegistry';
|
||||
import { ILanguageService } from 'vs/editor/common/languages/language';
|
||||
import { Registry } from 'vs/platform/registry/common/platform';
|
||||
|
||||
export const ONLINE_SERVICES_SETTING_TAG = 'usesOnlineServices';
|
||||
|
||||
|
@ -221,6 +222,12 @@ export class SettingsTreeSettingElement extends SettingsTreeElement {
|
|||
this.value = displayValue;
|
||||
this.scopeValue = isConfigured && overrideValues[targetSelector];
|
||||
this.defaultValue = overrideValues.defaultValue ?? inspected.defaultValue;
|
||||
|
||||
const registryValues = Registry.as<IConfigurationRegistry>(Extensions.Configuration).getConfigurationDefaultsOverrides();
|
||||
const overrideValueSource = registryValues.get(`[${languageSelector}]`)?.valuesSources?.get(this.setting.key);
|
||||
if (overrideValueSource) {
|
||||
this.setting.defaultValueSource = overrideValueSource;
|
||||
}
|
||||
} else {
|
||||
this.value = displayValue;
|
||||
this.scopeValue = isConfigured && inspected[targetSelector];
|
||||
|
|
|
@ -707,17 +707,19 @@ export class DefaultSettings extends Disposable {
|
|||
});
|
||||
}
|
||||
|
||||
const registeredConfigurationProp = prop as IRegisteredConfigurationPropertySchema;
|
||||
let defaultValueSource: string | IExtensionInfo | undefined;
|
||||
if (registeredConfigurationProp && registeredConfigurationProp.defaultValueSource) {
|
||||
defaultValueSource = registeredConfigurationProp.defaultValueSource;
|
||||
}
|
||||
|
||||
let isLanguageTagSetting = false;
|
||||
if (OVERRIDE_PROPERTY_REGEX.test(key)) {
|
||||
isLanguageTagSetting = true;
|
||||
}
|
||||
|
||||
let defaultValueSource: string | IExtensionInfo | undefined;
|
||||
if (!isLanguageTagSetting) {
|
||||
const registeredConfigurationProp = prop as IRegisteredConfigurationPropertySchema;
|
||||
if (registeredConfigurationProp && registeredConfigurationProp.defaultValueSource) {
|
||||
defaultValueSource = registeredConfigurationProp.defaultValueSource;
|
||||
}
|
||||
}
|
||||
|
||||
result.push({
|
||||
key,
|
||||
value,
|
||||
|
|
Loading…
Reference in a new issue