diff --git a/src/vscode-radio-group/vscode-radio-group.ts b/src/vscode-radio-group/vscode-radio-group.ts index 3cb39655d..50bb2f01b 100644 --- a/src/vscode-radio-group/vscode-radio-group.ts +++ b/src/vscode-radio-group/vscode-radio-group.ts @@ -114,6 +114,8 @@ export class VscodeRadioGroup extends VscElement { if (listenedKeys.includes(key)) { ev.preventDefault(); + } else { + return; } if (key === 'ArrowRight' || key === 'ArrowDown') { @@ -123,6 +125,13 @@ export class VscodeRadioGroup extends VscElement { if (key === 'ArrowLeft' || key === 'ArrowUp') { this._checkPrev(); } + + const checkedRadio = this._radios.find((r) => r.checked); + if (checkedRadio) { + checkedRadio.dispatchEvent( + new Event('change', {bubbles: true, composed: true}) + ); + } }; private _handleChange(ev: CustomEvent) {