Question: Issue Type: <bBug</bI do not see the error or success icons for the gutter icon on my shell integration enabled terminals; instead it is always the empty circle. The integration appears to otherwise be working (the Go to Recent Directory and Run Recent Command commands are working as expected). I presume that somehow, the integration is not picking up the result of the operation being run. For reference, I am using but otherwise don't believe I have anything special in my Bash configuration that would affect this. VS Code version: Code 1.68.0 (Universal) (, 2022-06-08T11:44:00.250Z) OS version: Darwin x64 21.5.0 Restricted Mode: No <details<summarySystem Info</summary </details<details<summaryExtensions (76)</summaryExtensionVersion ------ Bookmarks13.3.0 project-manager12.6.0 vscode-sqlite0.14.1 atlascode2.10.12 github-markdown-preview0.3.0 jsdoc-markdown-highlighting0.0.1 markdown-checkbox0.3.2 markdown-emoji0.2.1 markdown-footnotes0.0.7 markdown-mermaid1.14.0 markdown-preview-github-styles1.0.1 markdown-yaml-preamble0.1.0 gitignore0.7.0 vscode-markdownlint0.47.0 vscode-eslint2.2.2 xml2.5.1 gitlens12.0.7 EditorConfig0.16.4 graphviz-preview1.5.0 flow-for-vscode2.1.0 vscode-mysql0.4.1 copilot1.28.6134 remotehub0.34.0 vscode-pull-request-github0.44.0 go0.33.1 todo-tree0.0.215 triggertaskonsave0.2.17 vscode-guid1.4.20 path-autocomplete1.19.1 tablegenerator1.0.4 plantuml2.17.2 svg1.4.18 docthis0.7.1 vscode-position1.1.2 yarn-lock-syntax0.1.3 Kotlin1.7.1 vscode-language-babel0.0.36 pull-request-quantifier0.1.2 extension-manifest-editor0.1.5 csharp1.25.0 dotnet-interactive-vscode1.0. network-edge-devtools1.0.0 data-workspace-vscode0.2.0 mssql1.14.2 sql-bindings-vscode0.1.0 sql-database-projects-vscode0.16.2 vscode-postgresql0.3.0 python2022.8.0 vscode-pylance2022.6.10 jupyter2022.5. jupyter-keymap1.0.0 jupyter-renderers1.0.8 hexeditor1.9.6 powershell2022.5.1 remote-repositories0.12.0 vscode-js-profile-flame1.0.2 vsliveshare1.0.5615 vsliveshare-pack0.4.0 resourcemonitor1.0.7 vscode-commons0.0.6 vscode-yaml1.8.0 sass-indented1.5.1 gitconfig2.0.1 mdx0.1.0 codevalet-vscode1.5.0 vcl0.1.2 msbuild-project-tools0.4.3 jest-snapshot-language-support1.1.1 intellicode-api-usage-examples0.1.1 vscodeintellicode1.2.21 vscode-icons11.12.0 quokka-vscode1.0.478 wallaby-vscode1.0.338 jinja0.0.8 ReactSnippets2.4.0 vscode-proto30.5.5 (2 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details

builtin return fi <ins> # Disable shell integration if HISTCONTROL is set to erase duplicate entries as the exit code # reporting relies on the duplicates existing if [[ "$HISTCONTROL" =~ .*erasedups.* ]]; then builtin unset VSCODE_SHELL_INTEGRATION builtin return fi </ins> if [ -z "$VSCODE_SHELL_INTEGRATION" ]; then builtin return fi


Question:
I'm always returning to projects and see the terminal messages filled with the same repeated message and would like to clean them up and not be shown as I see no value in them for myself. <img width="630" alt="CleanShot 2022-06-14 at 09 10 55 src="https://user-"<img width="622" src="https://user-"
This bugs me too, tracks only showing it once in this case by avoiding saving new parts if there is no terminal input, similar to how it only saves and restored in the first place if the terminal has been interacted with. I don't think we should be hiding the message all together as it's misleading what is part of this shell's session, command decorations would be broken for the ones that aren't part of this session (look like a bug) and it would show up like this which is a bit weird: !
Would it be possible to have an option to hide the previous session altogether and just show a new session? That would be a simple approach that would work for me personally, similar to <img width="566" alt="CleanShot 2022-06-14 at 09 40 18 src="https://user-"
you can just create a new terminal altogether by setting to false
thank you! I was searching for a setting and didn't ever find that one, kept looking for "terminal history" and "terminal clear"
the name is definitely not discoverable. I wonder if we should change it
or can we add any meta data or keywords to settings that will be picked up by search? cc
I guess?
Oh that doesn't work, do we have a way to do search keywords?
you actually want , the setting will disable process reconnect across window reloads.

] }, [TerminalSettingId.EnablePersistentSessions]: { <del> description: localize('terminal.integrated.enablePersistentSessions', "Persist terminal sessions for the workspace across window reloads."), </del> <ins> description: localize('terminal.integrated.enablePersistentSessions', "Persist terminal sessions/history for the workspace across window reloads."), </ins> type: 'boolean', default: true }, [TerminalSettingId.PersistentSessionReviveProcess]: { <del> markdownDescription: localize('terminal.integrated.persistentSessionReviveProcess', "When the terminal process must be shutdown (eg. on window or application close), this determines when the previous terminal session contents should be restored and processes be recreated when the workspace is next opened.nnCaveats:nn- Restoring of the process current working directory depends on whether it is supported by the shell.n- Time to persist the session during shutdown is limited, so it may be aborted when using high-latency remote connections."), </del> <ins> markdownDescription: localize('terminal.integrated.persistentSessionReviveProcess', "When the terminal process must be shutdown (eg. on window or application close), this determines when the previous terminal session contents/history should be restored and processes be recreated when the workspace is next opened.nnCaveats:nn- Restoring of the process current working directory depends on whether it is supported by the shell.n- Time to persist the session during shutdown is limited, so it may be aborted when using high-latency remote connections."), </ins> type: 'string', enum: ['onExit', 'onExitAndWindowClose', 'never'], markdownEnumDescriptions: [


Question:
Issue Type: <bPerformance Issue</bTerminals doesn't seem to free all GPU memory when closing them, making alt-tabbing from another application to vscode slower over time, there are other tickets around vscode freezing when alt-tabbing back to it and this seems to be one of the reasons as Windows needs to load/unload 1GB+ of GPU memory when alt-tabbing occurs. One way of reproducing this: 20 integrated terminals the terminals again (now only welcome screen open) Windows task manager -Performance tab something covers vscode completely (i.e. task manager is maximized) the GPU memory usage is 500MB+ lower than if vscode is visible (i.e. task manager is not maximized so it doesn't cover vscode completely, forcing Windows to keep vscode GPU memory active). scales linearly if you open more terminals, i.e. 40 terminals keeps 1GB+ of GPU memory even when they are closed I can reproduce it on the insiders build as well, so Electron 18 doesn't seem to solve this issue. vscode visible (2 GB GPU memory usage at the bottom of the screenshot): ! vscode still open but behind other windows (1 GB GPU memory usage at the bottom of the screenshot): ! VS Code version: Code 1.68.1 (, 2022-06-14T12:48:58.283Z) OS version: WindowsNT x64 10.0. Restricted Mode: No Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<!-- generated by issue reporter --
I tried to repro with stable, but I wasn't able to. What are the steps for verification?
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
Hello, I'm waiting for these to cleanup the terminals properly: But as I am the author of those PRs I don't think additional verification is needed from me once they get merged.
fyi I think I noticed a few bugs about alt-tabbing being slow

"vscode-proxy-agent": "^0.12.0", "vscode-regexpp": "^3.1.0", "vscode-textmate": "7.0.1", <del> "xterm": "4.19.0", "xterm-addon-search": "0.9.0", "xterm-addon-serialize": "0.7.0", </del> <ins> "xterm": "4.20.0-beta.5", "xterm-addon-search": "0.10.0-beta.1", "xterm-addon-serialize": "0.8.0-beta.1", </ins> "xterm-addon-unicode11": "0.4.0-beta.3", <del> "xterm-addon-webgl": "0.12.0", "xterm-headless": "4.19.0", </del> <ins> "xterm-addon-webgl": "0.13.0-beta.2", "xterm-headless": "4.20.0-beta.5", </ins> "yauzl": "^2.9.2", "yazl": "^2.4.3" },


Question:
Issue Type: <bPerformance Issue</bTerminals doesn't seem to free all GPU memory when closing them, making alt-tabbing from another application to vscode slower over time, there are other tickets around vscode freezing when alt-tabbing back to it and this seems to be one of the reasons as Windows needs to load/unload 1GB+ of GPU memory when alt-tabbing occurs. One way of reproducing this: 20 integrated terminals the terminals again (now only welcome screen open) Windows task manager -Performance tab something covers vscode completely (i.e. task manager is maximized) the GPU memory usage is 500MB+ lower than if vscode is visible (i.e. task manager is not maximized so it doesn't cover vscode completely, forcing Windows to keep vscode GPU memory active). scales linearly if you open more terminals, i.e. 40 terminals keeps 1GB+ of GPU memory even when they are closed I can reproduce it on the insiders build as well, so Electron 18 doesn't seem to solve this issue. vscode visible (2 GB GPU memory usage at the bottom of the screenshot): ! vscode still open but behind other windows (1 GB GPU memory usage at the bottom of the screenshot): ! VS Code version: Code 1.68.1 (, 2022-06-14T12:48:58.283Z) OS version: WindowsNT x64 10.0. Restricted Mode: No Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<!-- generated by issue reporter --
I tried to repro with stable, but I wasn't able to. What are the steps for verification?
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
Hello, I'm waiting for these to cleanup the terminals properly: But as I am the author of those PRs I don't think additional verification is needed from me once they get merged.
fyi I think I noticed a few bugs about alt-tabbing being slow

"tas-client-umd": "0.1.6", "vscode-oniguruma": "1.6.1", "vscode-textmate": "7.0.1", <del> "xterm": "4.19.0", "xterm-addon-search": "0.9.0", </del> <ins> "xterm": "4.20.0-beta.5", "xterm-addon-search": "0.10.0-beta.1", </ins> "xterm-addon-unicode11": "0.4.0-beta.3", <del> "xterm-addon-webgl": "0.12.0" </del> <ins> "xterm-addon-webgl": "0.13.0-beta.2" </ins> } }


Question:
Issue Type: <bPerformance Issue</bTerminals doesn't seem to free all GPU memory when closing them, making alt-tabbing from another application to vscode slower over time, there are other tickets around vscode freezing when alt-tabbing back to it and this seems to be one of the reasons as Windows needs to load/unload 1GB+ of GPU memory when alt-tabbing occurs. One way of reproducing this: 20 integrated terminals the terminals again (now only welcome screen open) Windows task manager -Performance tab something covers vscode completely (i.e. task manager is maximized) the GPU memory usage is 500MB+ lower than if vscode is visible (i.e. task manager is not maximized so it doesn't cover vscode completely, forcing Windows to keep vscode GPU memory active). scales linearly if you open more terminals, i.e. 40 terminals keeps 1GB+ of GPU memory even when they are closed I can reproduce it on the insiders build as well, so Electron 18 doesn't seem to solve this issue. vscode visible (2 GB GPU memory usage at the bottom of the screenshot): ! vscode still open but behind other windows (1 GB GPU memory usage at the bottom of the screenshot): ! VS Code version: Code 1.68.1 (, 2022-06-14T12:48:58.283Z) OS version: WindowsNT x64 10.0. Restricted Mode: No Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<!-- generated by issue reporter --
I tried to repro with stable, but I wasn't able to. What are the steps for verification?
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
Hello, I'm waiting for these to cleanup the terminals properly: But as I am the author of those PRs I don't think additional verification is needed from me once they get merged.
fyi I think I noticed a few bugs about alt-tabbing being slow

resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-7.0.1.tgz#8118a32b02735dccd14f893b495fa5389ad7de79" integrity sha512-zQ5U/nuXAAMsh691FtV0wPz89nSkHbs+IQV8FDk+wew9BlSDhf4UmWGlWJfTR2Ti6xZv87Tj5fENzKf6Qk7aLw== <del> xterm-addon-search@0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.9.0.tgz#95278ebb818cfcf882209ae75be96e0bea5d52a5" integrity sha512-aoolI8YuHvdGw+Qjg8g2M4kst0v86GtB7WeBm4F0jNXA005/6QbWWy9eCsvnIDLJOFI5JSSrZnD6CaOkvBQYPA== </del> <ins> xterm-addon-search@0.10.0-beta.1: version "0.10.0-beta.1" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.10.0-beta.1.tgz#ee15b954b6f78585cd3a212ec662018263470266" integrity sha512-rp68SwoYHIQ1SY4MoILNK+0HcN8OR4hzczHOYCFdeKYZFvH/16vgqg0OJT6t6WlL1cq971rLsEDXT1SKcpoJqA== </ins> xterm-addon-unicode11@0.4.0-beta.3: version "0.4.0-beta.3" resolved "https://registry.yarnpkg.com/xterm-addon-unicode11/-/xterm-addon-unicode11-0.4.0-beta.3.tgz#f350184155fafd5ad0d6fbf31d13e6ca7dea1efa" integrity sha512-FryZAVwbUjKTmwXnm1trch/2XO60F5JsDvOkZhzobV1hm10sFLVuZpFyHXiUx7TFeeFsvNP+S77LAtWoeT5z+Q== <del> xterm-addon-webgl@0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.12.0.tgz#2fba8d31890a122adafa1c2fb945482e2ae12973" integrity sha512-3P5ihdjPnxH6Wrvqjki9UD+duoVrp1fvnO/pSpXP2F1L2GwY6TDNExgj8Yg141vMCNgQbcVqmsTLYEYZxjY92A== </del> <ins> xterm-addon-webgl@0.13.0-beta.2: version "0.13.0-beta.2" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.13.0-beta.2.tgz#f58a7a3641ad7c8ac82dd24cfb0165656ed9ac1c" integrity sha512-98tX0BkpD402RoCO6SyikUXpzCn9/OQhlXsRmM/kRFCxMWWofStWTXzCPhN0MjIx2IdGueDjCmnShhidwihErg== </ins> <del> xterm@4.19.0: version "4.19.0" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.19.0.tgz#c0f9d09cd61de1d658f43ca75f992197add9ef6d" integrity sha512-c3Cp4eOVsYY5Q839dR5IejghRPpxciGmLWWaP9g+ppfMeBChMeLa1DCA+pmX/jyDZ+zxFOmlJL/82qVdayVoGQ== </del> <ins> xterm@4.20.0-beta.5: version "4.20.0-beta.5" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.20.0-beta.5.tgz#d707b0dcb477a554135fb767b24003fced079866" integrity sha512-KBWfk9UPBKRy662DVGGTZEcW1becEjYvlyWbn2hLj9h2gy6Q4EEEEbggJh8I7SGwdFizl+apHQGhEOZmFCA70w== </ins>


Question:
Issue Type: <bPerformance Issue</bTerminals doesn't seem to free all GPU memory when closing them, making alt-tabbing from another application to vscode slower over time, there are other tickets around vscode freezing when alt-tabbing back to it and this seems to be one of the reasons as Windows needs to load/unload 1GB+ of GPU memory when alt-tabbing occurs. One way of reproducing this: 20 integrated terminals the terminals again (now only welcome screen open) Windows task manager -Performance tab something covers vscode completely (i.e. task manager is maximized) the GPU memory usage is 500MB+ lower than if vscode is visible (i.e. task manager is not maximized so it doesn't cover vscode completely, forcing Windows to keep vscode GPU memory active). scales linearly if you open more terminals, i.e. 40 terminals keeps 1GB+ of GPU memory even when they are closed I can reproduce it on the insiders build as well, so Electron 18 doesn't seem to solve this issue. vscode visible (2 GB GPU memory usage at the bottom of the screenshot): ! vscode still open but behind other windows (1 GB GPU memory usage at the bottom of the screenshot): ! VS Code version: Code 1.68.1 (, 2022-06-14T12:48:58.283Z) OS version: WindowsNT x64 10.0. Restricted Mode: No Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<!-- generated by issue reporter --
I tried to repro with stable, but I wasn't able to. What are the steps for verification?
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
Hello, I'm waiting for these to cleanup the terminals properly: But as I am the author of those PRs I don't think additional verification is needed from me once they get merged.
fyi I think I noticed a few bugs about alt-tabbing being slow

resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= <del> xterm-addon-search@0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.9.0.tgz#95278ebb818cfcf882209ae75be96e0bea5d52a5" integrity sha512-aoolI8YuHvdGw+Qjg8g2M4kst0v86GtB7WeBm4F0jNXA005/6QbWWy9eCsvnIDLJOFI5JSSrZnD6CaOkvBQYPA== </del> <ins> xterm-addon-search@0.10.0-beta.1: version "0.10.0-beta.1" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.10.0-beta.1.tgz#ee15b954b6f78585cd3a212ec662018263470266" integrity sha512-rp68SwoYHIQ1SY4MoILNK+0HcN8OR4hzczHOYCFdeKYZFvH/16vgqg0OJT6t6WlL1cq971rLsEDXT1SKcpoJqA== </ins> <del> xterm-addon-serialize@0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.7.0.tgz#cc7ef78972c8425b81dd6ae0a76824ce033d1e5f" integrity sha512-ZfZ4Zj4uTEBFnUA0exipDGZ14jfiWLCov7gIt2OwIjQEz2ey8ic5kL/cxYz5antNz8/hTSA2qZcyA6VyyQASOQ== </del> <ins> xterm-addon-serialize@0.8.0-beta.1: version "0.8.0-beta.1" resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.8.0-beta.1.tgz#d1496da20006afa81874a717e3a0f75fc71dc87a" integrity sha512-CfS0do/GM8e3k0+3O6GNDi4Gbhhkx1ne1nnnkILWQaAmlArLySEL8f0uPR0W72AtlLEFwVF8kABbVTjKc5XUcA== </ins> xterm-addon-unicode11@0.4.0-beta.3: version "0.4.0-beta.3" resolved "https://registry.yarnpkg.com/xterm-addon-unicode11/-/xterm-addon-unicode11-0.4.0-beta.3.tgz#f350184155fafd5ad0d6fbf31d13e6ca7dea1efa" integrity sha512-FryZAVwbUjKTmwXnm1trch/2XO60F5JsDvOkZhzobV1hm10sFLVuZpFyHXiUx7TFeeFsvNP+S77LAtWoeT5z+Q== <del> xterm-addon-webgl@0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.12.0.tgz#2fba8d31890a122adafa1c2fb945482e2ae12973" integrity sha512-3P5ihdjPnxH6Wrvqjki9UD+duoVrp1fvnO/pSpXP2F1L2GwY6TDNExgj8Yg141vMCNgQbcVqmsTLYEYZxjY92A== xterm-headless@4.19.0: version "4.19.0" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-4.19.0.tgz#965eb293fe6258adff5888f24e2a0b778b765e17" integrity sha512-rYP8I1AGwaztpCoWe9mwxNqmfz7zZCjbzw61QChFqPeiDERjW9CDnqyGhSElvicHAlf47dvA+p4qOuKltxWEkg== xterm@4.19.0: version "4.19.0" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.19.0.tgz#c0f9d09cd61de1d658f43ca75f992197add9ef6d" integrity sha512-c3Cp4eOVsYY5Q839dR5IejghRPpxciGmLWWaP9g+ppfMeBChMeLa1DCA+pmX/jyDZ+zxFOmlJL/82qVdayVoGQ== </del> <ins> xterm-addon-webgl@0.13.0-beta.2: version "0.13.0-beta.2" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.13.0-beta.2.tgz#f58a7a3641ad7c8ac82dd24cfb0165656ed9ac1c" integrity sha512-98tX0BkpD402RoCO6SyikUXpzCn9/OQhlXsRmM/kRFCxMWWofStWTXzCPhN0MjIx2IdGueDjCmnShhidwihErg== xterm-headless@4.20.0-beta.5: version "4.20.0-beta.5" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-4.20.0-beta.5.tgz#edcff27eb6437d158e6aea2ed7658e783bee5641" integrity sha512-8SnVUsuNUrQ5P0XU/9Iau3uK7Tf8q/p0KHHwkwJXVxZDIlaDH9XKSs91U9BjJJE3sJgRxH4NSiDYR3vFLSFpxw== xterm@4.20.0-beta.5: version "4.20.0-beta.5" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.20.0-beta.5.tgz#d707b0dcb477a554135fb767b24003fced079866" integrity sha512-KBWfk9UPBKRy662DVGGTZEcW1becEjYvlyWbn2hLj9h2gy6Q4EEEEbggJh8I7SGwdFizl+apHQGhEOZmFCA70w== </ins> yallist@^4.0.0: version "4.0.0"


Question:
Issue Type: <bPerformance Issue</bTerminals doesn't seem to free all GPU memory when closing them, making alt-tabbing from another application to vscode slower over time, there are other tickets around vscode freezing when alt-tabbing back to it and this seems to be one of the reasons as Windows needs to load/unload 1GB+ of GPU memory when alt-tabbing occurs. One way of reproducing this: 20 integrated terminals the terminals again (now only welcome screen open) Windows task manager -Performance tab something covers vscode completely (i.e. task manager is maximized) the GPU memory usage is 500MB+ lower than if vscode is visible (i.e. task manager is not maximized so it doesn't cover vscode completely, forcing Windows to keep vscode GPU memory active). scales linearly if you open more terminals, i.e. 40 terminals keeps 1GB+ of GPU memory even when they are closed I can reproduce it on the insiders build as well, so Electron 18 doesn't seem to solve this issue. vscode visible (2 GB GPU memory usage at the bottom of the screenshot): ! vscode still open but behind other windows (1 GB GPU memory usage at the bottom of the screenshot): ! VS Code version: Code 1.68.1 (, 2022-06-14T12:48:58.283Z) OS version: WindowsNT x64 10.0. Restricted Mode: No Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<!-- generated by issue reporter --
I tried to repro with stable, but I wasn't able to. What are the steps for verification?
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
Hello, I'm waiting for these to cleanup the terminals properly: But as I am the author of those PRs I don't think additional verification is needed from me once they get merged.
fyi I think I noticed a few bugs about alt-tabbing being slow

