diff --git a/src/cascadia/LocalTests_SettingsModel/SerializationTests.cpp b/src/cascadia/LocalTests_SettingsModel/SerializationTests.cpp index 60491de9c..ddad893fb 100644 --- a/src/cascadia/LocalTests_SettingsModel/SerializationTests.cpp +++ b/src/cascadia/LocalTests_SettingsModel/SerializationTests.cpp @@ -226,6 +226,7 @@ namespace SettingsModelLocalTests const std::string settingsString{ R"({ "$schema": "https://aka.ms/terminal-profiles-schema", "defaultProfile": "{61c54bbd-1111-5271-96e7-009a87ff44bf}", + "disabledProfileSources": [ "Windows.Terminal.Wsl" ], "profiles": { "defaults": { diff --git a/src/cascadia/TerminalSettingsModel/CascadiaSettingsSerialization.cpp b/src/cascadia/TerminalSettingsModel/CascadiaSettingsSerialization.cpp index 387e87549..3cbb44190 100644 --- a/src/cascadia/TerminalSettingsModel/CascadiaSettingsSerialization.cpp +++ b/src/cascadia/TerminalSettingsModel/CascadiaSettingsSerialization.cpp @@ -1078,9 +1078,13 @@ void CascadiaSettings::WriteSettingsToDisk() const Json::Value CascadiaSettings::ToJson() const { // top-level json object - // directly inject "globals" and "$schema" into here + // directly inject "globals", "$schema", and "disabledProfileSources" into here Json::Value json{ _globals->ToJson() }; JsonUtils::SetValueForKey(json, SchemaKey, JsonKey(SchemaValue)); + if (_userSettings.isMember(JsonKey(DisabledProfileSourcesKey))) + { + json[JsonKey(DisabledProfileSourcesKey)] = _userSettings[JsonKey(DisabledProfileSourcesKey)]; + } // "profiles" will always be serialized as an object Json::Value profiles{ Json::ValueType::objectValue };