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
Bound nested webview context-menu ancestry and handoff #529
Unchanged Code OSS handles a nested webview context menu by rejecting an already-cancelled event, preventing its default, walking event.target.closest('[data-vscode-context]') and parent elements, merging child-over-parent JSON context, toggling the visibility class, and posting child-local coordinates. WebScene stores child documents below iframe owners in one retained layout tree, so unbounded DOM ancestry can leak the outer iframe/host document into closest(), event propagation, and composedPath().
Focused implementation
Bound Element.closest() at the element's browsing-context cascade root.
Bound native event ancestry and composedPath() at the dispatch realm's document root.
Completed by #530 and merged to WebScene main as 488b9790e1b14c83f06cdcbfdd220cd53f318d79. Nested closest(), event ancestry, and composedPath() now stop at the child document while preserving Code OSS context merge, cancellation, visibility, and child-local coordinates. Only git diff --check ran; parent #268 owns remaining anchor/download/drag/accessibility and product evidence.
Parent: #268. Webview epic: #264. Release epic: #227.
Proven gap
Unchanged Code OSS handles a nested webview context menu by rejecting an already-cancelled event, preventing its default, walking
event.target.closest('[data-vscode-context]')and parent elements, merging child-over-parent JSON context, toggling the visibility class, and posting child-local coordinates. WebScene stores child documents below iframe owners in one retained layout tree, so unbounded DOM ancestry can leak the outer iframe/host document intoclosest(), event propagation, andcomposedPath().Focused implementation
Element.closest()at the element's browsing-context cascade root.composedPath()at the dispatch realm's document root.data-vscode-contextcontract, prior cancellation, handler cancellation, visibility-class lifecycle, and child-local coordinates delivered by Project host pointer coordinates into nested webview viewports #522.Acceptance and deferred gates
9f2d4830728a409ee49449f45eb33bd5d54dabca.git diff --checkpassed.Execution is deferred under the current implementation-first direction.