dependencies: object-keys "~0.4.0" <del> xterm-addon-search@0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.9.0.tgz#95278ebb818cfcf882209ae75be96e0bea5d52a5" integrity sha512-aoolI8YuHvdGw+Qjg8g2M4kst0v86GtB7WeBm4F0jNXA005/6QbWWy9eCsvnIDLJOFI5JSSrZnD6CaOkvBQYPA== </del> <ins> xterm-addon-search@0.10.0-beta.1: version "0.10.0-beta.1" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.10.0-beta.1.tgz#ee15b954b6f78585cd3a212ec662018263470266" integrity sha512-rp68SwoYHIQ1SY4MoILNK+0HcN8OR4hzczHOYCFdeKYZFvH/16vgqg0OJT6t6WlL1cq971rLsEDXT1SKcpoJqA== </ins> <del> xterm-addon-serialize@0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.7.0.tgz#cc7ef78972c8425b81dd6ae0a76824ce033d1e5f" integrity sha512-ZfZ4Zj4uTEBFnUA0exipDGZ14jfiWLCov7gIt2OwIjQEz2ey8ic5kL/cxYz5antNz8/hTSA2qZcyA6VyyQASOQ== </del> <ins> xterm-addon-serialize@0.8.0-beta.1: version "0.8.0-beta.1" resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.8.0-beta.1.tgz#d1496da20006afa81874a717e3a0f75fc71dc87a" integrity sha512-CfS0do/GM8e3k0+3O6GNDi4Gbhhkx1ne1nnnkILWQaAmlArLySEL8f0uPR0W72AtlLEFwVF8kABbVTjKc5XUcA== </ins> xterm-addon-unicode11@0.4.0-beta.3: version "0.4.0-beta.3" resolved "https://registry.yarnpkg.com/xterm-addon-unicode11/-/xterm-addon-unicode11-0.4.0-beta.3.tgz#f350184155fafd5ad0d6fbf31d13e6ca7dea1efa" integrity sha512-FryZAVwbUjKTmwXnm1trch/2XO60F5JsDvOkZhzobV1hm10sFLVuZpFyHXiUx7TFeeFsvNP+S77LAtWoeT5z+Q== <del> xterm-addon-webgl@0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.12.0.tgz#2fba8d31890a122adafa1c2fb945482e2ae12973" integrity sha512-3P5ihdjPnxH6Wrvqjki9UD+duoVrp1fvnO/pSpXP2F1L2GwY6TDNExgj8Yg141vMCNgQbcVqmsTLYEYZxjY92A== xterm-headless@4.19.0: version "4.19.0" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-4.19.0.tgz#965eb293fe6258adff5888f24e2a0b778b765e17" integrity sha512-rYP8I1AGwaztpCoWe9mwxNqmfz7zZCjbzw61QChFqPeiDERjW9CDnqyGhSElvicHAlf47dvA+p4qOuKltxWEkg== xterm@4.19.0: version "4.19.0" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.19.0.tgz#c0f9d09cd61de1d658f43ca75f992197add9ef6d" integrity sha512-c3Cp4eOVsYY5Q839dR5IejghRPpxciGmLWWaP9g+ppfMeBChMeLa1DCA+pmX/jyDZ+zxFOmlJL/82qVdayVoGQ== </del> <ins> xterm-addon-webgl@0.13.0-beta.2: version "0.13.0-beta.2" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.13.0-beta.2.tgz#f58a7a3641ad7c8ac82dd24cfb0165656ed9ac1c" integrity sha512-98tX0BkpD402RoCO6SyikUXpzCn9/OQhlXsRmM/kRFCxMWWofStWTXzCPhN0MjIx2IdGueDjCmnShhidwihErg== xterm-headless@4.20.0-beta.5: version "4.20.0-beta.5" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-4.20.0-beta.5.tgz#edcff27eb6437d158e6aea2ed7658e783bee5641" integrity sha512-8SnVUsuNUrQ5P0XU/9Iau3uK7Tf8q/p0KHHwkwJXVxZDIlaDH9XKSs91U9BjJJE3sJgRxH4NSiDYR3vFLSFpxw== xterm@4.20.0-beta.5: version "4.20.0-beta.5" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.20.0-beta.5.tgz#d707b0dcb477a554135fb767b24003fced079866" integrity sha512-KBWfk9UPBKRy662DVGGTZEcW1becEjYvlyWbn2hLj9h2gy6Q4EEEEbggJh8I7SGwdFizl+apHQGhEOZmFCA70w== </ins> y18n@^3.2.1: version "3.2.2"


