From 302af5ff6307a2c5d18ef13cda78fa8de7f1fe7c Mon Sep 17 00:00:00 2001 From: Raymond Zhao Date: Thu, 29 Jul 2021 14:06:19 -0700 Subject: [PATCH] Fix #129581 --- .../preferences/browser/settingsWidgets.ts | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/vs/workbench/contrib/preferences/browser/settingsWidgets.ts b/src/vs/workbench/contrib/preferences/browser/settingsWidgets.ts index e59bbccf82d..5d8fa7582d8 100644 --- a/src/vs/workbench/contrib/preferences/browser/settingsWidgets.ts +++ b/src/vs/workbench/contrib/preferences/browser/settingsWidgets.ts @@ -1201,17 +1201,17 @@ export class ObjectSettingDropdownWidget extends AbstractListSettingWidget update( - originalKeyOrValue.type === 'boolean' - ? { ...originalKeyOrValue, data: selected === 'true' ? true : false } - : { ...originalKeyOrValue, data: selected }, + changedKeyOrValue.type === 'boolean' + ? { ...changedKeyOrValue, data: selected === 'true' ? true : false } + : { ...changedKeyOrValue, data: selected }, ) ) ); @@ -1227,10 +1227,13 @@ export class ObjectSettingDropdownWidget extends AbstractListSettingWidget keyOrValue.data === option.value); if (selected === -1 && keyOrValue.options.length) { update( - originalKeyOrValue.type === 'boolean' - ? { ...originalKeyOrValue, data: true } - : { ...originalKeyOrValue, data: keyOrValue.options[0].value } + changedKeyOrValue.type === 'boolean' + ? { ...changedKeyOrValue, data: true } + : { ...changedKeyOrValue, data: keyOrValue.options[0].value } ); + } else if (changedKeyOrValue.type === 'boolean') { + // https://github.com/microsoft/vscode/issues/129581 + update({ ...changedKeyOrValue, data: keyOrValue.data === 'true' }); } return { widget: selectBox, element: wrapper };