Microsoft/vscode
View on GitHub`editor.action.selectAll` gets triggered for webview editors, preventing them from overriding the keybinding behavior for ctrl/cmd+a
Open
#236,373 opened on Dec 17, 2024
bughelp wantedwebview
Repository metrics
- Stars
- (74,848 stars)
- PR merge metrics
- (Avg merge 11h 43m) (1,000 merged PRs in 30d)
Description
Does this issue occur when all extensions are disabled?: Yes/No
- VS Code Version: 1.96.0
- OS Version: macOS 14.7.2
Steps to Reproduce:
- Install Swimm.swimm
- Do the whole setup needed for the extension, login, create workspace, add repo.
- Open an editor and add a sample Mermaid diagram (
/mermaidand select some sample). - Hit
Ctrl/Cmd+A. - It will select the entire document due to
editor.action.selectAllfiring, instead of only the contents of the Mermaid diagram as we have coded in Swimm.
It seems like editor.action.selectAll is basically missing a when expression, which I think should be editorFocus. Adding that in the user keyboard shortcuts fixes the issue. And you can try that yourself using the same steps to reproduce.
I tried to contribute a keybinding via our extension to fix this, but adding:
{
"key": "ctrl+a",
"mac": "cmd+a",
"command": "editor.action.selectAll",
"when": "editorFocus" // Or "activeWebviewPanelId != 'swimm.editor'"
},
{
"key": "ctrl+a",
"mac": "cmd+a",
"command": "-editor.action.selectAll"
}
To our extension's package.json only resulted in disabling the select all shortcut entirely.