Question:
Previously the terminal could be resized fairly quickly, to see what's going on and then hide it again (with 2 lines still visible). With the new update however, it can only be resized by one line per keystroke. So in order to use the terminal adequately, there are 10 - 20 keystrokes required, which is unacceptable (in my opinion). It would be great, if you could specify "args" for the command which control how many lines the terminal is resized by. Similar like the cursorMove command: Thanks for consideration, Floyd Haremsa <!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. -→
I'm not sure what you mean. changing the height of the panel? https://user-
Yes, changing the height of the panel, but with keyboard shortcuts. Previously it worked pretty well (changing the height by lets say 10 lines, I don't quite remember). But now you can only resize by one line at a time (per hitting the keyboard shortcut), like this: https://user- and that is just way too slow and inefficient. This way I'm forced to resize it with the mouse (which is also too slow) or having it open all the time, which is bad on small screen sizes. Sorry for not having it clarified enough earlier.
we think this is related to the increase view size change - thoughts ?
This is indeed caused by The new behavior is actually the intended behavior, but the terminal is in full control if it wants to have a number-of-lines-based resize setting.
I am also affected by this and it is crazy to work mouseless, resizing terminal is not viable with keyboard like this. Any work around?
how many rows would you expect it to change?
3-4 would be nice
I'd say about 7 - 10 lines at a time. But if I can control it my self, that's even better.
Also being affected by this. The terminal now resizes by 1 line at a time. Previously it was 9 lines (3072×1920 on 16" with terminal.integrated.fontSize = 13) Something in the range of 4-8 lines might be a decent compromise considering the original request that led to the change ()
I think the best approach would be to just have a default of let's say 4 lines, but also a setting that controls this, and/or as I mentioned, arguments to the command for being able to map multiple resize settings to different shortcuts:
I'd rather not add a setting for this as it's pretty obscure and would see hardly any usage. An additional complication here is I'd like to eventually remove the terminal resize commands since we now have the increase/decrease view size commands which weren't around when the terminal resize pane commands got . Seems like 4 rows should work for most people.
Can confirm this is fixed in Insiders. Thanks for the quick response

import { TerminalStatus } from 'vs/workbench/contrib/terminal/browser/terminalStatusList'; import { getPartByLocation } from 'vs/workbench/browser/parts/views/viewsService'; <del> const SPLIT_PANE_MIN_SIZE = 120; </del> <ins> const enum Constants { /** * The minimum size in pixels of a split pane. */ SplitPaneMinSize = 120, /** * The number of cells the terminal gets added or removed when asked to increase or decrease * the view size. */ ResizePartCellCount = 4 } </ins> class SplitPaneContainer extends Disposable { private _height: number;


Question:
Previously the terminal could be resized fairly quickly, to see what's going on and then hide it again (with 2 lines still visible). With the new update however, it can only be resized by one line per keystroke. So in order to use the terminal adequately, there are 10 - 20 keystrokes required, which is unacceptable (in my opinion). It would be great, if you could specify "args" for the command which control how many lines the terminal is resized by. Similar like the cursorMove command: Thanks for consideration, Floyd Haremsa <!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. -→
I'm not sure what you mean. changing the height of the panel? https://user-
Yes, changing the height of the panel, but with keyboard shortcuts. Previously it worked pretty well (changing the height by lets say 10 lines, I don't quite remember). But now you can only resize by one line at a time (per hitting the keyboard shortcut), like this: https://user- and that is just way too slow and inefficient. This way I'm forced to resize it with the mouse (which is also too slow) or having it open all the time, which is bad on small screen sizes. Sorry for not having it clarified enough earlier.
we think this is related to the increase view size change - thoughts ?
This is indeed caused by The new behavior is actually the intended behavior, but the terminal is in full control if it wants to have a number-of-lines-based resize setting.
I am also affected by this and it is crazy to work mouseless, resizing terminal is not viable with keyboard like this. Any work around?
how many rows would you expect it to change?
3-4 would be nice
I'd say about 7 - 10 lines at a time. But if I can control it my self, that's even better.
Also being affected by this. The terminal now resizes by 1 line at a time. Previously it was 9 lines (3072×1920 on 16" with terminal.integrated.fontSize = 13) Something in the range of 4-8 lines might be a decent compromise considering the original request that led to the change ()
I think the best approach would be to just have a default of let's say 4 lines, but also a setting that controls this, and/or as I mentioned, arguments to the command for being able to map multiple resize settings to different shortcuts:
I'd rather not add a setting for this as it's pretty obscure and would see hardly any usage. An additional complication here is I'd like to eventually remove the terminal resize commands since we now have the increase/decrease view size commands which weren't around when the terminal resize pane commands got . Seems like 4 rows should work for most people.
Can confirm this is fixed in Insiders. Thanks for the quick response

} // Ensure the size is not reduced beyond the minimum, otherwise weird things can happen <del> if (sizes[index] + amount < SPLIT_PANE_MIN_SIZE) { amount = SPLIT_PANE_MIN_SIZE - sizes[index]; } else if (sizes[indexToChange] - amount < SPLIT_PANE_MIN_SIZE) { amount = sizes[indexToChange] - SPLIT_PANE_MIN_SIZE; </del> <ins> if (sizes[index] + amount < Constants.SplitPaneMinSize) { amount = Constants.SplitPaneMinSize - sizes[index]; } else if (sizes[indexToChange] - amount < Constants.SplitPaneMinSize) { amount = sizes[indexToChange] - Constants.SplitPaneMinSize; </ins> } // Apply the size change


Question:
Previously the terminal could be resized fairly quickly, to see what's going on and then hide it again (with 2 lines still visible). With the new update however, it can only be resized by one line per keystroke. So in order to use the terminal adequately, there are 10 - 20 keystrokes required, which is unacceptable (in my opinion). It would be great, if you could specify "args" for the command which control how many lines the terminal is resized by. Similar like the cursorMove command: Thanks for consideration, Floyd Haremsa <!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. -→
I'm not sure what you mean. changing the height of the panel? https://user-
Yes, changing the height of the panel, but with keyboard shortcuts. Previously it worked pretty well (changing the height by lets say 10 lines, I don't quite remember). But now you can only resize by one line at a time (per hitting the keyboard shortcut), like this: https://user- and that is just way too slow and inefficient. This way I'm forced to resize it with the mouse (which is also too slow) or having it open all the time, which is bad on small screen sizes. Sorry for not having it clarified enough earlier.
we think this is related to the increase view size change - thoughts ?
This is indeed caused by The new behavior is actually the intended behavior, but the terminal is in full control if it wants to have a number-of-lines-based resize setting.
I am also affected by this and it is crazy to work mouseless, resizing terminal is not viable with keyboard like this. Any work around?
how many rows would you expect it to change?
3-4 would be nice
I'd say about 7 - 10 lines at a time. But if I can control it my self, that's even better.
Also being affected by this. The terminal now resizes by 1 line at a time. Previously it was 9 lines (3072×1920 on 16" with terminal.integrated.fontSize = 13) Something in the range of 4-8 lines might be a decent compromise considering the original request that led to the change ()
I think the best approach would be to just have a default of let's say 4 lines, but also a setting that controls this, and/or as I mentioned, arguments to the command for being able to map multiple resize settings to different shortcuts:
I'd rather not add a setting for this as it's pretty obscure and would see hardly any usage. An additional complication here is I'd like to eventually remove the terminal resize commands since we now have the increase/decrease view size commands which weren't around when the terminal resize pane commands got . Seems like 4 rows should work for most people.
Can confirm this is fixed in Insiders. Thanks for the quick response

} class SplitPane implements IView { <del> minimumSize: number = SPLIT_PANE_MIN_SIZE; </del> <ins> minimumSize: number = Constants.SplitPaneMinSize; </ins> maximumSize: number = Number.MAX_VALUE; orientation: Orientation | undefined;


Question:
Previously the terminal could be resized fairly quickly, to see what's going on and then hide it again (with 2 lines still visible). With the new update however, it can only be resized by one line per keystroke. So in order to use the terminal adequately, there are 10 - 20 keystrokes required, which is unacceptable (in my opinion). It would be great, if you could specify "args" for the command which control how many lines the terminal is resized by. Similar like the cursorMove command: Thanks for consideration, Floyd Haremsa <!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. -→
I'm not sure what you mean. changing the height of the panel? https://user-
Yes, changing the height of the panel, but with keyboard shortcuts. Previously it worked pretty well (changing the height by lets say 10 lines, I don't quite remember). But now you can only resize by one line at a time (per hitting the keyboard shortcut), like this: https://user- and that is just way too slow and inefficient. This way I'm forced to resize it with the mouse (which is also too slow) or having it open all the time, which is bad on small screen sizes. Sorry for not having it clarified enough earlier.
we think this is related to the increase view size change - thoughts ?
This is indeed caused by The new behavior is actually the intended behavior, but the terminal is in full control if it wants to have a number-of-lines-based resize setting.
I am also affected by this and it is crazy to work mouseless, resizing terminal is not viable with keyboard like this. Any work around?
how many rows would you expect it to change?
3-4 would be nice
I'd say about 7 - 10 lines at a time. But if I can control it my self, that's even better.
Also being affected by this. The terminal now resizes by 1 line at a time. Previously it was 9 lines (3072×1920 on 16" with terminal.integrated.fontSize = 13) Something in the range of 4-8 lines might be a decent compromise considering the original request that led to the change ()
I think the best approach would be to just have a default of let's say 4 lines, but also a setting that controls this, and/or as I mentioned, arguments to the command for being able to map multiple resize settings to different shortcuts:
I'd rather not add a setting for this as it's pretty obscure and would see hardly any usage. An additional complication here is I'd like to eventually remove the terminal resize commands since we now have the increase/decrease view size commands which weren't around when the terminal resize pane commands got . Seems like 4 rows should work for most people.
Can confirm this is fixed in Insiders. Thanks for the quick response

const isHorizontal = (direction === Direction.Left || direction === Direction.Right); const font = this._terminalService.configHelper.getFont(); // TODO: Support letter spacing and line height <del> const amount = isHorizontal ? font.charWidth : font.charHeight; if (amount) { this._splitPaneContainer.resizePane(this._activeInstanceIndex, direction, amount, getPartByLocation(this._terminalLocation)); </del> <ins> const charSize = (isHorizontal ? font.charWidth : font.charHeight); if (charSize) { this._splitPaneContainer.resizePane(this._activeInstanceIndex, direction, charSize * Constants.ResizePartCellCount, getPartByLocation(this._terminalLocation)); </ins> } }


Question:
<!-- Do Not Delete This! featurerequesttemplate --<!-- Please read our Rules of Conduct: --<!-- Please search existing issues to avoid creating duplicates. --<!-- Describe the feature you'd like. --Executing "Surround with snippet" from the command palette while there's no surround-able snippet, results in an empty pick list: ! Shouldn't it be like showing an information message saying there's no snippet to pick, or just not prompting the user to pick anything?
Prompt might be too annoying but quick pick itself might have a way to show a lightweight in-place message
Do you mean something like this (using )? !
Just submitted the PR. Could you please check it?

picker.items = makeSnippetPicks(); }); picker.items = makeSnippetPicks(); <ins> if (!picker.items.length) { picker.validationMessage = nls.localize('pick.noSnippetAvailable', "No snippet available"); } </ins> picker.show(); // wait for an item to be picked or the picker to become hidden


Question: Ah, sorry for the breakage... I believe asking for both is the best option for now but I can also add a "migration" path into the implementation, e.g use when seeing Originally posted by in

import * as vscode from 'vscode'; /** <del> * This interface describes the shape for the references viewlet API. It consists * of a single `setInput` function which must be called with a full implementation </del> <ins> * This interface describes the shape for the references viewlet API. It consists * of a single `setInput` function which must be called with a full implementation </ins> * of the `SymbolTreeInput`-interface. To acquire this API use the default mechanics, e.g: <del> * </del> <ins> * </ins> * ```ts * // get references viewlet API <del> * const api = await vscode.extensions.getExtension<SymbolTree>('ms-vscode.references-view').activate(); * </del> <ins> * const api = await vscode.extensions.getExtension<SymbolTree>('vscode.references-view').activate(); * </ins> * // instantiate and set input which updates the view * const myInput: SymbolTreeInput<MyItems> = ... * api.setInput(myInput)


Question: Ah, sorry for the breakage... I believe asking for both is the best option for now but I can also add a "migration" path into the implementation, e.g use when seeing Originally posted by in

export interface SymbolTree { /** <del> * Set the contents of the references viewlet. * </del> <ins> * Set the contents of the references viewlet. * </ins> * @param input A symbol tree input object */ setInput(input: SymbolTreeInput<unknown>): void;


Question: Ah, sorry for the breakage... I believe asking for both is the best option for now but I can also add a "migration" path into the implementation, e.g use when seeing Originally posted by in

/** * A symbol tree input is the entry point for populating the references viewlet. <del> * Inputs must be anchored at a code location, they must have a title, and they </del> <ins> * Inputs must be anchored at a code location, they must have a title, and they </ins> * must resolve to a model. */ export interface SymbolTreeInput<T> {


Question: Ah, sorry for the breakage... I believe asking for both is the best option for now but I can also add a "migration" path into the implementation, e.g use when seeing Originally posted by in

readonly location: vscode.Location; /** <del> * Resolve this input to a model that contains the actual data. When there are no result </del> <ins> * Resolve this input to a model that contains the actual data. When there are no result </ins> * than `undefined` or `null` should be returned. */ resolve(): vscode.ProviderResult<SymbolTreeModel<T>>; /** * This function is called when re-running from history. The symbols tree has tracked <del> * the original location of this input and that is now passed to this input. The </del> <ins> * the original location of this input and that is now passed to this input. The </ins> * implementation of this function should return a clone where the `location`-property * uses the provided `location` <del> * </del> <ins> * </ins> * @param location The location at which the new input should be anchored. * @returns A new input which location is anchored at the position. */


Question: Ah, sorry for the breakage... I believe asking for both is the best option for now but I can also add a "migration" path into the implementation, e.g use when seeing Originally posted by in

navigation?: SymbolItemNavigation<T>; /** <del> * Optional support for editor highlights. WHen implemented, the editor will highlight </del> <ins> * Optional support for editor highlights. WHen implemented, the editor will highlight </ins> * symbol ranges in the source code. */ highlights?: SymbolItemEditorHighlights<T>;


Question: Ah, sorry for the breakage... I believe asking for both is the best option for now but I can also add a "migration" path into the implementation, e.g use when seeing Originally posted by in

import { combinedDisposable } from 'vs/base/common/lifecycle'; import { checkProposedApiEnabled, ExtensionIdentifierSet, isProposedApiEnabled } from 'vs/workbench/services/extensions/common/extensions'; import { DebugConfigurationProviderTriggerKind } from 'vs/workbench/contrib/debug/common/debug'; <ins> import { equalsIgnoreCase } from 'vs/base/common/strings'; </ins> export interface IExtensionRegistries { mine: ExtensionDescriptionRegistry;


Question: Ah, sorry for the breakage... I believe asking for both is the best option for now but I can also add a "migration" path into the implementation, e.g use when seeing Originally posted by in

const extensions: typeof vscode.extensions = { getExtension(extensionId: string, includeFromDifferentExtensionHosts?: boolean): vscode.Extension<any> | undefined { <ins> if (equalsIgnoreCase(extensionId, 'ms-vscode.references-view')) { extHostApiDeprecation.report(`The extension 'ms-vscode.references-view' has been renamed.`, extension, `Use 'vscode.references-view' instead.`); extensionId = 'vscode.references-view'; } </ins> if (!isProposedApiEnabled(extension, 'extensionsAny')) { includeFromDifferentExtensionHosts = false; }


Question:
I really like how I can see the word-level change per line now in the merge editor, but shouldn't the colors be identical to the diff editor? !
I agree the new color needs to be tweaked. Would you also use the green background?
I think making this look as close as a diff editor if possible would be nice because I am so used at looking at diffs with their color coding. //cc

import { localize } from 'vs/nls'; import { registerColor } from 'vs/platform/theme/common/colorRegistry'; <del> export const modifiedBaseRangeInput1 = registerColor( 'mergeEditor.modifiedBaseRange.input1', </del> <ins> export const diff = registerColor( 'mergeEditor.diff', </ins> { <del> dark: '#a44c9d53', light: '#a44c9d38', hcDark: '#a44c9d53', hcLight: '#a44c9d38', </del> <ins> dark: '#9bb95533', light: '#9bb95533', hcDark: '#9bb95533', hcLight: '#9bb95533', </ins> }, localize( <del> 'mergeEditor.modifiedBaseRange.input1', 'The foreground color for changes in input 1.' </del> <ins> 'mergeEditor.diff', 'The foreground color for changes.' </ins> ) ); <del> export const modifiedBaseRangeInput2 = registerColor( 'mergeEditor.modifiedBaseRange.input2', </del> <ins> export const diffWord = registerColor( 'mergeEditor.diff.word', </ins> { <del> dark: '#878feb53', light: '#878feb53', hcDark: '#878feb53', hcLight: '#878feb53', </del> <ins> dark: '#9bb9551e', light: '#9bb9551e', hcDark: '#9bb9551e', hcLight: '#9bb9551e', </ins> }, localize( <del> 'mergeEditor.modifiedBaseRange.input2', 'The foreground color for changes in input 2.' </del> <ins> 'mergeEditor.diff.word', 'The foreground color for word changes.' </ins> ) ); <del> export const modifiedBaseRangeCombination = registerColor( 'mergeEditor.modifiedBaseRange.combination', </del> <ins> export const conflictBorderUnhandledUnfocused = registerColor( 'mergeEditor.conflictBorder.unhandledUnfocused', </ins> { <del> dark: '#8a4d249e', light: '#8a4d243e', hcDark: '#8a4d249e', hcLight: '#8a4d243e', </del> <ins> dark: '#ffa6007a', light: '#ffa6007a', hcDark: '#ffa6007a', hcLight: '#ffa6007a', </ins> }, localize( <del> 'mergeEditor.modifiedBaseRange.combination', 'The foreground color for combined changes in the result editor.' </del> <ins> 'mergeEditor.conflictBorder.unhandledUnfocused', 'The border color of unhandled unfocused conflicts.' </ins> ) ); <del> export const diffInput1 = registerColor( 'mergeEditor.diff.input1', </del> <ins> export const conflictBorderUnhandledFocused = registerColor( 'mergeEditor.conflictBorder.unhandledFocused', </ins> { <del> dark: '#e571db21', light: '#e571db21', hcDark: '#e571db21', hcLight: '#e571db21', </del> <ins> dark: '#ffa600', light: '#ffa600', hcDark: '#ffa600', hcLight: '#ffa600', </ins> }, localize( <del> 'mergeEditor.diff.input1', 'The foreground color for changed words in input 1.' </del> <ins> 'mergeEditor.conflictBorder.unhandledFocused', 'The border color of unhandled focused conflicts.' </ins> ) ); <del> export const diff = registerColor( 'mergeEditor.diff', </del> <ins> export const conflictBorderHandledUnfocused = registerColor( 'mergeEditor.conflictBorder.handledUnfocused', </ins> { <del> dark: '#d3d3d321', light: '#d3d3d321', hcDark: '#d3d3d321', hcLight: '#d3d3d321', </del> <ins> dark: '#86868649', light: '#86868649', hcDark: '#86868649', hcLight: '#86868649', </ins> }, localize( <del> 'mergeEditor.diff', 'The foreground color for changes in the result.' </del> <ins> 'mergeEditor.conflictBorder.handledUnfocused', 'The border color of handled unfocused conflicts.' </ins> ) ); <del> export const diffWord = registerColor( 'mergeEditor.diff.word', </del> <ins> export const conflictBorderHandledFocused = registerColor( 'mergeEditor.conflictBorder.handledFocused', </ins> { <del> dark: '#e571db21', light: '#e571db21', hcDark: '#e571db21', hcLight: '#e571db21', </del> <ins> dark: '#c1c1c1cc', light: '#c1c1c1cc', hcDark: '#c1c1c1cc', hcLight: '#c1c1c1cc', </ins> }, localize( <del> 'mergeEditor.diff.word', 'The foreground color for word changes in the result.' </del> <ins> 'mergeEditor.conflictBorder.handledFocused', 'The border color of handled focused conflicts.' </ins> ) ); <del> export const diffInput2 = registerColor( 'mergeEditor.diff.input2', { dark: '#878feb53', light: '#878feb53', hcDark: '#878feb53', hcLight: '#878feb53', }, localize( 'mergeEditor.diff.input2', 'The foreground color for changed words in input 2.' ) ); </del> export const handledConflictMinimapOverViewRulerColor = registerColor( 'mergeEditor.conflict-handled.minimapOverViewRuler',


Question:
I really like how I can see the word-level change per line now in the merge editor, but shouldn't the colors be identical to the diff editor? !
I agree the new color needs to be tweaked. Would you also use the green background?
I think making this look as close as a diff editor if possible would be nice because I am so used at looking at diffs with their color coding. //cc

) ); export const unhandledConflictMinimapOverViewRulerColor = registerColor( 'mergeEditor.conflict-unhandled.minimapOverViewRuler', {


Question:
I really like how I can see the word-level change per line now in the merge editor, but shouldn't the colors be identical to the diff editor? !
I agree the new color needs to be tweaked. Would you also use the green background?
I think making this look as close as a diff editor if possible would be nice because I am so used at looking at diffs with their color coding. //cc

const range = modifiedBaseRange.getInputRange(this.inputNumber); if (range && !range.isEmpty) { const blockClassNames = ['merge-editor-block']; const isHandled = model.isHandled(modifiedBaseRange).read(reader); if (isHandled) { blockClassNames.push('handled'); } if (modifiedBaseRange === activeModifiedBaseRange) { <del> blockClassNames.push('active'); </del> <ins> blockClassNames.push('focused'); </ins> } <del> blockClassNames.push('input' + this.inputNumber); </del> <ins> const inputClassName = this.inputNumber === 1 ? 'input1' : 'input2'; blockClassNames.push(inputClassName); </ins> result.push({ range: range.toInclusiveRange()!, options: { isWholeLine: true, blockClassName: blockClassNames.join(' '), <del> description: 'Base Range Projection', </del> <ins> description: 'Merge Editor', </ins> minimap: { position: MinimapPosition.Gutter, color: { id: isHandled ? handledConflictMinimapOverViewRulerColor : unhandledConflictMinimapOverViewRulerColor },


Question:
I really like how I can see the word-level change per line now in the merge editor, but shouldn't the colors be identical to the diff editor? !
I agree the new color needs to be tweaked. Would you also use the green background?
I think making this look as close as a diff editor if possible would be nice because I am so used at looking at diffs with their color coding. //cc

const inputDiffs = modifiedBaseRange.getInputDiffs(this.inputNumber); for (const diff of inputDiffs) { <ins> const range = diff.outputRange.toInclusiveRange(); if (range) { result.push({ range, options: { className: `merge-editor-diff ${inputClassName}`, description: 'Merge Editor', isWholeLine: true, } }); } </ins> if (diff.rangeMappings) { for (const d of diff.rangeMappings) { result.push({ range: d.outputRange, options: { <del> className: `merge-editor-diff-input1`, description: 'Base Range Projection' </del> <ins> className: `merge-editor-diff-word ${inputClassName}`, description: 'Merge Editor' </ins> } }); }


Question:
I really like how I can see the word-level change per line now in the merge editor, but shouldn't the colors be identical to the diff editor? !
I agree the new color needs to be tweaked. Would you also use the green background?
I think making this look as close as a diff editor if possible would be nice because I am so used at looking at diffs with their color coding. //cc

blockClassNames.push('handled'); } if (modifiedBaseRange === activeModifiedBaseRange) { <del> blockClassNames.push('active'); </del> <ins> blockClassNames.push('focused'); </ins> } blockClassNames.push('result');


Question:
I really like how I can see the word-level change per line now in the merge editor, but shouldn't the colors be identical to the diff editor? !
I agree the new color needs to be tweaked. Would you also use the green background?
I think making this look as close as a diff editor if possible would be nice because I am so used at looking at diffs with their color coding. //cc

}); } } <ins> for (const diff of m.rights) { const range = diff.outputRange.toInclusiveRange(); if (range) { result.push({ range, options: { className: `merge-editor-diff result`, description: 'Merge Editor', isWholeLine: true, } }); } if (diff.rangeMappings) { for (const d of diff.rangeMappings) { result.push({ range: d.outputRange, options: { className: `merge-editor-diff-word result`, description: 'Merge Editor' } }); } } } </ins> } return result; });


Question:
I really like how I can see the word-level change per line now in the merge editor, but shouldn't the colors be identical to the diff editor? !
I agree the new color needs to be tweaked. Would you also use the green background?
I think making this look as close as a diff editor if possible would be nice because I am so used at looking at diffs with their color coding. //cc

flex-grow: 0; } <del> .monaco-editor .merge-accept-conflict-glyph { cursor: pointer; } .merge-editor-modified-base-range-input1 { background-color: var(--vscode-mergeEditor-modifiedBaseRange-input1); } .merge-editor-diff-input1 { background-color: var(--vscode-mergeEditor-diff-input1); } .merge-editor-modified-base-range-input2 { background-color: var(--vscode-mergeEditor-modifiedBaseRange-input2); } .merge-editor-diff-input2 { background-color: var(--vscode-mergeEditor-diff-input2); } .merge-editor-modified-base-range-combination { background-color: var(--vscode-mergeEditor-modifiedBaseRange-combination); </del> <ins> .merge-editor-diff { background-color: var(--vscode-mergeEditor-diff); </ins> } <del> .merge-editor-modified-base-range { background-color: var(--vscode-mergeEditor-diff); </del> <ins> .merge-editor-diff-word { background-color: var(--vscode-mergeEditor-diff-word); </ins> } .merge-editor-block { <del> border: 2px solid rgba(255, 166, 0, 0.479); </del> <ins> border: 2px solid var(--vscode-mergeEditor-conflictBorder-unhandledUnfocused); </ins> } <del> .merge-editor-block.active { border: 2px solid orange; </del> <ins> .merge-editor-block.focused { border: 2px solid var(--vscode-mergeEditor-conflictBorder-unhandledFocused); </ins> } .merge-editor-block.handled { <del> border: 2px solid rgba(134, 134, 134, 0.285); </del> <ins> border: 2px solid var(--vscode-mergeEditor-conflictBorder-handledUnfocused); </ins> } <del> .merge-editor-block.handled.active { border: 2px solid rgb(134, 134, 134, 0.8); } .merge-editor-block.handled.active { border: 2px solid rgba(193, 193, 193, 0.8); </del> <ins> .merge-editor-block.handled.focused { border: 2px solid var(--vscode-mergeEditor-conflictBorder-handledFocused); </ins> } .gutter-item {


Question:
I really like how I can see the word-level change per line now in the merge editor, but shouldn't the colors be identical to the diff editor? !
I agree the new color needs to be tweaked. Would you also use the green background?
I think making this look as close as a diff editor if possible would be nice because I am so used at looking at diffs with their color coding. //cc

background-color: var(--vscode-checkbox-border); } <del> .checkbox-background { </del> <ins> .merge-accept-gutter-marker .checkbox-background { </ins> background: var(--vscode-editor-background); }


Question:
Testing !
That's actually a description of what clicking the button will do. This was as designed but maybe has a better idea?
Same feedback from in
The "..." in "Show Command Actions..." tells me it's clickable. Just removing the "..." would help, but it still looks like something I want to click on.

return; } this._hoverDelayer.trigger(() => { <del> let hoverContent = `${localize('terminalPromptContextMenu', "Show Command Actions")}...`; </del> <ins> let hoverContent = `${localize('terminalPromptContextMenu', "Show Command Actions")}`; </ins> hoverContent += 'nn---nn'; if (command.genericMarkProperties) { if (command.genericMarkProperties.hoverMessage) {


Question:
Testing !
I just noticed that is not localized and is not meant for display. That means that "Label" was not a good name for that function, but we can either just remove the state or find the code that drives the state label in the callstack.
Actually, it seems that only displays , , or , which is probably not super useful to the user anyways. It seems like the info like is only available on each thread, and a debug session can have multiple threads. Perhaps we should just remove the state for now.

import { IQuickPickSeparator } from 'vs/platform/quickinput/common/quickInput'; import { IViewsService } from 'vs/workbench/common/views'; import { DEBUG_CONSOLE_QUICK_ACCESS_PREFIX, SELECT_AND_START_ID } from 'vs/workbench/contrib/debug/browser/debugCommands'; <del> import { getStateLabel, IDebugService, IDebugSession, REPL_VIEW_ID } from 'vs/workbench/contrib/debug/common/debug'; </del> <ins> import { IDebugService, IDebugSession, REPL_VIEW_ID } from 'vs/workbench/contrib/debug/common/debug'; </ins> export class DebugConsoleQuickAccess extends PickerQuickAccessProvider<IPickerQuickAccessItem> {


Question:
Testing !
I just noticed that is not localized and is not meant for display. That means that "Label" was not a good name for that function, but we can either just remove the state or find the code that drives the state label in the callstack.
Actually, it seems that only displays , , or , which is probably not super useful to the user anyways. It seems like the info like is only available on each thread, and a debug session can have multiple threads. Perhaps we should just remove the state for now.

if (highlights) { return { label, <del> description: getStateLabel(session.state), </del> highlights: { label: highlights }, accept: (keyMod, event) => { this._debugService.focusStackFrame(undefined, undefined, session, { explicit: true });


Question:
Testing Current: ! Proposal: !
Spoke with and I have submitted to add the file icon association to seti-ui repository.

"git": { "name": "seti-ui", "repositoryUrl": "https://github.com/jesseweed/seti-ui", <del> "commitHash": "6b83574de165123583d6d8d5b3b6c91f04b7153d" </del> <ins> "commitHash": "4dd6c27e1f5aed8068c2451dbaf0db3364545937" </ins> } }, "version": "0.1.0"


Question:
Testing Current: ! Proposal: !
Spoke with and I have submitted to add the file icon association to seti-ui repository.

"dockerfile": "_docker", "ignore": "_git", "fsharp": "_f-sharp", <ins> "git-commit": "_git", </ins> "go": "_go2", "groovy": "_grails", "handlebars": "_mustache",


Question:
Testing Current: ! Proposal: !
Spoke with and I have submitted to add the file icon association to seti-ui repository.

"dockerfile": "_docker_light", "ignore": "_git_light", "fsharp": "_f-sharp_light", <ins> "git-commit": "_git_light", </ins> "go": "_go2_light", "groovy": "_grails_light", "handlebars": "_mustache_light",


Question:
Testing Current: ! Proposal: !
Spoke with and I have submitted to add the file icon association to seti-ui repository.

"npm-debug.log": "_npm_ignored_light" } }, <del> "version": "https://github.com/jesseweed/seti-ui/commit/6b83574de165123583d6d8d5b3b6c91f04b7153d" </del> <ins> "version": "https://github.com/jesseweed/seti-ui/commit/4dd6c27e1f5aed8068c2451dbaf0db3364545937" </ins> }  No newline at end of file


Question:
Testing When I use cmd+up/down to navigate between POIs in task output, the blue box renders for a second on the item I have selected, but then disappears. I didn't understand what was happening to the focus border.
that is by design.
This has come up before, I think you had an idea to improve this?
I had the same experience in where I was on a slow machine. I think I had suggested just using a line on the side (like our activity bar) that remains until your focus changes: <img src="https://user-"
To the left of the command decorations? ! I like how visible the outline is when jumping between commands, so we could keep that as is and just also show the persistent line? !
yea I'd be open to trying that out, I think using both might be a bit overkill but just having the single line can also be hard to notice.

.terminal-scroll-highlight { left: 0; right: 0; <ins> border-left: 5px solid #ffffff; border-left-width: 5px !important; } .terminal-scroll-highlight-outline { </ins> border: 1px solid #ffffff; }


Question:
Testing When I use cmd+up/down to navigate between POIs in task output, the blue box renders for a second on the item I have selected, but then disappears. I didn't understand what was happening to the focus border.
that is by design.
This has come up before, I think you had an idea to improve this?
I had the same experience in where I was on a slow machine. I think I had suggested just using a line on the side (like our activity bar) that remains until your focus changes: <img src="https://user-"
To the left of the command decorations? ! I like how visible the outline is when jumping between commands, so we could keep that as is and just also show the persistent line? !
yea I'd be open to trying that out, I think using both might be a bit overkill but just having the single line can also be hard to notice.

// Clear the current marker so successive focus/selection actions are performed from the // bottom of the buffer this._currentMarker = Boundary.Bottom; <ins> this._navigationDecoration?.dispose(); this._navigationDecoration = undefined; </ins> this._selectionStart = null; }


Question:
Testing When I use cmd+up/down to navigate between POIs in task output, the blue box renders for a second on the item I have selected, but then disappears. I didn't understand what was happening to the focus border.
that is by design.
This has come up before, I think you had an idea to improve this?
I had the same experience in where I was on a slow machine. I think I had suggested just using a line on the side (like our activity bar) that remains until your focus changes: <img src="https://user-"
To the left of the command decorations? ! I like how visible the outline is when jumping between commands, so we could keep that as is and just also show the persistent line? !
yea I'd be open to trying that out, I think using both might be a bit overkill but just having the single line can also be hard to notice.

if (markerIndex < 0) { this._currentMarker = Boundary.Top; this._terminal.scrollToTop(); <ins> this.clearMarker(); </ins> return; }


Question:
Testing When I use cmd+up/down to navigate between POIs in task output, the blue box renders for a second on the item I have selected, but then disappears. I didn't understand what was happening to the focus border.
that is by design.
This has come up before, I think you had an idea to improve this?
I had the same experience in where I was on a slow machine. I think I had suggested just using a line on the side (like our activity bar) that remains until your focus changes: <img src="https://user-"
To the left of the command decorations? ! I like how visible the outline is when jumping between commands, so we could keep that as is and just also show the persistent line? !
yea I'd be open to trying that out, I think using both might be a bit overkill but just having the single line can also be hard to notice.

if (markerIndex >= this._getCommandMarkers().length) { this._currentMarker = Boundary.Bottom; this._terminal.scrollToBottom(); <ins> this.clearMarker(); </ins> return; }


Question:
Testing When I use cmd+up/down to navigate between POIs in task output, the blue box renders for a second on the item I have selected, but then disappears. I didn't understand what was happening to the focus border.
that is by design.
This has come up before, I think you had an idea to improve this?
I had the same experience in where I was on a slow machine. I think I had suggested just using a line on the side (like our activity bar) that remains until your focus changes: <img src="https://user-"
To the left of the command decorations? ! I like how visible the outline is when jumping between commands, so we could keep that as is and just also show the persistent line? !
yea I'd be open to trying that out, I think using both might be a bit overkill but just having the single line can also be hard to notice.

}); this._navigationDecoration = decoration; if (decoration) { <del> const isRendered = false; </del> <ins> let renderedElement: HTMLElement | undefined; </ins> decoration.onRender(element => { <del> if (!isRendered) { // TODO: Remove when https://github.com/xtermjs/xterm.js/issues/3686 is fixed if (!element.classList.contains('xterm-decoration-overview-ruler')) { element.classList.add('terminal-scroll-highlight'); </del> <ins> if (!renderedElement) { renderedElement = element; element.classList.add('terminal-scroll-highlight', 'terminal-scroll-highlight-outline'); if (this._terminal?.element) { element.style.marginLeft = `-${getComputedStyle(this._terminal.element).paddingLeft}`; </ins> } } });


Question:
Testing When I use cmd+up/down to navigate between POIs in task output, the blue box renders for a second on the item I have selected, but then disappears. I didn't understand what was happening to the focus border.
that is by design.
This has come up before, I think you had an idea to improve this?
I had the same experience in where I was on a slow machine. I think I had suggested just using a line on the side (like our activity bar) that remains until your focus changes: <img src="https://user-"
To the left of the command decorations? ! I like how visible the outline is when jumping between commands, so we could keep that as is and just also show the persistent line? !
yea I'd be open to trying that out, I think using both might be a bit overkill but just having the single line can also be hard to notice.

}); // Number picked to align with symbol highlight in the editor timeout(350).then(() => { <del> decoration.dispose(); </del> <ins> if (renderedElement) { renderedElement.classList.remove('terminal-scroll-highlight-outline'); } </ins> }); } }


Question: Testing Clone a git repository Open git repository in VS Code desktop Make a change to one or more files Invoke the command You are presented with an empty picker <img width="736" alt="image" src="https://user-"

} }, "enabledApiProposals": [ <del> "contribShareMenu" </del> <ins> "contribShareMenu", "contribEditSessions" </ins> ], "contributes": { "commands": [


Question: Testing Clone a git repository Open git repository in VS Code desktop Make a change to one or more files Invoke the command You are presented with an empty picker <img width="736" alt="image" src="https://user-"

{ "command": "github.copyVscodeDevLink", "title": "Copy vscode.dev Link" <del> }, { "command": "github.copyVscodeDevLinkFile", "title": "Copy vscode.dev Link" </del> <ins> }, { "command": "github.copyVscodeDevLinkFile", "title": "Copy vscode.dev Link" }, { "command": "github.openOnVscodeDev", "title": "Open on vscode.dev" } ], "continueEditSession": [ { "command": "github.openOnVscodeDev", "when": "github.hasGitHubRepo" </ins> } ], "menus": {


Question: Testing Clone a git repository Open git repository in VS Code desktop Make a change to one or more files Invoke the command You are presented with an empty picker <img width="736" alt="image" src="https://user-"

{ "command": "github.copyVscodeDevLinkFile", "when": "false" <ins> }, { "command": "github.openOnVscodeDev", "when": "false" </ins> } ], "file/share": [


Question: Testing Clone a git repository Open git repository in VS Code desktop Make a change to one or more files Invoke the command You are presented with an empty picker <img width="736" alt="image" src="https://user-"

} } <ins> async function openVscodeDevLink(gitAPI: GitAPI): Promise<vscode.Uri | undefined> { try { const permalink = getPermalink(gitAPI, true, 'https://vscode.dev/github'); return permalink ? vscode.Uri.parse(permalink) : undefined; } catch (err) { vscode.window.showErrorMessage(err.message); return undefined; } } </ins> export function registerCommands(gitAPI: GitAPI): vscode.Disposable { const disposables = new DisposableStore();


Question: Testing Clone a git repository Open git repository in VS Code desktop Make a change to one or more files Invoke the command You are presented with an empty picker <img width="736" alt="image" src="https://user-"

return copyVscodeDevLink(gitAPI, false); })); <ins> disposables.add(vscode.commands.registerCommand('github.openOnVscodeDev', async () => { return openVscodeDevLink(gitAPI); })); </ins> return disposables; }


Question: Testing Clone a git repository Open git repository in VS Code desktop Make a change to one or more files Invoke the command You are presented with an empty picker <img width="736" alt="image" src="https://user-"

} const commands = new Map((extension.description.contributes?.commands ?? []).map(c => [c.command, c])); for (const contribution of extension.value) { <del> if (!contribution.command || !contribution.group || !contribution.when) { </del> <ins> if (!contribution.command || !contribution.when) { </ins> continue; } const fullCommand = commands.get(contribution.command);


Question: Issue Type: <bBug</bI opened theme extension and click enable / disable fast. I see "Set Theme" button when extension is disabled and no "Set Theme" when it is enabled. VS Code version: Code 1.68.1 (, 2022-06-14T12:48:37.209Z) OS version: Darwin arm64 21.5.0 Restricted Mode: No Remote OS version: Linux arm64 4.9.253-tegra

private static readonly EnabledClass = `${ExtensionAction.LABEL_ACTION_CLASS} theme`; private static readonly DisabledClass = `${SetColorThemeAction.EnabledClass} disabled`; <del> private colorThemes: IWorkbenchColorTheme[] = []; </del> constructor( @IExtensionService extensionService: IExtensionService, @IWorkbenchThemeService private readonly workbenchThemeService: IWorkbenchThemeService, @IQuickInputService private readonly quickInputService: IQuickInputService, <ins> @IWorkbenchExtensionEnablementService private readonly extensionEnablementService: IWorkbenchExtensionEnablementService, </ins> ) { super(SetColorThemeAction.ID, SetColorThemeAction.TITLE.value, SetColorThemeAction.DisabledClass, false); this._register(Event.any<any>(extensionService.onDidChangeExtensions, workbenchThemeService.onDidColorThemeChange)(() => this.update(), this)); <del> workbenchThemeService.getColorThemes().then(colorThemes => { this.colorThemes = colorThemes; this.update(); }); </del> this.update(); } update(): void { <del> this.enabled = !!this.extension && (this.extension.state === ExtensionState.Installed) && this.colorThemes.some(th => isThemeFromExtension(th, this.extension)); this.class = this.enabled ? SetColorThemeAction.EnabledClass : SetColorThemeAction.DisabledClass; </del> <ins> this.workbenchThemeService.getColorThemes().then(colorThemes => { this.enabled = this.computeEnablement(colorThemes); this.class = this.enabled ? SetColorThemeAction.EnabledClass : SetColorThemeAction.DisabledClass; }); } private computeEnablement(colorThemes: IWorkbenchColorTheme[]): boolean { return !!this.extension && this.extension.state === ExtensionState.Installed && this.extensionEnablementService.isEnabledEnablementState(this.extension.enablementState) && colorThemes.some(th => isThemeFromExtension(th, this.extension)); </ins> } override async run({ showCurrentTheme, ignoreFocusLost }: { showCurrentTheme: boolean; ignoreFocusLost: boolean } = { showCurrentTheme: false, ignoreFocusLost: false }): Promise<any> { <del> this.colorThemes = await this.workbenchThemeService.getColorThemes(); </del> <ins> const colorThemes = await this.workbenchThemeService.getColorThemes(); </ins> <del> this.update(); if (!this.enabled) { </del> <ins> if (!this.computeEnablement(colorThemes)) { </ins> return; } const currentTheme = this.workbenchThemeService.getColorTheme(); const delayer = new Delayer<any>(100); <del> const picks = getQuickPickEntries(this.colorThemes, currentTheme, this.extension, showCurrentTheme); </del> <ins> const picks = getQuickPickEntries(colorThemes, currentTheme, this.extension, showCurrentTheme); </ins> const pickedTheme = await this.quickInputService.pick( picks, {


Question: Issue Type: <bBug</bI opened theme extension and click enable / disable fast. I see "Set Theme" button when extension is disabled and no "Set Theme" when it is enabled. VS Code version: Code 1.68.1 (, 2022-06-14T12:48:37.209Z) OS version: Darwin arm64 21.5.0 Restricted Mode: No Remote OS version: Linux arm64 4.9.253-tegra

private static readonly EnabledClass = `${ExtensionAction.LABEL_ACTION_CLASS} theme`; private static readonly DisabledClass = `${SetFileIconThemeAction.EnabledClass} disabled`; <del> private fileIconThemes: IWorkbenchFileIconTheme[] = []; </del> constructor( @IExtensionService extensionService: IExtensionService, @IWorkbenchThemeService private readonly workbenchThemeService: IWorkbenchThemeService, <del> @IQuickInputService private readonly quickInputService: IQuickInputService </del> <ins> @IQuickInputService private readonly quickInputService: IQuickInputService, @IWorkbenchExtensionEnablementService private readonly extensionEnablementService: IWorkbenchExtensionEnablementService, </ins> ) { super(SetFileIconThemeAction.ID, SetFileIconThemeAction.TITLE.value, SetFileIconThemeAction.DisabledClass, false); this._register(Event.any<any>(extensionService.onDidChangeExtensions, workbenchThemeService.onDidFileIconThemeChange)(() => this.update(), this)); <del> workbenchThemeService.getFileIconThemes().then(fileIconThemes => { this.fileIconThemes = fileIconThemes; this.update(); }); </del> this.update(); } update(): void { <del> this.enabled = !!this.extension && (this.extension.state === ExtensionState.Installed) && this.fileIconThemes.some(th => isThemeFromExtension(th, this.extension)); this.class = this.enabled ? SetFileIconThemeAction.EnabledClass : SetFileIconThemeAction.DisabledClass; </del> <ins> this.workbenchThemeService.getFileIconThemes().then(fileIconThemes => { this.enabled = this.computeEnablement(fileIconThemes); this.class = this.enabled ? SetFileIconThemeAction.EnabledClass : SetFileIconThemeAction.DisabledClass; }); } private computeEnablement(colorThemfileIconThemess: IWorkbenchFileIconTheme[]): boolean { return !!this.extension && this.extension.state === ExtensionState.Installed && this.extensionEnablementService.isEnabledEnablementState(this.extension.enablementState) && colorThemfileIconThemess.some(th => isThemeFromExtension(th, this.extension)); </ins> } override async run({ showCurrentTheme, ignoreFocusLost }: { showCurrentTheme: boolean; ignoreFocusLost: boolean } = { showCurrentTheme: false, ignoreFocusLost: false }): Promise<any> { <del> this.fileIconThemes = await this.workbenchThemeService.getFileIconThemes(); this.update(); if (!this.enabled) { </del> <ins> const fileIconThemes = await this.workbenchThemeService.getFileIconThemes(); if (!this.computeEnablement(fileIconThemes)) { </ins> return; } const currentTheme = this.workbenchThemeService.getFileIconTheme(); const delayer = new Delayer<any>(100); <del> const picks = getQuickPickEntries(this.fileIconThemes, currentTheme, this.extension, showCurrentTheme); </del> <ins> const picks = getQuickPickEntries(fileIconThemes, currentTheme, this.extension, showCurrentTheme); </ins> const pickedTheme = await this.quickInputService.pick( picks, {


Question: Issue Type: <bBug</bI opened theme extension and click enable / disable fast. I see "Set Theme" button when extension is disabled and no "Set Theme" when it is enabled. VS Code version: Code 1.68.1 (, 2022-06-14T12:48:37.209Z) OS version: Darwin arm64 21.5.0 Restricted Mode: No Remote OS version: Linux arm64 4.9.253-tegra

private static readonly EnabledClass = `${ExtensionAction.LABEL_ACTION_CLASS} theme`; private static readonly DisabledClass = `${SetProductIconThemeAction.EnabledClass} disabled`; <del> private productIconThemes: IWorkbenchProductIconTheme[] = []; </del> constructor( @IExtensionService extensionService: IExtensionService, @IWorkbenchThemeService private readonly workbenchThemeService: IWorkbenchThemeService, <del> @IQuickInputService private readonly quickInputService: IQuickInputService </del> <ins> @IQuickInputService private readonly quickInputService: IQuickInputService, @IWorkbenchExtensionEnablementService private readonly extensionEnablementService: IWorkbenchExtensionEnablementService, </ins> ) { super(SetProductIconThemeAction.ID, SetProductIconThemeAction.TITLE.value, SetProductIconThemeAction.DisabledClass, false); this._register(Event.any<any>(extensionService.onDidChangeExtensions, workbenchThemeService.onDidProductIconThemeChange)(() => this.update(), this)); <del> workbenchThemeService.getProductIconThemes().then(productIconThemes => { this.productIconThemes = productIconThemes; this.update(); }); </del> this.update(); } update(): void { <del> this.enabled = !!this.extension && (this.extension.state === ExtensionState.Installed) && this.productIconThemes.some(th => isThemeFromExtension(th, this.extension)); this.class = this.enabled ? SetProductIconThemeAction.EnabledClass : SetProductIconThemeAction.DisabledClass; </del> <ins> this.workbenchThemeService.getProductIconThemes().then(productIconThemes => { this.enabled = this.computeEnablement(productIconThemes); this.class = this.enabled ? SetProductIconThemeAction.EnabledClass : SetProductIconThemeAction.DisabledClass; }); } private computeEnablement(productIconThemes: IWorkbenchProductIconTheme[]): boolean { return !!this.extension && this.extension.state === ExtensionState.Installed && this.extensionEnablementService.isEnabledEnablementState(this.extension.enablementState) && productIconThemes.some(th => isThemeFromExtension(th, this.extension)); </ins> } override async run({ showCurrentTheme, ignoreFocusLost }: { showCurrentTheme: boolean; ignoreFocusLost: boolean } = { showCurrentTheme: false, ignoreFocusLost: false }): Promise<any> { <del> this.productIconThemes = await this.workbenchThemeService.getProductIconThemes(); this.update(); if (!this.enabled) { </del> <ins> const productIconThemes = await this.workbenchThemeService.getProductIconThemes(); if (!this.computeEnablement(productIconThemes)) { </ins> return; } const currentTheme = this.workbenchThemeService.getProductIconTheme(); const delayer = new Delayer<any>(100); <del> const picks = getQuickPickEntries(this.productIconThemes, currentTheme, this.extension, showCurrentTheme); </del> <ins> const picks = getQuickPickEntries(productIconThemes, currentTheme, this.extension, showCurrentTheme); </ins> const pickedTheme = await this.quickInputService.pick( picks, {


Question:
! cmd+f, do a search clear the text in the find input it says "0 of -1"
was this insiders or code - oss? If the latter can you make sure is updated?
need to see if this reproduces in OSS
doesn't reproduce in the demo... I think I updated before the PR checks had finished maybe so that fix wasn't included?
I tested with my branch of symlinked so that's probably why I wasn't seeing it
yep happens in OSS so the fix is to update in vscode

"vscode-proxy-agent": "^0.12.0", "vscode-regexpp": "^3.1.0", "vscode-textmate": "7.0.1", <del> "xterm": "4.19.0-beta.67", "xterm-addon-search": "0.9.0-beta.41", "xterm-addon-serialize": "0.7.0-beta.15", </del> <ins> "xterm": "4.19.0", "xterm-addon-search": "0.9.0", "xterm-addon-serialize": "0.7.0", </ins> "xterm-addon-unicode11": "0.4.0-beta.3", <del> "xterm-addon-webgl": "0.12.0-beta.43", "xterm-headless": "4.19.0-beta.67", </del> <ins> "xterm-addon-webgl": "0.12.0", "xterm-headless": "4.19.0", </ins> "yauzl": "^2.9.2", "yazl": "^2.4.3" },


Question:
! cmd+f, do a search clear the text in the find input it says "0 of -1"
was this insiders or code - oss? If the latter can you make sure is updated?
need to see if this reproduces in OSS
doesn't reproduce in the demo... I think I updated before the PR checks had finished maybe so that fix wasn't included?
I tested with my branch of symlinked so that's probably why I wasn't seeing it
yep happens in OSS so the fix is to update in vscode

"tas-client-umd": "0.1.6", "vscode-oniguruma": "1.6.1", "vscode-textmate": "7.0.1", <del> "xterm": "4.19.0-beta.67", "xterm-addon-search": "0.9.0-beta.41", </del> <ins> "xterm": "4.19.0", "xterm-addon-search": "0.9.0", </ins> "xterm-addon-unicode11": "0.4.0-beta.3", <del> "xterm-addon-webgl": "0.12.0-beta.43" </del> <ins> "xterm-addon-webgl": "0.12.0" </ins> } }


Question:
! cmd+f, do a search clear the text in the find input it says "0 of -1"
was this insiders or code - oss? If the latter can you make sure is updated?
need to see if this reproduces in OSS
doesn't reproduce in the demo... I think I updated before the PR checks had finished maybe so that fix wasn't included?
I tested with my branch of symlinked so that's probably why I wasn't seeing it
yep happens in OSS so the fix is to update in vscode

resolved "https://registry.yarnpkg.com/vscode-textmate/-/vscode-textmate-7.0.1.tgz#8118a32b02735dccd14f893b495fa5389ad7de79" integrity sha512-zQ5U/nuXAAMsh691FtV0wPz89nSkHbs+IQV8FDk+wew9BlSDhf4UmWGlWJfTR2Ti6xZv87Tj5fENzKf6Qk7aLw== <del> xterm-addon-search@0.9.0-beta.41: version "0.9.0-beta.41" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.9.0-beta.41.tgz#0992da36fe01ff6d71449265a9dabeef7f9d0a3f" integrity sha512-b1vuWR5JZ8QIiObbKkwSzpzf4x0B9hdzGCHJG+PXWT/xbxk65DOe/X9rgrRyOnCWe5ylQGG4DIHTiREigTp0lg== </del> <ins> xterm-addon-search@0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.9.0.tgz#95278ebb818cfcf882209ae75be96e0bea5d52a5" integrity sha512-aoolI8YuHvdGw+Qjg8g2M4kst0v86GtB7WeBm4F0jNXA005/6QbWWy9eCsvnIDLJOFI5JSSrZnD6CaOkvBQYPA== </ins> xterm-addon-unicode11@0.4.0-beta.3: version "0.4.0-beta.3" resolved "https://registry.yarnpkg.com/xterm-addon-unicode11/-/xterm-addon-unicode11-0.4.0-beta.3.tgz#f350184155fafd5ad0d6fbf31d13e6ca7dea1efa" integrity sha512-FryZAVwbUjKTmwXnm1trch/2XO60F5JsDvOkZhzobV1hm10sFLVuZpFyHXiUx7TFeeFsvNP+S77LAtWoeT5z+Q== <del> xterm-addon-webgl@0.12.0-beta.43: version "0.12.0-beta.43" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.12.0-beta.43.tgz#916ed4e390371403aab0d277097cd8a61be436e8" integrity sha512-hGXfwT6TOmp0tBDiS/iF8s0SLHLd3shJ5zQyS4HNtq99B5cEhHhwaUAZAfjLt5rnUt0kvqR9YWtGsDux5dWVLA== </del> <ins> xterm-addon-webgl@0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.12.0.tgz#2fba8d31890a122adafa1c2fb945482e2ae12973" integrity sha512-3P5ihdjPnxH6Wrvqjki9UD+duoVrp1fvnO/pSpXP2F1L2GwY6TDNExgj8Yg141vMCNgQbcVqmsTLYEYZxjY92A== </ins> <del> xterm@4.19.0-beta.67: version "4.19.0-beta.67" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.19.0-beta.67.tgz#9a7d79be64469c91bb693b9f5a50b5a22e921cd3" integrity sha512-4bYTnT6g91N5QId1qPaiSvkpsxMQYpuPdPJItvBZFOcQLTuFSX85x5NeFuDvhNqi33eMFPimyGhzH/JvAV1v/Q== </del> <ins> xterm@4.19.0: version "4.19.0" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.19.0.tgz#c0f9d09cd61de1d658f43ca75f992197add9ef6d" integrity sha512-c3Cp4eOVsYY5Q839dR5IejghRPpxciGmLWWaP9g+ppfMeBChMeLa1DCA+pmX/jyDZ+zxFOmlJL/82qVdayVoGQ== </ins>


Question:
! cmd+f, do a search clear the text in the find input it says "0 of -1"
was this insiders or code - oss? If the latter can you make sure is updated?
need to see if this reproduces in OSS
doesn't reproduce in the demo... I think I updated before the PR checks had finished maybe so that fix wasn't included?
I tested with my branch of symlinked so that's probably why I wasn't seeing it
yep happens in OSS so the fix is to update in vscode

resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= <del> xterm-addon-search@0.9.0-beta.41: version "0.9.0-beta.41" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.9.0-beta.41.tgz#0992da36fe01ff6d71449265a9dabeef7f9d0a3f" integrity sha512-b1vuWR5JZ8QIiObbKkwSzpzf4x0B9hdzGCHJG+PXWT/xbxk65DOe/X9rgrRyOnCWe5ylQGG4DIHTiREigTp0lg== </del> <ins> xterm-addon-search@0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.9.0.tgz#95278ebb818cfcf882209ae75be96e0bea5d52a5" integrity sha512-aoolI8YuHvdGw+Qjg8g2M4kst0v86GtB7WeBm4F0jNXA005/6QbWWy9eCsvnIDLJOFI5JSSrZnD6CaOkvBQYPA== </ins> <del> xterm-addon-serialize@0.7.0-beta.15: version "0.7.0-beta.15" resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.7.0-beta.15.tgz#0f7d5f9b423802ac67c2a891d74de530a4fe6a65" integrity sha512-gO/dxqGgOAuj7DN2ETTeCHyalkb655XogZh5408CmH5D6mjI1lxqVLGUdiFeBVU/OHfWZT2PZ95k06VXqLU5kA== </del> <ins> xterm-addon-serialize@0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.7.0.tgz#cc7ef78972c8425b81dd6ae0a76824ce033d1e5f" integrity sha512-ZfZ4Zj4uTEBFnUA0exipDGZ14jfiWLCov7gIt2OwIjQEz2ey8ic5kL/cxYz5antNz8/hTSA2qZcyA6VyyQASOQ== </ins> xterm-addon-unicode11@0.4.0-beta.3: version "0.4.0-beta.3" resolved "https://registry.yarnpkg.com/xterm-addon-unicode11/-/xterm-addon-unicode11-0.4.0-beta.3.tgz#f350184155fafd5ad0d6fbf31d13e6ca7dea1efa" integrity sha512-FryZAVwbUjKTmwXnm1trch/2XO60F5JsDvOkZhzobV1hm10sFLVuZpFyHXiUx7TFeeFsvNP+S77LAtWoeT5z+Q== <del> xterm-addon-webgl@0.12.0-beta.43: version "0.12.0-beta.43" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.12.0-beta.43.tgz#916ed4e390371403aab0d277097cd8a61be436e8" integrity sha512-hGXfwT6TOmp0tBDiS/iF8s0SLHLd3shJ5zQyS4HNtq99B5cEhHhwaUAZAfjLt5rnUt0kvqR9YWtGsDux5dWVLA== xterm-headless@4.19.0-beta.67: version "4.19.0-beta.67" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-4.19.0-beta.67.tgz#fe44a243974bf307c9a0694114ab45289734c7f9" integrity sha512-rpxUsE/te2LN4B/erI108uaAhuLTUsnRl9zIZgcqMqZGFRqDUTtyVM05jIA/8A32g06wFd3WioTkeKc6ow+sLg== xterm@4.19.0-beta.67: version "4.19.0-beta.67" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.19.0-beta.67.tgz#9a7d79be64469c91bb693b9f5a50b5a22e921cd3" integrity sha512-4bYTnT6g91N5QId1qPaiSvkpsxMQYpuPdPJItvBZFOcQLTuFSX85x5NeFuDvhNqi33eMFPimyGhzH/JvAV1v/Q== </del> <ins> xterm-addon-webgl@0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.12.0.tgz#2fba8d31890a122adafa1c2fb945482e2ae12973" integrity sha512-3P5ihdjPnxH6Wrvqjki9UD+duoVrp1fvnO/pSpXP2F1L2GwY6TDNExgj8Yg141vMCNgQbcVqmsTLYEYZxjY92A== xterm-headless@4.19.0: version "4.19.0" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-4.19.0.tgz#965eb293fe6258adff5888f24e2a0b778b765e17" integrity sha512-rYP8I1AGwaztpCoWe9mwxNqmfz7zZCjbzw61QChFqPeiDERjW9CDnqyGhSElvicHAlf47dvA+p4qOuKltxWEkg== xterm@4.19.0: version "4.19.0" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.19.0.tgz#c0f9d09cd61de1d658f43ca75f992197add9ef6d" integrity sha512-c3Cp4eOVsYY5Q839dR5IejghRPpxciGmLWWaP9g+ppfMeBChMeLa1DCA+pmX/jyDZ+zxFOmlJL/82qVdayVoGQ== </ins> yallist@^4.0.0: version "4.0.0"


Question:
! cmd+f, do a search clear the text in the find input it says "0 of -1"
was this insiders or code - oss? If the latter can you make sure is updated?
need to see if this reproduces in OSS
doesn't reproduce in the demo... I think I updated before the PR checks had finished maybe so that fix wasn't included?
I tested with my branch of symlinked so that's probably why I wasn't seeing it
yep happens in OSS so the fix is to update in vscode

dependencies: object-keys "~0.4.0" <del> xterm-addon-search@0.9.0-beta.41: version "0.9.0-beta.41" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.9.0-beta.41.tgz#0992da36fe01ff6d71449265a9dabeef7f9d0a3f" integrity sha512-b1vuWR5JZ8QIiObbKkwSzpzf4x0B9hdzGCHJG+PXWT/xbxk65DOe/X9rgrRyOnCWe5ylQGG4DIHTiREigTp0lg== </del> <ins> xterm-addon-search@0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/xterm-addon-search/-/xterm-addon-search-0.9.0.tgz#95278ebb818cfcf882209ae75be96e0bea5d52a5" integrity sha512-aoolI8YuHvdGw+Qjg8g2M4kst0v86GtB7WeBm4F0jNXA005/6QbWWy9eCsvnIDLJOFI5JSSrZnD6CaOkvBQYPA== </ins> <del> xterm-addon-serialize@0.7.0-beta.15: version "0.7.0-beta.15" resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.7.0-beta.15.tgz#0f7d5f9b423802ac67c2a891d74de530a4fe6a65" integrity sha512-gO/dxqGgOAuj7DN2ETTeCHyalkb655XogZh5408CmH5D6mjI1lxqVLGUdiFeBVU/OHfWZT2PZ95k06VXqLU5kA== </del> <ins> xterm-addon-serialize@0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/xterm-addon-serialize/-/xterm-addon-serialize-0.7.0.tgz#cc7ef78972c8425b81dd6ae0a76824ce033d1e5f" integrity sha512-ZfZ4Zj4uTEBFnUA0exipDGZ14jfiWLCov7gIt2OwIjQEz2ey8ic5kL/cxYz5antNz8/hTSA2qZcyA6VyyQASOQ== </ins> xterm-addon-unicode11@0.4.0-beta.3: version "0.4.0-beta.3" resolved "https://registry.yarnpkg.com/xterm-addon-unicode11/-/xterm-addon-unicode11-0.4.0-beta.3.tgz#f350184155fafd5ad0d6fbf31d13e6ca7dea1efa" integrity sha512-FryZAVwbUjKTmwXnm1trch/2XO60F5JsDvOkZhzobV1hm10sFLVuZpFyHXiUx7TFeeFsvNP+S77LAtWoeT5z+Q== <del> xterm-addon-webgl@0.12.0-beta.43: version "0.12.0-beta.43" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.12.0-beta.43.tgz#916ed4e390371403aab0d277097cd8a61be436e8" integrity sha512-hGXfwT6TOmp0tBDiS/iF8s0SLHLd3shJ5zQyS4HNtq99B5cEhHhwaUAZAfjLt5rnUt0kvqR9YWtGsDux5dWVLA== xterm-headless@4.19.0-beta.67: version "4.19.0-beta.67" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-4.19.0-beta.67.tgz#fe44a243974bf307c9a0694114ab45289734c7f9" integrity sha512-rpxUsE/te2LN4B/erI108uaAhuLTUsnRl9zIZgcqMqZGFRqDUTtyVM05jIA/8A32g06wFd3WioTkeKc6ow+sLg== xterm@4.19.0-beta.67: version "4.19.0-beta.67" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.19.0-beta.67.tgz#9a7d79be64469c91bb693b9f5a50b5a22e921cd3" integrity sha512-4bYTnT6g91N5QId1qPaiSvkpsxMQYpuPdPJItvBZFOcQLTuFSX85x5NeFuDvhNqi33eMFPimyGhzH/JvAV1v/Q== </del> <ins> xterm-addon-webgl@0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.12.0.tgz#2fba8d31890a122adafa1c2fb945482e2ae12973" integrity sha512-3P5ihdjPnxH6Wrvqjki9UD+duoVrp1fvnO/pSpXP2F1L2GwY6TDNExgj8Yg141vMCNgQbcVqmsTLYEYZxjY92A== xterm-headless@4.19.0: version "4.19.0" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-4.19.0.tgz#965eb293fe6258adff5888f24e2a0b778b765e17" integrity sha512-rYP8I1AGwaztpCoWe9mwxNqmfz7zZCjbzw61QChFqPeiDERjW9CDnqyGhSElvicHAlf47dvA+p4qOuKltxWEkg== xterm@4.19.0: version "4.19.0" resolved "https://registry.yarnpkg.com/xterm/-/xterm-4.19.0.tgz#c0f9d09cd61de1d658f43ca75f992197add9ef6d" integrity sha512-c3Cp4eOVsYY5Q839dR5IejghRPpxciGmLWWaP9g+ppfMeBChMeLa1DCA+pmX/jyDZ+zxFOmlJL/82qVdayVoGQ== </ins> y18n@^3.2.1: version "3.2.2"


Question: Issue Type: <bBug</bTesting I have Code Spell Checker () extension provides diagnostics without error code, and rust-analyzer extension provides diagnostics with error code. When all diagnositcs don't have code, it displays correctly. When some diagnostics have code and some don't, scroll over the Problems value, some code changes randomly. https://user- VS Code version: Code - Insiders 1.69.0-insider (, 2022-06-29T05:20:28.364Z) OS version: WindowsNT x64 10.0. Restricted Mode: No Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<details<summaryExtensions (12)</summaryExtensionVersion ------ Bookmarks13.3.0 remotehub0.35. remote-containers0.241.1 remote-ssh0.83. remote-ssh-edit0.80.0 remote-wsl0.66.3 remote-repositories0.12.0 material-icon-theme4.18.1 material-theme3.15.2 toml0.6.0 rust-analyzer0.4.1110 code-spell-checker2.2.5 </details<!-- generated by issue reporter --

} renderElement(element: MarkerTableItem, index: number, templateData: IMarkerCodeColumnTemplateData, height: number | undefined): void { <del> if (element.marker.source && element.marker.code) { templateData.codeColumn.classList.toggle('code-link', typeof element.marker.code !== 'string'); DOM.show(templateData.codeLabel.element); </del> <ins> templateData.codeColumn.classList.remove('code-label'); templateData.codeColumn.classList.remove('code-link'); if (element.marker.source && element.marker.code) { </ins> if (typeof element.marker.code === 'string') { <ins> templateData.codeColumn.classList.add('code-label'); </ins> templateData.codeColumn.title = `${element.marker.source} (${element.marker.code})`; templateData.sourceLabel.set(element.marker.source, element.sourceMatches); templateData.codeLabel.set(element.marker.code, element.codeMatches); } else { <ins> templateData.codeColumn.classList.add('code-link'); </ins> templateData.codeColumn.title = `${element.marker.source} (${element.marker.code.value})`; templateData.sourceLabel.set(element.marker.source, element.sourceMatches);


Question: Issue Type: <bBug</bTesting I have Code Spell Checker () extension provides diagnostics without error code, and rust-analyzer extension provides diagnostics with error code. When all diagnositcs don't have code, it displays correctly. When some diagnostics have code and some don't, scroll over the Problems value, some code changes randomly. https://user- VS Code version: Code - Insiders 1.69.0-insider (, 2022-06-29T05:20:28.364Z) OS version: WindowsNT x64 10.0. Restricted Mode: No Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<details<summaryExtensions (12)</summaryExtensionVersion ------ Bookmarks13.3.0 remotehub0.35. remote-containers0.241.1 remote-ssh0.83. remote-ssh-edit0.80.0 remote-wsl0.66.3 remote-repositories0.12.0 material-icon-theme4.18.1 material-theme3.15.2 toml0.6.0 rust-analyzer0.4.1110 code-spell-checker2.2.5 </details<!-- generated by issue reporter --

} else { templateData.codeColumn.title = ''; templateData.sourceLabel.set('-'); <del> DOM.hide(templateData.codeLabel.element); </del> } }


Question: Issue Type: <bBug</bTesting I have Code Spell Checker () extension provides diagnostics without error code, and rust-analyzer extension provides diagnostics with error code. When all diagnositcs don't have code, it displays correctly. When some diagnostics have code and some don't, scroll over the Problems value, some code changes randomly. https://user- VS Code version: Code - Insiders 1.69.0-insider (, 2022-06-29T05:20:28.364Z) OS version: WindowsNT x64 10.0. Restricted Mode: No Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 Remote OS version: Linux x64 5.10.102.1-microsoft-standard-WSL2 <details<summarySystem Info</summary </details<details<summaryExtensions (12)</summaryExtensionVersion ------ Bookmarks13.3.0 remotehub0.35. remote-containers0.241.1 remote-ssh0.83. remote-ssh-edit0.80.0 remote-wsl0.66.3 remote-repositories0.12.0 material-icon-theme4.18.1 material-theme3.15.2 toml0.6.0 rust-analyzer0.4.1110 code-spell-checker2.2.5 </details<!-- generated by issue reporter --

content: ')'; } <del> .markers-panel .markers-table-container .monaco-table .monaco-list-row .monaco-table-tr > .monaco-table-td > .code.code-link > .code-label { </del> <ins> .markers-panel .markers-table-container .monaco-table .monaco-list-row .monaco-table-tr > .monaco-table-td > .code > .code-label, .markers-panel .markers-table-container .monaco-table .monaco-list-row .monaco-table-tr > .monaco-table-td > .code > .monaco-link { </ins> display: none; } <del> .markers-panel .markers-table-container .monaco-table .monaco-list-row .monaco-table-tr > .monaco-table-td > .code.code-link > .monaco-link { </del> <ins> .markers-panel .markers-table-container .monaco-table .monaco-list-row .monaco-table-tr > .monaco-table-td > .code.code-label > .code-label { </ins> display: inline; <del> text-decoration: underline; </del> } <del> .markers-panel .markers-table-container .monaco-table .monaco-list-row .monaco-table-tr > .monaco-table-td > .code > .monaco-link { display: none; </del> <ins> .markers-panel .markers-table-container .monaco-table .monaco-list-row .monaco-table-tr > .monaco-table-td > .code.code-link > .monaco-link { display: inline; text-decoration: underline; </ins> } .markers-panel .markers-table-container .monaco-table .monaco-list-row .monaco-table-tr > .monaco-table-td > .file > .file-position {


Question:
a folder/workspace that contains a git repository a topic branch changes to main and the topic branch that would result in a merge conflict main into the topic branch to get a conflict Expected: commit action button is disabled Actual: commit action button is enabled
The button is now disabled while merging is in progress, but the button and the dropdown both take on a background color when clicked, which was confusing to me: !
Also, while the commit action button is disabled, the commit button above the input box is not: !
That is expected. At the moment the enablement is only toggled for the commit action button and not the commit action in the toolbar.
This is currently being tracked as

interface ActionButtonState { readonly HEAD: Branch | undefined; readonly isCommitInProgress: boolean; <ins> readonly isMergeInProgress: boolean; </ins> readonly isSyncInProgress: boolean; readonly repositoryHasChanges: boolean; }