Microsoft/vscode

Command to open view container doesn't toggle properly

Open

#194,816 opened on 2023年10月4日

GitHub で見る
 (2 comments) (0 reactions) (1 assignee)TypeScript (10,221 forks)batch import
bughelp wantedwebview

Repository metrics

Stars
 (74,848 stars)
PR merge metrics
 (平均マージ 11h 43m) (30d で 1,000 merged PRs)

説明

Does this issue occur when all extensions are disabled?: Yes/No

  • VS Code Version: 1.82
  • OS Version: macOS 13.5

Steps to Reproduce:

  1. contribute a sidebar webview via an extension
  2. trigger workbench.view.extension.my-view-container. this opens the webview
  3. trigger workbench.view.extension.my-view-container again. this should toggle focus back to the editor, but doesn't

https://github.com/microsoft/vscode/blob/4a0e77678c0295b518151ae2d706436bab96ef4f/src/vs/workbench/browser/parts/views/viewsService.ts#L380-L384

I think it's the !layoutService.hasFocus(part) piece that's causing problems. as far as I can tell, document.activeElement is the webview's iframe, but the iframe is not actually a child of the sidebar container, so the hasFocus (I think) always returns false.

コントリビューターガイド