Question: } }, "node_modules/@xterm/addon-clipboard": { <del> "version": "0.2.0-beta.39", "resolved": "https://registry.npmjs.org/@xterm/addon-clipboard/-/addon-clipboard-0.2.0-beta.39.tgz", "integrity": "sha512-PeJZP69FHg2p1NJKLGyqUITahvEexqwYoQAgYheu4d9UBhIdP6D/KWGT8DVAEPeeulXhcr2UXgYWMVQAooTvrw==", </del> <ins> "version": "0.2.0-beta.47", "resolved": "https://registry.npmjs.org/@xterm/addon-clipboard/-/addon-clipboard-0.2.0-beta.47.tgz", "integrity": "sha512-mJHV1770gwVckj4mgjdxegt4zLL5WGCoJblTqaLbgEF7xOwsJUzvGk38qsZ4ZpdTa2ti76H0pkb1CpZGrXL9qg==", </ins> "dependencies": { "js-base64": "^3.7.5" }, "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-image": { <del> "version": "0.9.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-image/-/addon-image-0.9.0-beta.56.tgz", "integrity": "sha512-kwE4ZDlPxXsBk4mnQoqMvSwu9aKQclniIybs90t0L2qGPLcI8/7Akm1i9aXbu8eZF2hoLEPfLC3CZPda+4ioOA==", </del> <ins> "version": "0.9.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-image/-/addon-image-0.9.0-beta.64.tgz", "integrity": "sha512-1Aqqytx/z/Khecf5xrO++f/p5EQX4uG87TbbAmE0OQys/JgKMnNggDzqon5bpHboimLfQiFPw716NbTqMphjfw==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-search": { <del> "version": "0.16.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-search/-/addon-search-0.16.0-beta.56.tgz", "integrity": "sha512-f8aoldPGssse1UR2N3f94fRUc7K3eulb+F80MFhim4rP+shX3QO9QdEZtwr+JaPEujjnuBM5tQKQDuRQtbwuMQ==", </del> <ins> "version": "0.16.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-search/-/addon-search-0.16.0-beta.64.tgz", "integrity": "sha512-vUsvTkEOFJwv8nVtiiGr/vTMeQhu62VkUejY2h1+yZagnVEusGVPU1JYoqBTLu5HM4cFiTGsJYXFI/0apASXYA==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-serialize": { <del> "version": "0.14.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-serialize/-/addon-serialize-0.14.0-beta.56.tgz", "integrity": "sha512-VGAYJXFfXuY1Ze8CliT28DoYI74s8fdTI9919C0sgWwtzfAa7W43jJ56g0oKVEM0wO20wfdESapwpQ7enMzrHQ==", </del> <ins> "version": "0.14.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-serialize/-/addon-serialize-0.14.0-beta.64.tgz", "integrity": "sha512-0AqVveTV3Pr9Lp+beJYOP5WuRvIrPSDGAK24da7BRGcLIKVq8pok1FdlM9jPeUbkX0DKo6Ortm77qeb2Z+n8+A==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-unicode11": { <del> "version": "0.9.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-unicode11/-/addon-unicode11-0.9.0-beta.56.tgz", "integrity": "sha512-oWa8xLWMDKgJboqOT57PaNAWYz+2INW5aUc24E0Nzv+gKXVy+8lRoqy50m3DhsOb1YtDaPVloqvambKBaXSing==", </del> <ins> "version": "0.9.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-unicode11/-/addon-unicode11-0.9.0-beta.64.tgz", "integrity": "sha512-3+PKu+DXFq32xlsYfnI058/T8dTY2tQhRpJLP2CNR/jVWk5uBkVO0dBV0Srqj5QOAlAhzzZuS6TbsVRXORptqw==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-webgl": { <del> "version": "0.19.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-webgl/-/addon-webgl-0.19.0-beta.56.tgz", "integrity": "sha512-aYNRENPJBb1uoV7QifEwCnbjCXmQD5yQmuxNJab3bOZ68aCSGC/EKc4/4Ov0klkXi8ceF4ZnbNiqAX3jw5L1jg==", </del> <ins> "version": "0.19.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-webgl/-/addon-webgl-0.19.0-beta.64.tgz", "integrity": "sha512-cxTkMPAXPQAZnWqahNu7ff9mbJvM1sQqKnZWiFZAHTsZXym4oa3KCB4pjH4didSyYkhkPY/17E8I0UOUpvv0Yw==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/headless": { <del> "version": "5.6.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-5.6.0-beta.56.tgz", "integrity": "sha512-aQOCzFDn/yqdATwf+ho1q5Hu2MzQwnXHgcsVx/qwUit/URKgbp1QyOQom88nzprP6D/59tiSeX+tqUS1HPqwMw==" </del> <ins> "version": "5.6.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-5.6.0-beta.64.tgz", "integrity": "sha512-my08kgH2K3CBEtBg/o8lamtD6BYNBv03Akq747Lajv0QzOiwan7B4r2xdbA6i9sovB+MdjFs0XP1ksc3EpKakg==" </ins> }, "node_modules/@xterm/xterm": { <del> "version": "5.6.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/xterm/-/xterm-5.6.0-beta.56.tgz", "integrity": "sha512-gtLrCQNkF1LikB21Bj9JYiBrrXMMvPEZkOIiA7MlXoSd7T7v+GYPumrODB2SBuhPdZ8N66z2rbUOfSRzxGwMtA==" </del> <ins> "version": "5.6.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/xterm/-/xterm-5.6.0-beta.64.tgz", "integrity": "sha512-iSKS6tQTFpoN5y487eptlxkUT0jqK5hrvtFQMLugMcQdn7gCUCiFGa4Z1RdqKYSGvAypka+b9gMKPrKWZ7Q3yQ==" </ins> }, "node_modules/@xtuc/ieee754": { "version": "1.2.0",

<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes. After updating to VS Code 1.92, I noticed several scroll-related issues with the integrated terminal: exiting a full screen CLI app ( or ), sometimes scroll up or down doesn't work anymore until I press cmd+c - at which point I am teleported back to the start of the cli log. See the below video: start scroll works (though way too sensitive - see issue 2) press scroll up down no longer works press as soon as I try to scroll again, I am teleported to the top of the cli log output (though, at least scroll works after that)Note, while the above triggers the issue, sometimes the issue also occurs even without that (at one point I just run and this bug was triggered) full-screen CLI apps (, , ), the scroll sensitivity is way higher than when scrolling in non-full-screen apps. This scroll sensitivity is uncomfortably high, way higher than it was before, and remains high even if I set to a very low value like 0.1. scrolling through full-screen CLI app ( or ), sometimes the terminal will not let me scroll up. If I try to scroll up, I am "teleported" back to previous position. As soon as I scroll down, I can't scroll back up to the previous text. <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --Relevant information: VS Code Version: 1.92 OS Version: macOS 14.5 Issues are reproducible in ZSH.


Question: } }, "node_modules/@xterm/addon-clipboard": { <del> "version": "0.2.0-beta.39", "resolved": "https://registry.npmjs.org/@xterm/addon-clipboard/-/addon-clipboard-0.2.0-beta.39.tgz", "integrity": "sha512-PeJZP69FHg2p1NJKLGyqUITahvEexqwYoQAgYheu4d9UBhIdP6D/KWGT8DVAEPeeulXhcr2UXgYWMVQAooTvrw==", </del> <ins> "version": "0.2.0-beta.47", "resolved": "https://registry.npmjs.org/@xterm/addon-clipboard/-/addon-clipboard-0.2.0-beta.47.tgz", "integrity": "sha512-mJHV1770gwVckj4mgjdxegt4zLL5WGCoJblTqaLbgEF7xOwsJUzvGk38qsZ4ZpdTa2ti76H0pkb1CpZGrXL9qg==", </ins> "dependencies": { "js-base64": "^3.7.5" }, "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-image": { <del> "version": "0.9.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-image/-/addon-image-0.9.0-beta.56.tgz", "integrity": "sha512-kwE4ZDlPxXsBk4mnQoqMvSwu9aKQclniIybs90t0L2qGPLcI8/7Akm1i9aXbu8eZF2hoLEPfLC3CZPda+4ioOA==", </del> <ins> "version": "0.9.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-image/-/addon-image-0.9.0-beta.64.tgz", "integrity": "sha512-1Aqqytx/z/Khecf5xrO++f/p5EQX4uG87TbbAmE0OQys/JgKMnNggDzqon5bpHboimLfQiFPw716NbTqMphjfw==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-search": { <del> "version": "0.16.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-search/-/addon-search-0.16.0-beta.56.tgz", "integrity": "sha512-f8aoldPGssse1UR2N3f94fRUc7K3eulb+F80MFhim4rP+shX3QO9QdEZtwr+JaPEujjnuBM5tQKQDuRQtbwuMQ==", </del> <ins> "version": "0.16.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-search/-/addon-search-0.16.0-beta.64.tgz", "integrity": "sha512-vUsvTkEOFJwv8nVtiiGr/vTMeQhu62VkUejY2h1+yZagnVEusGVPU1JYoqBTLu5HM4cFiTGsJYXFI/0apASXYA==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-serialize": { <del> "version": "0.14.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-serialize/-/addon-serialize-0.14.0-beta.56.tgz", "integrity": "sha512-VGAYJXFfXuY1Ze8CliT28DoYI74s8fdTI9919C0sgWwtzfAa7W43jJ56g0oKVEM0wO20wfdESapwpQ7enMzrHQ==", </del> <ins> "version": "0.14.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-serialize/-/addon-serialize-0.14.0-beta.64.tgz", "integrity": "sha512-0AqVveTV3Pr9Lp+beJYOP5WuRvIrPSDGAK24da7BRGcLIKVq8pok1FdlM9jPeUbkX0DKo6Ortm77qeb2Z+n8+A==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-unicode11": { <del> "version": "0.9.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-unicode11/-/addon-unicode11-0.9.0-beta.56.tgz", "integrity": "sha512-oWa8xLWMDKgJboqOT57PaNAWYz+2INW5aUc24E0Nzv+gKXVy+8lRoqy50m3DhsOb1YtDaPVloqvambKBaXSing==", </del> <ins> "version": "0.9.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-unicode11/-/addon-unicode11-0.9.0-beta.64.tgz", "integrity": "sha512-3+PKu+DXFq32xlsYfnI058/T8dTY2tQhRpJLP2CNR/jVWk5uBkVO0dBV0Srqj5QOAlAhzzZuS6TbsVRXORptqw==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-webgl": { <del> "version": "0.19.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-webgl/-/addon-webgl-0.19.0-beta.56.tgz", "integrity": "sha512-aYNRENPJBb1uoV7QifEwCnbjCXmQD5yQmuxNJab3bOZ68aCSGC/EKc4/4Ov0klkXi8ceF4ZnbNiqAX3jw5L1jg==", </del> <ins> "version": "0.19.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-webgl/-/addon-webgl-0.19.0-beta.64.tgz", "integrity": "sha512-cxTkMPAXPQAZnWqahNu7ff9mbJvM1sQqKnZWiFZAHTsZXym4oa3KCB4pjH4didSyYkhkPY/17E8I0UOUpvv0Yw==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/headless": { <del> "version": "5.6.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-5.6.0-beta.56.tgz", "integrity": "sha512-aQOCzFDn/yqdATwf+ho1q5Hu2MzQwnXHgcsVx/qwUit/URKgbp1QyOQom88nzprP6D/59tiSeX+tqUS1HPqwMw==" </del> <ins> "version": "5.6.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-5.6.0-beta.64.tgz", "integrity": "sha512-my08kgH2K3CBEtBg/o8lamtD6BYNBv03Akq747Lajv0QzOiwan7B4r2xdbA6i9sovB+MdjFs0XP1ksc3EpKakg==" </ins> }, "node_modules/@xterm/xterm": { <del> "version": "5.6.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/xterm/-/xterm-5.6.0-beta.56.tgz", "integrity": "sha512-gtLrCQNkF1LikB21Bj9JYiBrrXMMvPEZkOIiA7MlXoSd7T7v+GYPumrODB2SBuhPdZ8N66z2rbUOfSRzxGwMtA==" </del> <ins> "version": "5.6.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/xterm/-/xterm-5.6.0-beta.64.tgz", "integrity": "sha512-iSKS6tQTFpoN5y487eptlxkUT0jqK5hrvtFQMLugMcQdn7gCUCiFGa4Z1RdqKYSGvAypka+b9gMKPrKWZ7Q3yQ==" </ins> }, "node_modules/@xtuc/ieee754": { "version": "1.2.0",

I was also able to trigger issue 1 in BASH In ZSH, I am using oh-my-zsh and powerlevel19k, BUT I was able to reproduce the issues even after I temporary disabled oh-my-zsh and powerlevel19k in my Issues are reproducible even if I start VS Code with empty user dir and empty extensions dir. A few relevant settings: is off. Enabling it does not make things better N/A as I am not holding the key - I am just scrolling using the touchpad is off. Enabling it did not make things better I am sorry if some of the above reproduction steps a bit vague - some of these don't happen each time so it's hard to see what triggered it. But these all started happening as soon as VS Code got updated to 1.92. I will keep updating this issue if I have more details. <details<summarySystem info</summaryGeneral: System info: System Information | -- | -- CPUs | Apple M1 Pro (10 x 2400) GPU Status | 2dcanvas: enabled canvasooprasterization: enabledon directrenderingdisplaycompositor: disabledoffok gpucompositing: enabled multiplerasterthreads: enabledon opengl: enabledon rasterization: enabled rawdraw: disabledoffok skiagraphite: disabledoff videodecode: enabled videoencode: enabled webgl: enabled webgl2: enabled webgpu: enabled webnn: disabled_off Load (avg) | 2, 2, 3 Memory (System) | 32.00GB (6.06GB free) Process Argv | /Users/mak13180/site/esri/arcgis-web-components --crash-reporter-id -0746-4857-a17b- Screen Reader | no VM | 0% Enabled extensions (BUT, issues are reproducible with all extensions disabled): Extension Version -- -- vite 0.2.5 shell-syntax 1.0.5 vscode-tailwindcss 0.12.5 vscode-eslint 3.0.10 apc-extension 0.4.1 gitlens 15.2.3 vscode-html-css 2.0.10 prettier-vscode 10.4.0 lintlens 7.5.0 copilot 1.219.0 copilot-chat 0.18.1 vscode-github-actions 0.26.


Question: } }, "node_modules/@xterm/addon-clipboard": { <del> "version": "0.2.0-beta.39", "resolved": "https://registry.npmjs.org/@xterm/addon-clipboard/-/addon-clipboard-0.2.0-beta.39.tgz", "integrity": "sha512-PeJZP69FHg2p1NJKLGyqUITahvEexqwYoQAgYheu4d9UBhIdP6D/KWGT8DVAEPeeulXhcr2UXgYWMVQAooTvrw==", </del> <ins> "version": "0.2.0-beta.47", "resolved": "https://registry.npmjs.org/@xterm/addon-clipboard/-/addon-clipboard-0.2.0-beta.47.tgz", "integrity": "sha512-mJHV1770gwVckj4mgjdxegt4zLL5WGCoJblTqaLbgEF7xOwsJUzvGk38qsZ4ZpdTa2ti76H0pkb1CpZGrXL9qg==", </ins> "dependencies": { "js-base64": "^3.7.5" }, "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-image": { <del> "version": "0.9.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-image/-/addon-image-0.9.0-beta.56.tgz", "integrity": "sha512-kwE4ZDlPxXsBk4mnQoqMvSwu9aKQclniIybs90t0L2qGPLcI8/7Akm1i9aXbu8eZF2hoLEPfLC3CZPda+4ioOA==", </del> <ins> "version": "0.9.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-image/-/addon-image-0.9.0-beta.64.tgz", "integrity": "sha512-1Aqqytx/z/Khecf5xrO++f/p5EQX4uG87TbbAmE0OQys/JgKMnNggDzqon5bpHboimLfQiFPw716NbTqMphjfw==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-search": { <del> "version": "0.16.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-search/-/addon-search-0.16.0-beta.56.tgz", "integrity": "sha512-f8aoldPGssse1UR2N3f94fRUc7K3eulb+F80MFhim4rP+shX3QO9QdEZtwr+JaPEujjnuBM5tQKQDuRQtbwuMQ==", </del> <ins> "version": "0.16.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-search/-/addon-search-0.16.0-beta.64.tgz", "integrity": "sha512-vUsvTkEOFJwv8nVtiiGr/vTMeQhu62VkUejY2h1+yZagnVEusGVPU1JYoqBTLu5HM4cFiTGsJYXFI/0apASXYA==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-serialize": { <del> "version": "0.14.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-serialize/-/addon-serialize-0.14.0-beta.56.tgz", "integrity": "sha512-VGAYJXFfXuY1Ze8CliT28DoYI74s8fdTI9919C0sgWwtzfAa7W43jJ56g0oKVEM0wO20wfdESapwpQ7enMzrHQ==", </del> <ins> "version": "0.14.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-serialize/-/addon-serialize-0.14.0-beta.64.tgz", "integrity": "sha512-0AqVveTV3Pr9Lp+beJYOP5WuRvIrPSDGAK24da7BRGcLIKVq8pok1FdlM9jPeUbkX0DKo6Ortm77qeb2Z+n8+A==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-unicode11": { <del> "version": "0.9.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-unicode11/-/addon-unicode11-0.9.0-beta.56.tgz", "integrity": "sha512-oWa8xLWMDKgJboqOT57PaNAWYz+2INW5aUc24E0Nzv+gKXVy+8lRoqy50m3DhsOb1YtDaPVloqvambKBaXSing==", </del> <ins> "version": "0.9.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-unicode11/-/addon-unicode11-0.9.0-beta.64.tgz", "integrity": "sha512-3+PKu+DXFq32xlsYfnI058/T8dTY2tQhRpJLP2CNR/jVWk5uBkVO0dBV0Srqj5QOAlAhzzZuS6TbsVRXORptqw==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/addon-webgl": { <del> "version": "0.19.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/addon-webgl/-/addon-webgl-0.19.0-beta.56.tgz", "integrity": "sha512-aYNRENPJBb1uoV7QifEwCnbjCXmQD5yQmuxNJab3bOZ68aCSGC/EKc4/4Ov0klkXi8ceF4ZnbNiqAX3jw5L1jg==", </del> <ins> "version": "0.19.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/addon-webgl/-/addon-webgl-0.19.0-beta.64.tgz", "integrity": "sha512-cxTkMPAXPQAZnWqahNu7ff9mbJvM1sQqKnZWiFZAHTsZXym4oa3KCB4pjH4didSyYkhkPY/17E8I0UOUpvv0Yw==", </ins> "peerDependencies": { <del> "@xterm/xterm": "^5.6.0-beta.56" </del> <ins> "@xterm/xterm": "^5.6.0-beta.64" </ins> } }, "node_modules/@xterm/headless": { <del> "version": "5.6.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-5.6.0-beta.56.tgz", "integrity": "sha512-aQOCzFDn/yqdATwf+ho1q5Hu2MzQwnXHgcsVx/qwUit/URKgbp1QyOQom88nzprP6D/59tiSeX+tqUS1HPqwMw==" </del> <ins> "version": "5.6.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-5.6.0-beta.64.tgz", "integrity": "sha512-my08kgH2K3CBEtBg/o8lamtD6BYNBv03Akq747Lajv0QzOiwan7B4r2xdbA6i9sovB+MdjFs0XP1ksc3EpKakg==" </ins> }, "node_modules/@xterm/xterm": { <del> "version": "5.6.0-beta.56", "resolved": "https://registry.npmjs.org/@xterm/xterm/-/xterm-5.6.0-beta.56.tgz", "integrity": "sha512-gtLrCQNkF1LikB21Bj9JYiBrrXMMvPEZkOIiA7MlXoSd7T7v+GYPumrODB2SBuhPdZ8N66z2rbUOfSRzxGwMtA==" </del> <ins> "version": "5.6.0-beta.64", "resolved": "https://registry.npmjs.org/@xterm/xterm/-/xterm-5.6.0-beta.64.tgz", "integrity": "sha512-iSKS6tQTFpoN5y487eptlxkUT0jqK5hrvtFQMLugMcQdn7gCUCiFGa4Z1RdqKYSGvAypka+b9gMKPrKWZ7Q3yQ==" </ins> }, "node_modules/@xtuc/ieee754": { "version": "1.2.0",

3 vscode-pull-request-github 0.92.0 gc-excelviewer 4.2.59 todo-tree 0.0.226 search-node-modules 1.3.0 nodejs-repl 0.5.15 rainbow-csv 3.12.0 remote-ssh 0.112.0 remote-ssh-edit 0.86.0 remote-explorer 0.4.3 vscode-css-peek 4.4.1 vscode-yaml 1.15.0 code-spell-checker 3.0.1 vscode-stylelint 1.4.0 vscode-mdx 1.8.9 vscodeintellicode 1.3.1 explorer 1.0.6 vim 1.27.3 pretty-ts-errors 0.6.0 markdown-all-in-one 3.6.2 A/B experiment info: My (BUT, issues are also reproducible when VS Code is started with empty user dir): The log when VS Code is started as : </details
Upstream PR fixing it


Question: import { registerWindowDriver } from 'vs/platform/driver/electron-sandbox/driver'; import { ILabelService } from 'vs/platform/label/common/label'; import { dirname } from 'vs/base/common/resources'; <del> import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity'; </del> export class NativeWindow extends Disposable {

a JS file: to definition on Bug I see this scary notification: <img width="671" alt="Screen Shot 2022-07-26 at 2 31 10 PM" src="https://user-"In this case, the user was likely just trying to view the file Would it be possible to either: show this notification when saving? open these file as ?
This came in via from and I think is not good. This also reminds me that when debugging you may end up in a file from the installation dir. I think we should probably revert the change for now and think about a better solution unless there are objections.
I agree. Maybe pursue your earlier suggestion of opening all installation directory files in readonly mode. Perhaps combine with a scary warning if you save a new file in there.


Question: "@vscode/l10n": "^0.0.11", "jsonc-parser": "^3.2.0", "request-light": "^0.7.0", <del> "vscode-json-languageservice": "^5.3.1", </del> <ins> "vscode-json-languageservice": "^5.3.2", </ins> "vscode-languageserver": "^8.1.0", "vscode-uri": "^3.0.7" },

On Windows: clone open workspace look at the workspace settings: all files are associated with schema . Note that this is a relative path to the workspace file open both files and check that code completion gives back property . You can also click on the JSON language selector ( next to JSON in the status bar) to see the schema that is associated :bug: No code code completion or schema association
76 candidate PR:


Question: let workbenchActionsRegistry = <IWorkbenchActionRegistry>Registry.as(ActionExtensions.WorkbenchActions); workbenchActionsRegistry.registerWorkbenchAction(new SyncActionDescriptor(SaveFileAsAction, SaveFileAsAction.ID, SaveFileAsAction.LABEL, { primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.KEY_S }), category, ['save', 'as']); <del> workbenchActionsRegistry.registerWorkbenchAction(new SyncActionDescriptor(GlobalNewFileAction, GlobalNewFileAction.ID, GlobalNewFileAction.LABEL, { primary: KeyMod.CtrlCmd | KeyCode.KEY_N }), category, ['new', 'file']); </del> <ins> workbenchActionsRegistry.registerWorkbenchAction(new SyncActionDescriptor(GlobalNewUntitledFileAction, GlobalNewUntitledFileAction.ID, GlobalNewUntitledFileAction.LABEL, { primary: KeyMod.CtrlCmd | KeyCode.KEY_N }), category, ['new', 'untitled', 'file']); </ins> workbenchActionsRegistry.registerWorkbenchAction(new SyncActionDescriptor(GlobalCopyPathAction, GlobalCopyPathAction.ID, GlobalCopyPathAction.LABEL, { primary: KeyMod.chord(KeyMod.CtrlCmd | KeyCode.KEY_K, KeyCode.KEY_P) }), category, ['copy', 'path']); workbenchActionsRegistry.registerWorkbenchAction(new SyncActionDescriptor(GlobalRevealInOSAction, GlobalRevealInOSAction.ID, GlobalRevealInOSAction.LABEL, { primary: KeyMod.chord(KeyMod.CtrlCmd | KeyCode.KEY_K, KeyCode.KEY_R) }), category, ['reveal', 'file']);

VSCode Version: 1.0.0 OS Version: OSX 10.11.3 I noticed that we can set to a keybinding. Which creates a nice input field in the sidebar to create the directory at the current selected position. ! But there is no possibility to do this for a file. Yes you can bind but it does not do the same thing. It just creates a new and when pressing <kbdcmd</kbd+ <kbds</kbdyou have to choose the destination in a picker. So, is it possible to add something for a new file as well? It would really improve my speed because I don't have to touch my mouse anymore to create a new named file in a specific directory.
sounds like a good example for a PR?
Yes I looked into it but to be honest, I have to clue where to start :). So if you can point me in the right direction, I would be very happy to do one :).
I would start by fulltext search for the action id () and that brings you here: From there you can get a feeling how this global action works and maybe add the new one. You will also see the one on top for creating an untitled file (which is not what you want). When you find the references of that action you will see where it is being registered to the system:
Alright, awesome. Thank you very much Will see what I can do :).


Question: export class EditorDictationStopAction extends EditorAction2 { <ins> static readonly ID = 'workbench.action.editorDictation.stop'; </ins> constructor() { super({ <del> id: 'workbench.action.editorDictation.stop', </del> <ins> id: EditorDictationStopAction.ID, </ins> title: localize2('stopDictation', "Stop Dictation in Editor"), category: VOICE_CATEGORY, precondition: EDITOR_DICTATION_IN_PROGRESS,

Testing My first reaction for how to stop dictation in the editor was to click the flashing microphone. It would be cool if something happened when the flashing microphone is clicked.
I will turn this into a real with action and hover.


Question: <ins> <?xml version="1.0" encoding="UTF-8"?> <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> <mime-type type="application/x-@@NAME@@-workspace"> <comment>@@NAME_LONG@@ Workspace</comment> <glob pattern="*.code-workspace"/> </mime-type> </mime-info> </ins>

A Visual Studio Code workspace file is currently recognised in Linux as a normal plain text file. This is because there isn't a MIME type for this file. Applications can provide additional MIME types as described here: Not having a MIME type has a couple of issues, for example the files are shown as plain text files in the GUI, which makes it hard to distinguish source code files from the workspace file. This slows down navigating to a workspace and opening it. Find the workspace in the following screenshot ! It's currently impossible to theme such a file because it's not seen as a different MIME type:
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.461 --<!-- potentialduplicatescomment --
This also means that you can't make double clicking the workspace from a file browser open it in vscode, unless you're OK with all text files opening in vscode, which is probably not what most folks want.
This bug has been fixed in to the latest release of ! you can help us out by confirming things are working as expected in the latest Insiders release. If things look good, please leave a comment with the text to let us know. If not, please ensure you're on version of Insiders (today's or later - you can use in the command pallete to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
Hi can you verify this issue? Check out the previous comment.
I tried to verify this but am not sure how to do this myself. I've not used desktop linux extensively; I tried reinstalling Insiders from the on Lubuntu to see if it associated files with VS Code, but that didn't happen.
Verified by installing insiders from on Ubuntu and was able to see mimetype and set a custom icon ! upon uninstalling it was removed.


Question: constructor( @IConfigurationService private readonly configurationService: IConfigurationService, @IBulkEditService private readonly bulkEditService: IBulkEditService, <ins> @IEditorService private readonly editorService: IEditorService, </ins> ) { } async participate(workingCopy: IStoredFileWorkingCopy<IStoredFileWorkingCopyModel>, context: { reason: SaveReason }, progress: IProgress<IProgressStep>, _token: CancellationToken): Promise<void> { if (this.configurationService.getValue('files.insertFinalNewline')) { <del> this.doInsertFinalNewLine(workingCopy, context, progress); </del> <ins> await this.doInsertFinalNewLine(workingCopy, context.reason === SaveReason.AUTO, progress); </ins> } } <del> private async doInsertFinalNewLine(workingCopy: IStoredFileWorkingCopy<IStoredFileWorkingCopyModel>, context: { reason: SaveReason }, progress: IProgress<IProgressStep>): Promise<void> { </del> <ins> private async doInsertFinalNewLine(workingCopy: IStoredFileWorkingCopy<IStoredFileWorkingCopyModel>, isAutoSaved: boolean, progress: IProgress<IProgressStep>): Promise<void> { </ins> if (!workingCopy.model || !(workingCopy.model instanceof NotebookFileWorkingCopyModel)) { return; }

Re , I was editing the endgame notebook in VS Code repo but it keeps moving the cursor to the next line, which breaks typing. It's very likely an issue with these two settings combined "files.autoSave": "afterDelay" We seems to have the same issue for files in text editor but untitled file doesn't suffer from this as it can't be auto saved. I wonder if we should have some special treatment for notebook cells, as it's very usual to create new cells, which are always empty at the beginning, typing in the first line is making it almost impossible. Maybe we could keep the cursor position for this scenario.


Question: "inputValidation.warningBorder": "#ffe055", "inputValidation.errorBackground": "#ffeaea", "inputValidation.errorBorder": "#f1897f", <del> "errorForeground": "#ffeaea", </del> <ins> "errorForeground": "#f1897f", </ins> "badge.background": "#705697AA", "progressBar.background": "#705697" }

VSCode Version: Code 1.13.1 (, 2017-06-14T18:21:47.485Z) OS Version: Windows_NT ia32 10.0. Extensions: ; Steps to Reproduce: color theme "Quiet Light" F something !
What is the expected color? Is the color wrong for the text, the buttons?
I would expect that the color with the current status gets a little bit more contrast...
What do you mean by 'current status'? The box around the 'case sensitive' button?
You actually do not see it, 'cause its contrast is that bad :D ! I see that on a very old monitor, I'm curious it has more contrast than yours. :O
Same issue here. Confirm that the bug exists. It should be instead of Can I send a PR for this? EDIT - Looking at other light theme it should be more of a red color than a gray one. Example - Light( Visual Studio ) has


Question: } return this.userDataProfilesService.createNamedProfile(name); } else { <del> return this.userDataProfilesService.createNamedProfile(profileTemplate.name, { shortName: profileTemplate.shortName, transient: temp }); </del> <ins> return this.userDataProfilesService.createNamedProfile(profileName, { shortName: profileTemplate.shortName, transient: temp }); </ins> } }

<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --<!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.76 Steps to Reproduce: Exported a user profile using the GitHub gist link . The user navigates to the link in their browser, where they enter , and the profile opens in the explore view. At the same time, the profile badge is to the settings icon prior to importing the profile. If the user clicks "Import Profile", they are prompted to overwrite an existing profile. The user has never imported a profile prior to this experience. !
thanks for great repro steps. I can nicely reproduce. Assigning to since it seems like the Profile got applied to before hitting the import button, and hitting the import would double-import.
thanks for fixing can you try with latest Insiders and if it works fine you can add the label. Thanks!
Verified, however the profile badge gets to the Settings icon and to the Profiles list prior to importing the profile, but if you click "Import Profile" it imports as expected. Is this as expected? My assumption was that those would not show up until the Profile is imported. !
Yes. This is to indicate user that the profile is applied in preview mode.


Question: if (!item.row) { item.row = this.cache.alloc(item.templateId); <del> const role = this.ariaProvider.getRole ? this.ariaProvider.getRole(item.element) : 'treeitem'; </del> <ins> const role = this.ariaProvider.getRole ? this.ariaProvider.getRole(item.element) : 'listitem'; </ins> item.row!.domNode!.setAttribute('role', role); const checked = this.ariaProvider.isChecked ? this.ariaProvider.isChecked(item.element) : undefined; if (typeof checked !== 'undefined') {

Currently the list sets the role of each item to be This should only be done for the Tree, not for the list. List should use . More details Tree that actually uses the list should probably pass the role as the getRole to the list it extends from. if you are busy let me know and I can look into this.
We should also verify this nicely works with NVDA, since it is part of aria 1.1 spec.
Sure, PR would be great.
Sure. Assigning to this milestone and if I do not find time might get pushed out.
To verify , turn on NVDA suggest box -make sure that the suggestions do not have "Level 1" read ath the end explorer -make sure the items have appropriate Level read at the end


Question: cacheHitVar: NODE_MODULES_RESTORED displayName: Restore node_modules cache <del> - powershell: 7z.exe x .build/node_modules_cache/cache.7z -aoa -bb </del> <ins> - powershell: 7z.exe x .build/node_modules_cache/cache.7z -aoa </ins> condition: and(succeeded(), eq(variables.NODE_MODULES_RESTORED, 'true')) displayName: Extract node_modules cache

A similar error has appeared for other Azure Pipelines tasks
Odd: one is about extracting first one shows no error at all (copy paste mistake?) second one is about creating a zip
This might actually be a bug on AZDO:
And we might be hitting it due to logging every single file. Let's stop doing that.
I reran the failure for the first one which is why it no longer shows an error here's the precise link to the failure
Thanks!


Question: resolved "https://registry.yarnpkg.com/@vscode/windows-registry/-/windows-registry-1.1.0.tgz#03dace7c29c46f658588b9885b9580e453ad21f9" integrity sha512-5AZzuWJpGscyiMOed0IuyEwt6iKmV5Us7zuwCDCFYMIq7tsvooO9BUiciywsvuthGz6UG4LSpeDeCxvgMVhnIw== <del> "@xterm/addon-canvas@0.6.0-beta.16": version "0.6.0-beta.16" resolved "https://registry.yarnpkg.com/@xterm/addon-canvas/-/addon-canvas-0.6.0-beta.16.tgz#d22ba7f1b211882215c5206ca07ce177378a898f" integrity sha512-o89xcm0Tqy1ksEYMq3EIqxJNDUWJBaS9QUggc7i5vKUL2unw9TMa5IiiNzc3CsBOlBQDlITwEXoHDEbOMxoZPQ== "@xterm/addon-image@0.7.0-beta.14": version "0.7.0-beta.14" resolved "https://registry.yarnpkg.com/@xterm/addon-image/-/addon-image-0.7.0-beta.14.tgz#39b123dd0a0390766aff631cf43cb2e51b3b2174" integrity sha512-oCOIupROzkb5p2vZarY6HrX74OqvtbmjnkC6uuGEJXQ75XL2CX+uTUl2DlgeSTvvR0S8ZVB3hQlp4hrtoNNelA== "@xterm/addon-search@0.14.0-beta.16": version "0.14.0-beta.16" resolved "https://registry.yarnpkg.com/@xterm/addon-search/-/addon-search-0.14.0-beta.16.tgz#5fa21d2b993970e8ced1e0ada3dcca5f7581c314" integrity sha512-e6l5jCJIULQ6nzRcc0gp9obZsqd76qubAr0HZF6Ebxf3KOGRz4UX6g+kgt6RB1liWgG94WD8vI1rGB1z5bMSEg== "@xterm/addon-serialize@0.12.0-beta.16": version "0.12.0-beta.16" resolved "https://registry.yarnpkg.com/@xterm/addon-serialize/-/addon-serialize-0.12.0-beta.16.tgz#68c4d68dba7ff17a231650cc0d07dcc77721877b" integrity sha512-F6ngtvTC5VDLn585uJro7V1xjM43TbjPQjQ6Fn0Uic3+dsQrbPFxZmNZuQOjMZDoYj/febFsuspKjXdpoxo21w== "@xterm/addon-unicode11@0.7.0-beta.16": version "0.7.0-beta.16" resolved "https://registry.yarnpkg.com/@xterm/addon-unicode11/-/addon-unicode11-0.7.0-beta.16.tgz#c4c640cb119290e1d0a6401ac018aba1d71287f9" integrity sha512-sP81NX13madSeATjlBReZbaay17DgatR7dZP6OF8aMyJf6cBVaHMYjTipyw3NnsmjUtBfLc3Alu+JKv8NFteiw== "@xterm/addon-webgl@0.17.0-beta.16": version "0.17.0-beta.16" resolved "https://registry.yarnpkg.com/@xterm/addon-webgl/-/addon-webgl-0.17.0-beta.16.tgz#75466614bf8ea02a3fcb0900df48724c2344d081" integrity sha512-+/eTLvSgYjvRX7oAKfpCDZdotrE8P/asCKXQtXjkbOtYRToI7kWEYfJzfgdFKFgDLKOpDdgY6Bgq384wEewlTA== "@xterm/headless@5.4.0-beta.16": version "5.4.0-beta.16" resolved "https://registry.yarnpkg.com/@xterm/headless/-/headless-5.4.0-beta.16.tgz#d12097c6c2082f14f5650169471eb120ed7600e7" integrity sha512-5GTEzrZzpjfoQrFexULq20Mqc5jbTmhkTBYk0XaE4jeZVdCvsw1yiZNDVj7/66cKOmhQMCxV809p2jQZ/BJ0ww== "@xterm/xterm@5.4.0-beta.16": version "5.4.0-beta.16" resolved "https://registry.yarnpkg.com/@xterm/xterm/-/xterm-5.4.0-beta.16.tgz#eb00506e56ba78c587fcacbada096c2af3693992" integrity sha512-ARzWYQ8LfuZIn47TS8c+XKQhn/1ZVvbHdwlpolZIrT2pTarP+71U1b6cSpF7fV+OIV6tAPA8+q4g/1ZKHuOX8g== </del> <ins> "@xterm/addon-canvas@0.6.0-beta.17": version "0.6.0-beta.17" resolved "https://registry.yarnpkg.com/@xterm/addon-canvas/-/addon-canvas-0.6.0-beta.17.tgz#0bc968a42bcfd477e26cdacd9b1624e3296df97a" integrity sha512-I5qTtbxqXO3vEBzRuEXHjU9tpLABlMxmaoQ43TkSIO5I4jCQ3EIgnLGNTrDf7BQ6H3OxxsxlMp9Ui0jQRxUuSg== "@xterm/addon-image@0.7.0-beta.15": version "0.7.0-beta.15" resolved "https://registry.yarnpkg.com/@xterm/addon-image/-/addon-image-0.7.0-beta.15.tgz#5d18f0702ca7dc1b80c4696448eca949d9a04d4b" integrity sha512-ymt2cbG1P56EamETSKNNLxr0mI8yWnyUxHC6lRFA6mB0PYO++EePSzulrAC/Clk8X3BPbXIZmhBwoxp0VqWAGg== "@xterm/addon-search@0.14.0-beta.17": version "0.14.0-beta.17" resolved "https://registry.yarnpkg.com/@xterm/addon-search/-/addon-search-0.14.0-beta.17.tgz#1f39f02edfa20c3e7f898ddcf73d6b4c8a764e23" integrity sha512-zM/X41hcHu3FNqPOxlzElGdPkOlkCMI8CWKXSlVfUe7EydzJcRDOUvIE1rE+rCumry79O7ThEK7/6FVTH9k3bQ== "@xterm/addon-serialize@0.12.0-beta.17": version "0.12.0-beta.17" resolved "https://registry.yarnpkg.com/@xterm/addon-serialize/-/addon-serialize-0.12.0-beta.17.tgz#cf4ada9104f22427fde915644638d84f8fe45ff9" integrity sha512-OUV0f1fnqJK8oooJ3J8dGfDxDpqf5s8UU7LWNmuGkcJYkfkltMKlo4DHfQ2DaLxdnb+JT0rfu5LojtRi3bvVaw== "@xterm/addon-unicode11@0.7.0-beta.17": version "0.7.0-beta.17" resolved "https://registry.yarnpkg.com/@xterm/addon-unicode11/-/addon-unicode11-0.7.0-beta.17.tgz#0cc609574ccffc683902020f549671e4c36dcf1c" integrity sha512-VLwnBy3OlzdUy6NGQwS95qDHkgzDfSRssjxJc9YTqOBCz87LD00oKRVDJOa6SMhxXYm7nPyVlC6J6CBSivcLmQ== "@xterm/addon-webgl@0.17.0-beta.17": version "0.17.0-beta.17" resolved "https://registry.yarnpkg.com/@xterm/addon-webgl/-/addon-webgl-0.17.0-beta.17.tgz#aa4dd17c9e8b57185b001e8fac1e23cd1fc5a456" integrity sha512-XvCpPb+jZfb6aHFf+DhgtRcvDz8VA+ZnPa0YfrZWszGoBzNJ4tqWXy6gerRulk20SGilY0UBCfV1f4DIs/HQPg== "@xterm/headless@5.4.0-beta.17": version "5.4.0-beta.17" resolved "https://registry.yarnpkg.com/@xterm/headless/-/headless-5.4.0-beta.17.tgz#13ff28cf8708d1d7668ecf27008a837f4002af94" integrity sha512-5Os8Wa+5+9/KA8FdHvAgdzmFGUTZv9DtHjZgtXB1hX0/yx2sCaDQgPYSwt5w52GYhh5HOxx6Olo4exb9lrKvAw== "@xterm/xterm@5.4.0-beta.17": version "5.4.0-beta.17" resolved "https://registry.yarnpkg.com/@xterm/xterm/-/xterm-5.4.0-beta.17.tgz#08897de7274a3431accf525a147a7e6034a64573" integrity sha512-EhQsTHeO7VhCOnYLdrowWAqEbmZKf6k6Z/Rd3GriikB394jivux6OBcJbt7QdewIOAKqFah53d4rNXfz3/6mwQ== </ins> agent-base@^7.0.1, agent-base@^7.0.2, agent-base@^7.1.0: version "7.1.0"

<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes/No <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --VS Code Version: Version: 1.85.0 (Universal) OS Version: Darwin arm64 22.5.0 Terminal input doesn't work ( is too slow almost feels like not working ) when using in Aux Window. Steps to Reproduce: Open Aux Terminal Window In Full Screen Mode or make it Full screen afterwords.
This seems to be working in OSS Dev container.
This looks to me like a case of scheduling something on the main window which gets throttled once hidden. is the terminal using scheduler for rendering such as RAF or ?
I can reproduce and its pretty bad.
off-topic: is there a way to move panel to separate window. e.g. bottom drawer or individually like terminal, debug console ?
PR fixing it


Question: opts.selection = previousSelection; const editor = await window.showTextDocument(document, opts); // This should always be defined but just in case <del> if (previousVisibleRange) { editor.revealRange(previousVisibleRange); </del> <ins> if (previousVisibleRanges && previousVisibleRanges.length > 0) { let rangeToReveal = previousVisibleRanges[0]; if (previousSelection && previousVisibleRanges.length > 1) { // In case of multiple visible ranges, find the one that intersects with the selection rangeToReveal = previousVisibleRanges.find(r => r.intersection(previousSelection)) ?? rangeToReveal; } editor.revealRange(rangeToReveal); </ins> } } }

When using the new diff editor with enabled, I very rarely get to the right editor position whenever I click the top action, above the editor.
You mean go to reference is broken?
diff editors have an action to open the original file (I think contributed from SCM?). When clicking that, expectation is that the current view state of the diff editors right hand side applies to the opening editor so that you stay in exactly the same view state (for example: the selection and viewport). <img width="140" alt="image" src=""
I really like the collapsed diff editor but this is a very frustrating regression from it which makes me want to shut it off. The issue is 100% reproducible in my usual workflow and I encounter this issue many times per hour.
I can reproduce. The "Open File" command is a mystery to me. Debugging shows me that is called twice, but both times with unhelpful stack traces: ! ! The second invocation sets . However, there is no reveal mechanism.
Further investigation showed that the "Open File" action is actually implemented in the git extension (even when comparing two files on disk) :/ Which I think is very questionable design, as it should be a core diff editor feature.


Question: })); const closeBtn = this._register(new SimpleButton({ <del> label: NLS_CLOSE_BTN_LABEL, </del> <ins> label: NLS_CLOSE_BTN_LABEL + (options.closeWidgetActionId ? this._getKeybinding(options.closeWidgetActionId) : ''), </ins> icon: widgetClose, onTrigger: () => { this.hide();

Terminal: <img width="328" alt="image" src=""Editor: <img width="436" alt="image" src=""


Question: if (thing instanceof URI) { return true; } <del> if (!thing) { return false; </del> <ins> if (thing) { return typeof (<URI>thing).authority === 'string' && typeof (<URI>thing).fragment === 'string' && typeof (<URI>thing).path === 'string' && typeof (<URI>thing).query === 'string' && typeof (<URI>thing).scheme === 'string' && typeof (<URI>thing).fsPath === 'function' && typeof (<URI>thing).with === 'function' && typeof (<URI>thing).toString === 'function'; </ins> } <del> return typeof (<URI>thing).authority === 'string' && typeof (<URI>thing).fragment === 'string' && typeof (<URI>thing).path === 'string' && typeof (<URI>thing).query === 'string' && typeof (<URI>thing).scheme === 'string' && typeof (<URI>thing).fsPath === 'function' && typeof (<URI>thing).with === 'function' && typeof (<URI>thing).toString === 'function'; </del> <ins> return false; </ins> } /**

Issue Type: <bBug</bdeveloper tools themes Everything appears to work as normal, but the console gets flooded with errors. VS Code version: Code - Insiders 1.36.0-insider (, 2019-06-14T10:36:51.530Z) OS version: Darwin x64 18.6.0 <details<summarySystem Info</summary </details<details<summaryExtensions (13)</summaryExtensionVersion ------ vscode-eslint1.9.0 gitlens9.8.2 vsc-material-theme2.9.0 remote-containers0.61.0 remote-ssh-edit-nightly2019.6. remote-ssh-explorer-nightly2019.6. remote-ssh-nightly2019.6. vscode-typescript-tslint-plugin1.1.0 debugger-for-chrome4.11.3 vscode-docker0.6.2 material-icon-theme3.8.0 polacode0.3.2 vscode-sort-json1.13.0 </details<!-- generated by issue reporter --
I can't repo this. Which developer tools and theme are you talking about specifically?
I tried repoing this again and it appears that this error is related to installing a new theme. Here are some better repo steps: developer tools themes (no errors) a theme themes (errors even if it is one of the themes shipped with VS code) The errors go away after a reload, but installing a theme does not tell me a reload is required.
Ok, with the extensions view open, I sometimes see Does not cause seem to cause any actual problems
I get that as well sometimes, but do you not get the webview must be attached to the DOM error as well?
I can reproduce it. Steps: on any extension to load it's Readme in an editor that editor theme (this triggers the webview error) step 1 (this triggers the guestInstanceId error)


Question: import { Position } from '../../../../../editor/common/core/position.js'; import { Range } from '../../../../../editor/common/core/range.js'; import { IWordAtPosition, getWordAtText } from '../../../../../editor/common/core/wordHelper.js'; <del> import { CompletionContext, CompletionItem, CompletionItemKind } from '../../../../../editor/common/languages.js'; </del> <ins> import { CompletionContext, CompletionItem, CompletionItemKind, CompletionList } from '../../../../../editor/common/languages.js'; </ins> import { ITextModel } from '../../../../../editor/common/model.js'; import { ILanguageFeaturesService } from '../../../../../editor/common/services/languageFeatures.js'; import { localize } from '../../../../../nls.js'; import { Action2, registerAction2 } from '../../../../../platform/actions/common/actions.js'; import { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js'; <del> import { ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; </del> <ins> import { IInstantiationService, ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js'; </ins> import { Registry } from '../../../../../platform/registry/common/platform.js'; import { IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions } from '../../../../common/contributions.js'; import { SubmitAction } from '../actions/chatExecuteActions.js'; import { IChatWidget, IChatWidgetService } from '../chat.js'; import { ChatInputPart } from '../chatInputPart.js'; <del> import { SelectAndInsertFileAction } from './chatDynamicVariables.js'; </del> <ins> import { ChatDynamicVariableModel, SelectAndInsertFileAction } from './chatDynamicVariables.js'; </ins> import { ChatAgentLocation, getFullyQualifiedId, IChatAgentData, IChatAgentNameService, IChatAgentService } from '../../common/chatAgents.js'; import { ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestTextPart, ChatRequestToolPart, ChatRequestVariablePart, chatAgentLeader, chatSubcommandLeader, chatVariableLeader } from '../../common/chatParserTypes.js'; import { IChatSlashCommandService } from '../../common/chatSlashCommands.js'; <del> import { IChatVariablesService } from '../../common/chatVariables.js'; </del> <ins> import { IChatVariablesService, IDynamicVariable } from '../../common/chatVariables.js'; </ins> import { ILanguageModelToolsService } from '../../common/languageModelToolsService.js'; import { LifecyclePhase } from '../../../../services/lifecycle/common/lifecycle.js'; <ins> import { IHistoryService } from '../../../../services/history/common/history.js'; import { ILabelService } from '../../../../../platform/label/common/label.js'; import { ResourceSet } from '../../../../../base/common/map.js'; import { CommandsRegistry } from '../../../../../platform/commands/common/commands.js'; import { isPatternInWord } from '../../../../../base/common/filters.js'; import { ISearchService } from '../../../../services/search/common/search.js'; import { QueryBuilder } from '../../../../services/search/common/queryBuilder.js'; import { IWorkspaceContextService } from '../../../../../platform/workspace/common/workspace.js'; import { URI } from '../../../../../base/common/uri.js'; </ins> class SlashCommandCompletions extends Disposable { constructor(

Today which have which triggers quick pick to select a file. This issue is about also allowing to type a file name and have dynamic suggestions, like inserts


Question: chClass = (hasOpenCurlyBracket ? CharacterClass.None : CharacterClass.ForceTermination); break; default: <del> chClass = (chCode < characterClassesLength ? characterClasses[chCode] : CharacterClass.None); </del> <ins> chClass = characterClassifier.classify(chCode); </ins> } // Check if character terminates link

VSCode Version: 1.0 OS Version: OS X 10.11.4 I just upgraded my VSCode to 1.0 release. Since it supports Traditional Chinese now, my default language was set to so that some of comments in the newly config file is in Chinese. As you can see in the following screenshot, a Chinese character "", which is equivalent to the period "." in English, was matched as part of valid URL, and it caused VSCode direct to a incorrect URL. ! I have a working fix for this issue, the naive solution is to check if in is greater than 128, which means a non-ASCII character. Why to match only ASCII character? Because when you copy a URL from most of web browsers to clipboard, it will be automatically converted into ASCII-only string. Also, I came up with another idea to modify the to let it cache all the result of ASCII characters (0~127). In this way, we only need to modify the default case of the switch clause in the state machine. Which solution is more preferable? Please give me some advice then I can submit the patch ASAP.


Question: private readonly _diffs: RangeMapping[], private readonly _selection: boolean, ) { <del> this._domNode.onmousedown = e => { </del> <ins> super(); this._register(addDisposableListener(this._domNode, EventType.MOUSE_DOWN, e => { </ins> // don't prevent context menu from showing up if (e.button !== 2) { e.stopPropagation(); e.preventDefault(); } <del> }; this._domNode.onmouseup = e => { </del> <ins> })); this._register(addDisposableListener(this._domNode, EventType.MOUSE_UP, e => { </ins> e.stopPropagation(); e.preventDefault(); <del> }; this._domNode.onclick = (e) => { </del> <ins> })); this._register(addDisposableListener(this._domNode, EventType.CLICK, (e) => { </ins> this._widget.revertRangeMappings(this._diffs); e.stopPropagation(); e.preventDefault(); <del> }; </del> <ins> })); </ins> } /**

<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.85.0 OS Version: Ubuntu 23.04 a file with contents a file with contents the explorer, right click on file and select the explorer, right click on file and select , opening the diff editor the diff editor that , and event listeners have been but not been removed The issue is not present in VS Code 1.84.2. It seems to be caused by


Question: return undefined; } <ins> private refreshModels(resolvedSettingsRoot: ITOCEntry<ISetting>) { this.settingsTreeModel.update(resolvedSettingsRoot); this.tocTreeModel.settingsTreeRoot = this.settingsTreeModel.root as SettingsTreeGroupElement; } </ins> private async onConfigUpdate(keys?: ReadonlySet<string>, forceRefresh = false, schemaChange = false): Promise<void> { if (keys && this.settingsTreeModel) { return this.updateElementsByKey(keys);

<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Unknown- repro uses a virtual workspace <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: OS Version: Version: 1.80.0 Commit: Date: 2023-07-04T15:06:02.407Z Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Code/1.80.0 Chrome/108.0.5359.215 Electron/22.3.14 Safari/537.36 Steps to Reproduce: a Github repository using "GitHub Repositories" extension, eg microsoft/vscode "Settings (JSON)" and add all tabs except Getting Started Extensions panel, search for " typescript" the Typescript and JavaScript Language Features extension and Reload Window "Settings (UI)" and search for typescript- no settings appear. Close "Settings (UI)" Extensions panel, search for " typescript" and re-enable the extension. Note, the extension activates immediately, the panel doesn't recommend Reload Window. "Settings (UI)" and search for typescript- Actual: no settings appear. Expected: settings appear


Question: return tokenizeToString(languageService, code, languageId); } }), <del> MarkedGfmHeadings.gfmHeadingId(), </del> <ins> markedGfmHeadingIdPlugin(), </ins> ...(options?.markedExtensions ?? []), );

<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --<!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: Version: 1.93.0-insider (user setup) Commit: Date: 2024-09-04T13:13:15.344Z Electron: 30.4.0 ElectronBuildId: Chromium: 124.0.6367.243 20.15.1 V8: 12.4.254.20-electron.0 OS: Windows_NT x64 10.0. OS Version: Windows 11 Insiders Steps to Reproduce: in the first paragraph doesn't appear to be a link, which I was surprised about: ! I hover over it, I see it's supposed to be a link, but clicking on it does nothing: ! The other docs links at the bottom of the playground appear correctly as links and do open when I click on them: !
This seems related to the bookmark issue we had in the release notes. The other bookmark links in the interactive playground don't work either.
Fixed the toc links. Need another fix for the documentation link too (which use command uris)
The Editor Playground is not showing at all anymore in the latest insiders. When selecting the Editor Playground menu item, a black editor comes up.
hm working from oss builds. Insiders, it seems like the error is:
Actually unrelated. Seems like a duplicate of and fixed by


Question: padding-left: 7px; } <del> .monaco-workbench .debug-actions-widget .monaco-action-bar .action-item.select-container { margin-right: 7px; </del> <ins> .monaco-workbench .debug-actions-widget .monaco-action-bar .action-item { height: 32px; </ins> } <del> .monaco-workbench .debug-actions-widget .monaco-action-bar .action-item .monaco-select-box { margin-top: 6px; </del> <ins> .monaco-workbench .debug-actions-widget .monaco-action-bar .action-item.select-container { margin-right: 7px; </ins> } .monaco-workbench .debug-actions-widget .drag-area {

!
when we triage issues assigned to ourselves we usually use the milestone, anything that will be fixed in this milestone we put to june. Appart from that adding the bug label is usually good so this issue gets verified in the endgame (since it is june and bug). Assigning issues to other team members we usually leave with no label and milestone so the owner can triage and assign it. Cheers
thanks, I'll make sure and mark them appropriately next time!


Question: export class NewExplorerItem extends ExplorerItem { constructor(fileService: IFileService, parent: ExplorerItem, isDirectory: boolean) { super(URI.file(''), fileService, parent, isDirectory); <ins> this._isDirectoryResolved = true; </ins> } }

Issue Type: <bBug</bclick folder some chars and drag to the left to release GIF ! VS Code version: Code 1.41.1 (, 2019-12-18T14:58:56.166Z) OS version: WindowsNT x64 10.0. <details<summarySystem Info</summary </details<details<summaryExtensions (29)</summaryExtensionVersion ------ vscode-css-formatter1.0.1 markdown-preview-github-styles0.1.6 vscode-intelephense-client1.3.9 vscode-markdownlint0.34.0 vscode-html-css0.2.3 php-debug1.13.0 auto-js-vscodeext0.2.3 composer0.7.1 markdown-shortcuts0.12.0 hex-rgba-converter1.0.4 php-namespace-resolver1.1.8 code-beautifier2.3.3 vscode-language-pack-zh-hans1.41.2 remote-ssh0.48.0 remote-ssh-edit0.49.0 remote-ssh-explorer0.49.0 cpptools0.26.3 Go0.13.0 php-docblocker2.1.0 vetur0.23.0 vscode-php-getters-setters1.2.3 minapp-vscode2.2.2 java0.55.1 vscode-xml0.10.1 datetime1.0.5 code-settings-sync3.4.3 vscode-java-pack0.8.1 vscode-preview-server1.3.0 html-css-class-completion1.19.0 </details<!-- generated by issue reporter --
I can not reproduce this. Thanks for filling this issue. Can you reproduce using Visual Studio Code Insiders
reproduce too !
I can not reproduce this both on macOS and Windows and I am doing the same thing as you. Let's leave this open as see if more users hit this. If you are interested in providing a PR which fixes this, here's a code poitner
reproduced as well, make sure you release the drag on the arrow icon.
pushed a fix for this. Please try it out in VS Code insiders from Wednesday and let us know if you still see the issue. Thanks
Thanks, but have a new problem: Input is cleared !


Question: export class NewExplorerItem extends ExplorerItem { constructor(fileService: IFileService, parent: ExplorerItem, isDirectory: boolean) { super(URI.file(''), fileService, parent, isDirectory); <ins> this._isDirectoryResolved = true; </ins> } }

Yeah I also saw that, it's caused because when "expanding" the row element the tree refreshes and the previous value in the input is lost. But I think that doesn't look as bad as the previous behavior where the children got duplicated


Question: import { IWorkspaceIdentifier, WORKSPACE_EXTENSION } from 'vs/platform/workspace/common/workspace'; import { IWorkspacesManagementMainService } from 'vs/platform/workspaces/electron-main/workspacesManagementMainService'; import { ResourceMap } from 'vs/base/common/map'; <ins> import { IDialogMainService } from 'vs/platform/dialogs/electron-main/dialogMainService'; </ins> export const IWorkspacesHistoryMainService = createDecorator<IWorkspacesHistoryMainService>('workspacesHistoryMainService');

Type: <bBug</bany open windows. to File Open Recent and click Clear Recently Opened. VS Code version: Code 1.83.1 (, 2023-10-10T23:46:55.789Z) OS version: Darwin x64 20.6.0
<!-- 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!
/verified


Question: "version": "0.0.0", "private": true, "dependencies": { <ins> "@bpasero/watcher": "https://github.com/bpasero/watcher.git#3e5e50c275590703f3eb46fac777b720e515d0d5", </ins> "@microsoft/1ds-core-js": "^3.2.13", "@microsoft/1ds-post-js": "^3.2.13", "@parcel/watcher": "2.1.0",

<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes. After updating to VS Code 1.92, I noticed several scroll-related issues with the integrated terminal: exiting a full screen CLI app ( or ), sometimes scroll up or down doesn't work anymore until I press cmd+c - at which point I am teleported back to the start of the cli log. See the below video: start scroll works (though way too sensitive - see issue 2) press scroll up down no longer works press as soon as I try to scroll again, I am teleported to the top of the cli log output (though, at least scroll works after that)Note, while the above triggers the issue, sometimes the issue also occurs even without that (at one point I just run and this bug was triggered) full-screen CLI apps (, , ), the scroll sensitivity is way higher than when scrolling in non-full-screen apps. This scroll sensitivity is uncomfortably high, way higher than it was before, and remains high even if I set to a very low value like 0.1. scrolling through full-screen CLI app ( or ), sometimes the terminal will not let me scroll up. If I try to scroll up, I am "teleported" back to previous position. As soon as I scroll down, I can't scroll back up to the previous text. <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --Relevant information: VS Code Version: 1.92 OS Version: macOS 14.5 Issues are reproducible in ZSH.


Question: "version": "0.0.0", "private": true, "dependencies": { <ins> "@bpasero/watcher": "https://github.com/bpasero/watcher.git#3e5e50c275590703f3eb46fac777b720e515d0d5", </ins> "@microsoft/1ds-core-js": "^3.2.13", "@microsoft/1ds-post-js": "^3.2.13", "@parcel/watcher": "2.1.0",

I was also able to trigger issue 1 in BASH In ZSH, I am using oh-my-zsh and powerlevel19k, BUT I was able to reproduce the issues even after I temporary disabled oh-my-zsh and powerlevel19k in my Issues are reproducible even if I start VS Code with empty user dir and empty extensions dir. A few relevant settings: is off. Enabling it does not make things better N/A as I am not holding the key - I am just scrolling using the touchpad is off. Enabling it did not make things better I am sorry if some of the above reproduction steps a bit vague - some of these don't happen each time so it's hard to see what triggered it. But these all started happening as soon as VS Code got updated to 1.92. I will keep updating this issue if I have more details. <details<summarySystem info</summaryGeneral: System info: System Information | -- | -- CPUs | Apple M1 Pro (10 x 2400) GPU Status | 2dcanvas: enabled canvasooprasterization: enabledon directrenderingdisplaycompositor: disabledoffok gpucompositing: enabled multiplerasterthreads: enabledon opengl: enabledon rasterization: enabled rawdraw: disabledoffok skiagraphite: disabledoff videodecode: enabled videoencode: enabled webgl: enabled webgl2: enabled webgpu: enabled webnn: disabled_off Load (avg) | 2, 2, 3 Memory (System) | 32.00GB (6.06GB free) Process Argv | /Users/mak13180/site/esri/arcgis-web-components --crash-reporter-id -0746-4857-a17b- Screen Reader | no VM | 0% Enabled extensions (BUT, issues are reproducible with all extensions disabled): Extension Version -- -- vite 0.2.5 shell-syntax 1.0.5 vscode-tailwindcss 0.12.5 vscode-eslint 3.0.10 apc-extension 0.4.1 gitlens 15.2.3 vscode-html-css 2.0.10 prettier-vscode 10.4.0 lintlens 7.5.0 copilot 1.219.0 copilot-chat 0.18.1 vscode-github-actions 0.26.


Question: "version": "0.0.0", "private": true, "dependencies": { <ins> "@bpasero/watcher": "https://github.com/bpasero/watcher.git#3e5e50c275590703f3eb46fac777b720e515d0d5", </ins> "@microsoft/1ds-core-js": "^3.2.13", "@microsoft/1ds-post-js": "^3.2.13", "@parcel/watcher": "2.1.0",

3 vscode-pull-request-github 0.92.0 gc-excelviewer 4.2.59 todo-tree 0.0.226 search-node-modules 1.3.0 nodejs-repl 0.5.15 rainbow-csv 3.12.0 remote-ssh 0.112.0 remote-ssh-edit 0.86.0 remote-explorer 0.4.3 vscode-css-peek 4.4.1 vscode-yaml 1.15.0 code-spell-checker 3.0.1 vscode-stylelint 1.4.0 vscode-mdx 1.8.9 vscodeintellicode 1.3.1 explorer 1.0.6 vim 1.27.3 pretty-ts-errors 0.6.0 markdown-all-in-one 3.6.2 A/B experiment info: My (BUT, issues are also reproducible when VS Code is started with empty user dir): The log when VS Code is started as : </details
Upstream PR fixing it


Question: default: defaults.sticky, description: nls.localize('hover.sticky', "Controls whether the hover should remain visible when mouse is moved over it.") }, <ins> 'editor.hover.below': { type: 'boolean', default: defaults.below, description: nls.localize('hover.below', "Show hovers below the line instead of above, if there's space.") }, </ins> } ); }

Issue Type: <bFeature Request</bI want the message could display under the variables it refers to. Because the message box blocks the code over the current line. Thank you. VS Code version: Code 1.36.1 (, 2019-07-08T22:59:35.033Z) OS version: Windows_NT x64 10.0.


Question: <del> <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.784 8L13 11.217 11.215 13 8.001 9.786 4.785 13 3 11.216l3.214-3.215L3 4.785 4.784 3 8 6.216 11.216 3 13 4.785 9.784 8.001z" fill="#C5C5C5"/></svg> </del>  No newline at end of file <ins> <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.428 8L12 10.573 10.572 12 8 9.428 5.428 12 4 10.573 6.572 8 4 5.428 5.427 4 8 6.572 10.573 4 12 5.428 9.428 8z" fill="#E8E8E8"/></svg> </ins>  No newline at end of file

When tabs are enabled, the close button is slightly larger and unbalances the tab. This button should be different than when tabs are disabled and the close button is moved to the editor toolbar. !


Question: callback(true); } <del> private _addTooltipEventListeners(element: HTMLElement) { </del> <ins> private _addTooltipEventListeners(element: HTMLElement): void { </ins> let timeout = null; let isMessageShowing = false; this._tooltipDisposables.push(dom.addDisposableListener(element, dom.EventType.MOUSE_OVER, () => {

Testing Insiders dated 28th March, 2017 Happens in linux and windows <img width="333" alt="screen shot 2017-03-28 at 11 42 13 am" src=""


Question: id: MenuId.EditorTitle, when: ctxIsMergeEditor, group: 'navigation', <ins> order: 3 </ins> }, ], f1: true,

Same as when opening a diff editor, a merge editor should offer a way to open the regular file (not in 3 way merge mode). Same as diff editor it could use an action in the editor title area !
Let's move this to July
To verify: open a merge editor verify its title bar has a command to open the result file
I wonder if "Open Changes" button should go back to the merge editor then? !


Question: if (!result.matches(editor)) { const targetGroups = editor.hasCapability(EditorInputCapabilities.Untitled) ? this.editorGroupService.groups.map(group => group.id) /* untitled replaces across all groups */ : [groupId]; for (const targetGroup of targetGroups) { <ins> const resolvedEditor = await this.editorResolverService.resolveEditor({ resource: result.resource, }, targetGroup); </ins> const group = this.editorGroupService.getGroup(targetGroup); <del> await group?.replaceEditors([{ editor, replacement: result, options: editorOptions }]); </del> <ins> if (resolvedEditor !== ResolvedStatus.ABORT && isEditorInputWithOptionsAndGroup(resolvedEditor)) { // dispose the previous result before replacing with the resolved editor saveResults.pop()?.dispose(); saveResults.push(resolvedEditor.editor); await group?.replaceEditors([{ editor, replacement: resolvedEditor.editor, options: editorOptions }]); } else { await group?.replaceEditors([{ editor, replacement: result, options: editorOptions }]); } </ins> } } }

Testing Scenario: Have a webview editor extension installed that contributes for .txt. Create a new file. Enter something in it so it isn't empty. Save it as What should happen next? Currently, nothing happens. It stays in the default VS Code editor. It might make sense to have the choose editor quick pick open.
Fixing this was more challenging than expected, pushing to November
It looks like renaming works and opens in the custom editor per my preferences, but if I save an untitled file as in the issue, nothing happens.
Marking for April Custom editors use to open a custom editor in place of the default editor. When a untitled editor is saved, is called but this goes directly to which bypasses the . Let me know if there's some other event we can listen to to detect when an untitled editor is saved. I couldn't find anything while debugging through the code
I guess this needs to be wired in, PR welcome.
I believe this will also apply to notebooks. I'll let you know what I come up with
Assigning you since this seems like something we should think about for all editor types, including notebooks
I discussed this issue a bit with Kai and it doesn't sound like we will be fixing this any time soon. The main drive is for notebooks where you see "Hey this is a .ipnyb file, install the jupyter extension" and then the user clicks install but there ipnyb is still plain JSON. The goal for that is to allow rendering of those files without execution if no extension is installed. For the other cases it's not nearly as important as most files have a usable text editor type. We want to reduce the number of notifications as much as possible and switching the file for the user could be extremely jarring.
Since I just came across the relevant code, we have a way to replace an editor when it is saved (to a different path or when saving untitled): This code does not go through any override but rather takes the typed editor input as it was returned from the implementation. If we were to change that logic, we probably would have to ask method to return an untyped input without override, or at least make sure the text based editors don't set the override.
I think that there needs to be better UX if we were to implement this as a saveAs causing an editor type switch can be jarring.


Question: if (!result.matches(editor)) { const targetGroups = editor.hasCapability(EditorInputCapabilities.Untitled) ? this.editorGroupService.groups.map(group => group.id) /* untitled replaces across all groups */ : [groupId]; for (const targetGroup of targetGroups) { <ins> const resolvedEditor = await this.editorResolverService.resolveEditor({ resource: result.resource, }, targetGroup); </ins> const group = this.editorGroupService.getGroup(targetGroup); <del> await group?.replaceEditors([{ editor, replacement: result, options: editorOptions }]); </del> <ins> if (resolvedEditor !== ResolvedStatus.ABORT && isEditorInputWithOptionsAndGroup(resolvedEditor)) { // dispose the previous result before replacing with the resolved editor saveResults.pop()?.dispose(); saveResults.push(resolvedEditor.editor); await group?.replaceEditors([{ editor, replacement: resolvedEditor.editor, options: editorOptions }]); } else { await group?.replaceEditors([{ editor, replacement: result, options: editorOptions }]); } </ins> } } }

I don't love the notification approach but maybe something along those lines. User gets prompted that there is an ew editor type for this resource -user can choose to switch or set automatic switching -editor switches. If automatic switching enabled we no longer prompt and just switch anyways for that resource type
Yup agreed, didn't mean to ask to solve this now, just wanted to keep track of the location in code where this is currently decided
To verify: an untitled file it as jupyter notebook should be created your setting to have the entry steps 1 and 2 with a different file name shouldn't switch to a notebook, it should stay as a text
I tried above steps with the GitHub issue notebook extension instead and when I come to step 5. and save an untitled editor as "", that editor actually closes.
My settings: My extensions: Video: !


Question: reactionCount.innerText = `${action.count}`; } } <ins> protected override getTooltip(): string | undefined { const action = this.action as ReactionAction; const toggleMessage = action.enabled ? nls.localize('comment.toggleableReaction', "Toggle reaction, ") : ''; if (action.count === undefined) { return nls.localize('comment.reactionLabelNone', "{0}{1} reaction", toggleMessage, action.label); } else if (action.count === 1) { return nls.localize('comment.reactionLabelOne', "{0}1 reaction with {1}", toggleMessage, action.label); } else if (action.count > 1) { return nls.localize('comment.reactionLabelMany', "{0}{1} reactions with {2}", toggleMessage, action.count, action.label); } return undefined; } </ins> } export class ReactionAction extends Action { static readonly ID = 'toolbar.toggle.reaction';

Microsoft/vscode Tested using VoiceOver on MacOS Issues The add reaction button on the right side is currently read out atWhen focusing on a reaction in the context menu, it is read as just the emoji name. Github instead reads each option asThe existing reactions do not have helpful voice text. They should be read as the reaction name and number of reactionsThe add reaction button the right of existing reactions also does not have helpful voice over labels
This is now read as "Toggle Reaction" Since this uses a context menu, this is intentional. Menus don't have special aria labels. This now reads a more useful "Toggle reaction, x reactions with y" message. Same as above since this is a menu.
This seems improved but I can't get it to read the menu when I tab from the comment to the react menu button. It doesn't read anything when I use the arrow keys to move focus between menu buttons. If I expand the menu with space, then it reads the menu name. It looks like this, so I guess voiceover is stuck on the full comment context even though focus has moved. Not a voiceover expert though, is that an issue or should I be using other nav keys anyway? <img width="610" alt="image" src="https://user-"


Question: z-index: 2; position: relative; } <del> .xterm.terminal.hide { display: none; } </del>

Type: <bBug</bcc: Since Friday the 3rd, I have not been able to access the terminal accessibility buffer in my linux environment. I activate a terminal and am informed by orca about accessibility in the terminal. But pressing shift+tab does not move the focus to the accessibility buffer. Am I doing something wrong or has something changed from day 3? VS Code version: Code - Insiders 1.77.0-insider (, 2023-03-06T05:21:55.128Z) OS version: Linux x64 6.1.14-200.fc37.x8664 Modes: Sandboxed: Yes <details<summarySystem Info</summary </details<details<summaryExtensions (39)</summaryExtensionVersion ------ doxdocgen1.4.0 vscode-markdownlint0.49.0 vscode-chatgpt3.9.4 rest-client0.25.1 better-cpp-syntax1.17.2 azure-pipelines1.208.0 vscode-docker1.24.0 csharp1.25.4 vscode-dotnet-runtime1.6.0 vscode-kubernetes-tools1.3.11 remote-containers0.283.0 remote-ssh0.99. remote-ssh-edit0.84.0 azure-account0.11.3 cmake-tools1.13.45 cpptools1.14.4 cpptools-extension-pack1.3.0 makefile-tools0.6.0 powershell-preview2023.2.1 remote-explorer0.3. vsliveshare1.0.5832 oracledevtools21.5.0 fabric8-analytics0.3.6 java1.16. vscode-xml0.25. vscode-yaml1.11.0 sonarlint-vscode3.15.1 cmake0.0.17 intellicode-api-usage-examples0.2.7 vscodeintellicode1.2.30 vscode-boot-dev-pack0.2.1 vscode-spring-boot1.44.0 vscode-java-debug0.49. vscode-java-dependency0.21. vscode-java-pack0.25. vscode-java-test0.38. vscode-maven0.40.


Question: z-index: 2; position: relative; } <del> .xterm.terminal.hide { display: none; } </del>

vscode-spring-boot-dashboard0.11.1 vscode-spring-initializr0.11.2 (1 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
You can use this command for now, but I can repro the issue
The other change that has been made here is tab moves focus mode has to be on for that keybinding to work. This prevents issues where the terminal should be handling shift + tab such as for or autocomplete. The clause for this command can be configured in the keybindings editor though if you do not like this behavior.
After using the command Terminal: Focus Accessible Buffer, the behavior was a little strange. focus is on the accessible buffer, the tab key does not move focus to the terminal, but to the status bar. When I'm in the accessible buffer I need to press tab and then shift+tab to access the terminal. seems that the accessible buffer is not always updated when I execute a command in the terminal.
Yes thanks, covered in these issues:


Question: z-index: 2; position: relative; } <del> .xterm.terminal.hide { display: none; } </del>

there's an issue now because tabbing goes to the status bar instead of the terminal. I see that isn't set on the element. even when I set that explicitly, it seems like it's removed Originally posted by in


Question: }); } <del> private getNthDirname(path: ParsedPath, n: number): string | undefined { </del> <ins> private getNthDirname(path: string, n: number): string | undefined { </ins> // grand-parent/parent/filename.ext1.ext2 -> [grand-parent, parent] <del> const pathFragments = path.dir.split('/'); </del> <ins> const pathFragments = path.split('/'); </ins> const length = pathFragments.length; <del> const nth = length - 1 - n; if (nth < 0) { return undefined; </del> <ins> let nthDir; if (n < 0) { const nth = Math.abs(n) - 1; nthDir = pathFragments[nth]; } else { const nth = length - 1 - n - 1; // -1 for the filename, -1 for 0-based index nthDir = pathFragments[nth]; </ins> } <del> const nthDir = pathFragments[nth]; </del> if (nthDir === undefined || nthDir === '') { return undefined; }

Currently, the editor does not support customizing file labels in a way that would allow filenames to be prefixed with the name of the application or folder from the start of the path. This limitation affects projects structured in a monorepo setup, particularly when files are deeply nested within application-specific directories. Supporting negative indices for could solve this problem. This would enable accessing folder names starting from the beginning of the path. Implementing negative indices would cater to the needs of projects with files at various nesting levels within their structure.
Is the reasoning not the other way round or am I misunderstanding how it currently works? E.g. I'd like to access last 2 parts of the path, but the description of the settings suggests that only the single final and the starting folders can be accessed.
For the following path you will get the following values: Path: : : : : With negative indices: : : :
Here is an example of the mono repo: It has a root and multiple projects in the folder. It is common to make changes in multiple "packages" at once, and it would be convenient if we could identify files by the . Example: -
Verification steps: a custom editor label. The template should include , for which is a negative number. For example, add in , item: value: a file which matches the pattern specified in step 1. For the example specified in step 1: every file matches the pattern editor tab should have set the correct folder name for . Here an explanation on how negative indices work: For the example specified in step 1: the name of the editor in the tab should start with the top level folder the file is located in. In the vscode repo the file would have the custom name
I have followed the steps for the verification and the settings file is renamed to . The TS files are renamed correctly to . Is this expected?


Question: this.searchBox.setModel(this.modelService.createModel('', null, uri.parse('extensions:searchinput'), true)); this.disposables.push(this.searchBox.onDidPaste(() => { <del> this.searchBox.setValue(this.searchBox.getValue().replace(/s+/g, ' ')); </del> <ins> let trimmed = this.searchBox.getValue().replace(/s+/g, ' '); this.searchBox.setValue(trimmed); </ins> this.searchBox.setScrollTop(0); <ins> this.searchBox.setPosition(new Position(1, trimmed.length + 1)); </ins> })); this.disposables.push(this.searchBox.onDidFocusEditorText(() => addClass(this.monacoStyleContainer, 'synthetic-focus'))); this.disposables.push(this.searchBox.onDidBlurEditorText(() => removeClass(this.monacoStyleContainer, 'synthetic-focus')));

Issue Type: <bBug</bThe cursor after pasting, I'd expect it to be at the end of the pasted text: ! VS Code version: Code - Insiders 1.26.0-insider (, 2018-08-02T05:12:16.245Z) OS version: Darwin x64 17.7.0 <details<summarySystem Info</summary </details<details<summaryExtensions (4)</summaryExtensionVersion ------ 999-pack10.12.6 ssh0.0.4 github-issues-prs0.9.0 vscode-open-in-github1.7.0 </details<!-- generated by issue reporter --


Question: })); } <del> private _computeOutputLineHeight(): number { </del> <ins> private _migrateDeprecatedSetting(deprecatedKey: string, key: string): void { const deprecatedSetting = this.configurationService.inspect(deprecatedKey); if (deprecatedSetting.application !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.APPLICATION); this.configurationService.updateValue(key, deprecatedSetting.application.value, ConfigurationTarget.APPLICATION); } if (deprecatedSetting.user !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.USER); this.configurationService.updateValue(key, deprecatedSetting.user.value, ConfigurationTarget.USER); } if (deprecatedSetting.userLocal !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.USER_LOCAL); this.configurationService.updateValue(key, deprecatedSetting.userLocal.value, ConfigurationTarget.USER_LOCAL); } if (deprecatedSetting.userRemote !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.USER_REMOTE); this.configurationService.updateValue(key, deprecatedSetting.userRemote.value, ConfigurationTarget.USER_REMOTE); } if (deprecatedSetting.workspace !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.WORKSPACE); this.configurationService.updateValue(key, deprecatedSetting.workspace.value, ConfigurationTarget.WORKSPACE); } if (deprecatedSetting.workspaceFolder !== undefined) { this.configurationService.updateValue(deprecatedKey, undefined, ConfigurationTarget.WORKSPACE_FOLDER); this.configurationService.updateValue(key, deprecatedSetting.workspaceFolder.value, ConfigurationTarget.WORKSPACE_FOLDER); } } private _computeOutputLineHeight(lineHeight: number, outputFontSize: number): number { </ins> const minimumLineHeight = 8; <del> let lineHeight = this.configurationService.getValue<number>(NotebookSetting.outputLineHeight); </del> if (lineHeight === 0) { // use editor line height

Testing There are "" "notebook.outputLineHeight" "" "notebook.outputFontFamily" "notebook.outputFontSize" Ideally these would be all namespaced or prefixed .
This affects how they show up in the settings editor UI, btw: <img width="919" alt="image" src="https://user-"


Question: this._register(Event.fromNodeEventEmitter<void>(this._process, 'spawn')(() => { this._logService.info(`UtilityProcess<${this.id}>: received spawn event.`); })); <del> this._register(Event.fromNodeEventEmitter<number | undefined>(this._process, 'exit')((code: number | undefined) => { code = code || 0; </del> <ins> const onExit = Event.fromNodeEventEmitter<number>(this._process, 'exit', (_, code: number) => code); this._register(onExit((code: number) => { </ins> this._logService.info(`UtilityProcess<${this.id}>: received exit event with code ${code}.`); this._hasExited = true; this._onExit.fire({ pid: this._process!.pid!, code, signal: '' });

Found this stack while scanning through some failing smoke test runs From Deepak:
What are some verification steps for this issue?
I did check logs last week and could no longer find this.


Question: this._register(Event.fromNodeEventEmitter<void>(this._process, 'spawn')(() => { this._logService.info(`UtilityProcess<${this.id}>: received spawn event.`); })); <del> this._register(Event.fromNodeEventEmitter<number | undefined>(this._process, 'exit')((code: number | undefined) => { code = code || 0; </del> <ins> const onExit = Event.fromNodeEventEmitter<number>(this._process, 'exit', (_, code: number) => code); this._register(onExit((code: number) => { </ins> this._logService.info(`UtilityProcess<${this.id}>: received exit event with code ${code}.`); this._hasExited = true; this._onExit.fire({ pid: this._process!.pid!, code, signal: '' });

I noticed this in smoke test runner logs leading me to think that the type of the exit code is not a but an now?


Question: this._register(Event.fromNodeEventEmitter<void>(this._process, 'spawn')(() => { this._logService.info(`UtilityProcess<${this.id}>: received spawn event.`); })); <del> this._register(Event.fromNodeEventEmitter<number | undefined>(this._process, 'exit')((code: number | undefined) => { code = code || 0; </del> <ins> const onExit = Event.fromNodeEventEmitter<number>(this._process, 'exit', (_, code: number) => code); this._register(onExit((code: number) => { </ins> this._logService.info(`UtilityProcess<${this.id}>: received exit event with code ${code}.`); this._hasExited = true; this._onExit.fire({ pid: this._process!.pid!, code, signal: '' });

Type: <bBug</bIn the most recent insiders version, audio cues no longer play. I ensured that the audio cues I expect are enabled (e.g. error) and entered the following json as an example: I ensured that the error was reported when moving through errors with f8, yet the cue doesn't play when I come across the line with up/down arrow keys VS Code version: Code - Insiders 1.71.0-insider (, 2022-08-05T07:36:58.753Z) OS version: Windows_NT x64 10.0. Modes: Sandboxed: No <!-- generated by issue reporter --
cc
We didn't touch anything there the last months, maybe it is caused by an electron update. Will investigate for the next release.
I can reproduce this. Easy repros steps: 1 list audio cues command cues do not produce sound Works fine on latest stable. Does not work on Insiders. fyi since most likely caused by Electron update (thus adding label). Maybe our future planned ffmpeg change will fix this? thanks a lot for reporting this, and sorry about this breakage.
You're welcome, I'm running insiders for a reason Looking forward to a fix.
Let me also assign since we will now support would you like that all our audio cues are in format? If yes, would you like me to reach out to our sound designer for this? Thanks
can you track the conversion in a separate issue, this particular issue is a regression with the ffmpeg build shipped with internal builds. There was a recent build architecture change and it impacted this. I would like to close this issue as part of the next Electron version update :)
makes sense, thanks! There is actually already this one which we can use for the conversion
The same problem using code-insiders into a fedora workstation 36.
It is working again with orca.
lovely, thanks for confirming. Adding verified label.
For me it also works like a charm on Windows.
For some reason I can't explain, this issue seems to have returned on my fedora workstation. No sound is played when I move the cursor to lines that contain breakpoints, errors and etc. Version: 1.71.0-insider Commit:
Confirmed on Windows. Could tests for this be somehow?


Question: this._register(Event.fromNodeEventEmitter<void>(this._process, 'spawn')(() => { this._logService.info(`UtilityProcess<${this.id}>: received spawn event.`); })); <del> this._register(Event.fromNodeEventEmitter<number | undefined>(this._process, 'exit')((code: number | undefined) => { code = code || 0; </del> <ins> const onExit = Event.fromNodeEventEmitter<number>(this._process, 'exit', (_, code: number) => code); this._register(onExit((code: number) => { </ins> this._logService.info(`UtilityProcess<${this.id}>: received exit event with code ${code}.`); this._hasExited = true; this._onExit.fire({ pid: this._process!.pid!, code, signal: '' });

Sorry for the regression, but this is a temporary expected breakage because we are updating our supported audio formats , audio cues will be updated to new format this iteration as part of /cc
Sorry about that We just pushed a fix, and the VS Code insiders from tomorrow will have the fix.
Thanks Given this feature turns out to be pretty important for us visually impaired users, would it be possible to create a system test for this? I assume it should be possible to throw a audio cue at FFMPEG and make it fail if the sound doesn't play?
that's a good idea. However I leave this up to since he is driving this from engineering and would have better ideas how we could test it exactly.
We would need a way to ask the OS if an application played some sound.
It works again, at least on my environment. Thanks.
awesome, thanks for letting us know.
I can confirm that it works here as well. Hopefully it stays that way


Question: this._register(Event.fromNodeEventEmitter<void>(this._process, 'spawn')(() => { this._logService.info(`UtilityProcess<${this.id}>: received spawn event.`); })); <del> this._register(Event.fromNodeEventEmitter<number | undefined>(this._process, 'exit')((code: number | undefined) => { code = code || 0; </del> <ins> const onExit = Event.fromNodeEventEmitter<number>(this._process, 'exit', (_, code: number) => code); this._register(onExit((code: number) => { </ins> this._logService.info(`UtilityProcess<${this.id}>: received exit event with code ${code}.`); this._hasExited = true; this._onExit.fire({ pid: this._process!.pid!, code, signal: '' });

<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.66.0 (x64) OS Version: 10.0. Build (Window 10) Steps to Reproduce: VS Code (or use the shortcut ) the first miliseconds after opening a new instance of VS Code, a "Window 7"-like window frame layout appears, before the usual VS Code look shows up (see the attached GIF). The GIF below first shows the expected behavior, opening version 1.65.0, followed by the current behavior of version 1.66.0. ! The two executables were downloaded from: and
Refs
that's the reason I went back to 1.65, frames are so annoying.
Hi just a small update: I've downloaded the latest VS Code Insiders and the problem now only appears when launching VS Code for the first time, but no longer when opening new windows from a running instance of it.
This issue persists in the new latest version release, .
The issue persists in today's release, .
Since the related bug in the Electron repo has a label, and today's VSCode uses , I believe we will be experiencing this bug for months.
The upstream Electron issue is at The issue was introduced in Electron v14.0.0-beta.5 and the commit that introduced the issue is The PR fixes the issue where frameless resizable windows show Windows 7 frames during startup, but there's a larger issue that is still unresolved even with that PR.


Question: this._register(Event.fromNodeEventEmitter<void>(this._process, 'spawn')(() => { this._logService.info(`UtilityProcess<${this.id}>: received spawn event.`); })); <del> this._register(Event.fromNodeEventEmitter<number | undefined>(this._process, 'exit')((code: number | undefined) => { code = code || 0; </del> <ins> const onExit = Event.fromNodeEventEmitter<number>(this._process, 'exit', (_, code: number) => code); this._register(onExit((code: number) => { </ins> this._logService.info(`UtilityProcess<${this.id}>: received exit event with code ${code}.`); this._hasExited = true; this._onExit.fire({ pid: this._process!.pid!, code, signal: '' });

I also searched through the thousands of to see whether they had anything to do with the issue, but I didn't find anything relevant even after reverting several suspicious commits. Running with Electron v14.0.0-beta.5 or newer on Windows 10 reproduces the issue. The PR fixes the issue for frameless resizable windows by calling at an earlier stage of program initialization. Assume the window is frameless and resizable. Then, the program sets to earlier in , and the following occurs: is not run, meaning is not removed from the style set in Line 62. This style parameter is passed in to a call at . is not run. Instead, the block above is run, which adds a style to the style passed into the call. , because of these styles being passed in, after the window is shown, we get a single message, and no messages after. NC in this case refers to non-client area, which is the frame. DWM stands for desktop windows manager. After adding a long of 30 seconds to the call above, I was able to use Spy++ to log messages to that window and see the following: I have also attached full logs to the end of this comment. For frameless windows that cannot resize, even if we call earlier, because the program would pass in , for the and calls above, the style would not be in the styles sent to the calls. As a result, what I see in Spy++ is being toggled three times, and several calls that result in messages being emitted. Using Spy++, I confirmed that the calls have the flag set. I have searched the Chromium and Electron codebases for and (as well as ) to see why the frame might be rendering more often when is not passed in. However, I haven't found anything within the codebase itself. Searching Windows documentation, I found the following: causes to be sent. Reference: However, I'm not sure whether this could explain the difference in behaviour between resizable and non-resizable windows. can pass in or to send to the window, which is why I searched for those two constants within the codebase. Reference: Also, Chromium handles by returning at , which I assume causes the message to occur. Also, Electron calls at .


Question: this._register(Event.fromNodeEventEmitter<void>(this._process, 'spawn')(() => { this._logService.info(`UtilityProcess<${this.id}>: received spawn event.`); })); <del> this._register(Event.fromNodeEventEmitter<number | undefined>(this._process, 'exit')((code: number | undefined) => { code = code || 0; </del> <ins> const onExit = Event.fromNodeEventEmitter<number>(this._process, 'exit', (_, code: number) => code); this._register(onExit((code: number) => { </ins> this._logService.info(`UtilityProcess<${this.id}>: received exit event with code ${code}.`); this._hasExited = true; this._onExit.fire({ pid: this._process!.pid!, code, signal: '' });

I noticed that if I don't call there, the Windows 7 frame doesn't show up, but then the Electron window doesn't render with the proper style (see ). I also noticed that when the Windows 7 frame shows up, it has the style of whatever was passed into that specific call. For example, if I add to the call, then for a second I see a Windows 7 frame with applied. I also tried creating a minimal project in VS to reproduce the issue but wasn't successful. The frame that rendered seemed to have a Windows 10 style rather than a Windows 7 one. I also tried registering a listener in for the messages, and it did seem to get hit, though I couldn't do anything with it. There's also the mysterious , but I wasn't able to apply it to resolve the issue.
The PR that linked above (partially based on ) should resolve the issue for VS Code Insiders and hence close this issue, but there's still more I'd like to investigate, especially for frameless non-resizable windows. I some lines to log the hwnd and style passed into each relevant and call. One example of the styles that show up: There's also another window being created really early, but I don't think it influences the issue. Good scenario (meaning no frame showing) with set to and staying Bad scenario with set to then Bad scenario with set to and staying The call with style causes the Windows 7 frame to render, and its style corresponds to is actually the same style just with , once again showing how mysterious the constant is. While working on , I also noticed that changing the order of the calls seemed to fix the issue for frameless non-resizable windows. In particular, on the Electron side, in , if I first called to pretend that the window is resizable, and then called (where ) after the call around line 365, then the issue is resolved even for frameless non-resizable windows. However, this workaround delays the call to hundreds of lines later, and I wouldn't be surprised if it would cause a regression elsewhere. Just like in the log file of the good case of the previous comment, only shows up once, rather than three times. For completeness, here are the logs with the styles for this scenario, excluding the logs: In this case, the style never comes up!