You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Change Method Signature: parameter Type field doesn't visibly render typed text (contenteditable text node escapes shadow DOM slot) #4417
Click the Type cell of a parameter and type a new type.
Result
The typed text does not appear in the Type field - the cell looks blank or unchanged.
Inspecting the DOM shows the text is captured, but as a direct text node on the <vscode-data-grid-cell contenteditable="true"> host, sitting outside the shadow root, which contains only:
Place the cursor on a method name, trigger the refactor, and choose Change Method Signature.
In the dialog, click the Type cell of an existing parameter to edit it.
Type any text (e.g. a new type name).
Result
The typed text never appears in the cell — it looks blank/unchanged while editing.
On clicking OK, the typed text is committed but appended to the original type rather than replacing it.
Root cause (confirmed via DOM inspection)
The edited text is captured as a bare text node placed directly on the contenteditable<vscode-data-grid-cell> host, outside its shadow root. The shadow root template is only:
so the text node is never assigned to a slotted/rendered position. It exists in the DOM but is never painted, which explains both the invisible-while-typing behavior and the append-on-commit behavior (new text node concatenated after the original type still on the host). Example captured DOM:
vscode-data-grid-cell comes from the deprecated/archived Webview UI Toolkit, so this likely needs the dialog migrated off that component rather than a point fix.
Happy to attach a short screen recording of the empty field + append-on-OK if that helps reproduction.
Confirmed: reproduces identically when launched with --disable-gpu, so this is not GPU/compositing-related — consistent with the contenteditable text node escaping the shadow-DOM slot rather than a rendering-layer problem.
Activity
benanavd commentedon May 30, 2026
Adding the environment details that were missing from the original report, plus a tightened reproduction:
Environment
Steps to reproduce (any project, any method)
Result
Root cause (confirmed via DOM inspection)
The edited text is captured as a bare text node placed directly on the
contenteditable<vscode-data-grid-cell>host, outside its shadow root. The shadow root template is only:so the text node is never assigned to a slotted/rendered position. It exists in the DOM but is never painted, which explains both the invisible-while-typing behavior and the append-on-commit behavior (new text node concatenated after the original type still on the host). Example captured DOM:
(
String= original type, rest = typed input.)vscode-data-grid-cellcomes from the deprecated/archived Webview UI Toolkit, so this likely needs the dialog migrated off that component rather than a point fix.Happy to attach a short screen recording of the empty field + append-on-OK if that helps reproduction.
benanavd commentedon May 30, 2026
Confirmed: reproduces identically when launched with --disable-gpu, so this is not GPU/compositing-related — consistent with the contenteditable text node escaping the shadow-DOM slot rather than a rendering-layer problem.
Fix Change Method Signature editable cells not rendering typed text (r…
wenytang-ms commentedon Jun 30, 2026
working on #4449