diff --git a/src/vs/base/browser/ui/selectBox/selectBoxCustom.ts b/src/vs/base/browser/ui/selectBox/selectBoxCustom.ts index 38d320fa647..83384d08480 100644 --- a/src/vs/base/browser/ui/selectBox/selectBoxCustom.ts +++ b/src/vs/base/browser/ui/selectBox/selectBoxCustom.ts @@ -148,7 +148,13 @@ export class SelectBoxList implements ISelectBoxDelegate, IVirtualDelegate { this.selectElement.add(this.createOption(option, i, disabled === i++)); }); - - // Mirror options in drop-down - // Populate select list for non-native select mode - if (this.selectList && !!this.options) { - let listEntries: ISelectOptionItem[]; - - listEntries = []; - if (disabled !== undefined) { - this.disabledOptionIndex = disabled; - } - for (let index = 0; index < this.options.length; index++) { - const element = this.options[index]; - let optionDisabled: boolean; - index === this.disabledOptionIndex ? optionDisabled = true : optionDisabled = false; - const optionDescription = this.detailsProvider ? this.detailsProvider(index) : { details: null, isMarkdown: false }; - - listEntries.push({ optionText: element, optionDisabled: optionDisabled, optionDescriptionText: optionDescription.details }); - } - - this.selectList.splice(0, this.selectList.length, listEntries); - } } if (selected !== undefined) { @@ -284,6 +269,27 @@ export class SelectBoxList implements ISelectBoxDelegate, IVirtualDelegate= 0 && index < this.options.length) { @@ -303,19 +309,10 @@ export class SelectBoxList implements ISelectBoxDelegate, IVirtualDelegate { details: string, isMarkdown: boolean }): void { this.detailsProvider = provider; - - - if (this.options) { - const currentOptions = this.options; - this.options = []; - this.setOptions(currentOptions, this.selected, this.disabledOptionIndex); - } - } public focus(): void { @@ -333,7 +330,6 @@ export class SelectBoxList implements ISelectBoxDelegate, IVirtualDelegate this.onListFocus(e)) ); + this.selectList.getHTMLElement().setAttribute('aria-label', this.selectBoxOptions.ariaLabel); this.selectList.getHTMLElement().setAttribute('aria-expanded', 'true'); + + this.styleList(); } // List methods @@ -855,6 +873,7 @@ export class SelectBoxList implements ISelectBoxDelegate, IVirtualDelegate