jiebi/CodeConvo huggingface dataset:
Change:
this.focusToReturn = undefined; } } <ins> private rearrangeButtons(buttons: Array<string>, cancelId: number | undefined): ButtonMapEntry[] { const buttonMap: ButtonMapEntry[] = []; // Maps each button to its current label and old index so that when we move them around it's not a problem buttons.forEach((button, index) => { buttonMap.push({ label: button, index: index }); }); if (isMacintosh) { if (cancelId !== undefined) { const cancelButton = buttonMap.splice(cancelId, 1)[0]; buttonMap.reverse(); buttonMap.splice(buttonMap.length - 1, 0, cancelButton); } } return buttonMap; } </ins> }  No newline at end of file

Discussion:
Testing Mac, Insiders here's the code from my extension to get a modal dialog: Native: ! Custom: ! I actually like the fact that the button is always rightmost in the custom dialog, not sure why it is like it is in the native one.
I believe the layout is platform dependent. I don't think we need to adopt this behavior. thoughts?
I think we should try to stay close to platform expectations so that people on their OS feel familiar.
Change:
return -1; } else if (a.snippetSource > b.snippetSource) { return 1; <ins> } else if (a.source < b.source) { return -1; } else if (a.source > b.source) { return 1; </ins> } else if (a.name > b.name) { return 1; } else if (a.name < b.name) {

Discussion:
Snippets may from extension or builtin, it would be helpful if display where the snippet from. !
Hi, a partner ( and I are interested in taking on this issue, could this be reassigned to us? Thanks!
We can only assign issues to team members but you now have your stick in the ground for this one
This extension maybe be help
This is an early preview of what the snippet picker would look like: <img width="604" alt="Screen Shot 2021-12-08 at 16 03 07" src="https://user-"Would you prefer any changes to the current look/feel of it?
The message should be shorter, for example: be enough, if is built in extension, should be ?
Also using the group label on the right for each and every entry seems a bit heavy. Today it's "User Snippets", "Workspace Snippets", and "Extension Snippets". I would suggest to remove the last group and have than one group per extension, not per snippet
+1 to only having a single category/group at the end as we do the same thing in the remote picker: <img width="652" alt="CleanShot 2021-12-09 at 13 11 42 src="https://user-"
We've made the requested changes and here's what the snippet picker looks like now: <img width="604" alt="Screen Shot 2021-12-10 at 14 13 35" src="https://user-". We also changed the sorting of the snippets to group extensions together to minimize the category/groups in the picker.
Do we really need to add the version info? I think having it as or even would be a cleaner look Edit: It appears that the version is part of the extension name (bad pattern we should follow up with). Maybe we just omit the extension part instead?
Right, the version number seems to be part of the extension name so I'm not sure there's much we can easily do about it right now. So you're suggesting, for example in the screenshot, instead of "Extension: Angular Snippets..." for it to just say "Angular Snippets"?

Yes just to simplify it as many snippet extension names are long: <img width="647" alt="CleanShot 2021-12-10 at 14 11 28 src="https://user-"<img width="651" alt="CleanShot 2021-12-10 at 14 10 49 src="https://user-"<img width="626" alt="CleanShot 2021-12-10 at 14 11 00 src="https://user-"
I omitted the "Extension: " and here's what it looks like now: ! Are there any other changes you'd like to the picker?
Looks good to me, thanks for taking the feedback!
PR merged. Thanks everyone!
! The workspace snippets should be front of user snippets.
The VSCode snippet picker in the current stable version also lists user snippets before workspace snippets: ! Not sure if you mean to open another issue about this?
maybe it should be another issue.
I have create another issue:
<img width="768" alt="image" src="https://user-"looks good!
Change:
type: 'string', format: 'color-hex', default: '#FF0000', <del> minLength: 4, maxLength: 9, </del> description: nls.localize('screencastMode.mouseIndicatorColor', "Controls the color in hex (#RGB, #RGBA, #RRGGBB or #RRGGBBAA) of the mouse indicator in screencast mode.") }, 'screencastMode.mouseIndicatorSize': {

Discussion:
Testing The setting functions properly when I enter an invalid color: it defaults back to a red indicator. But I was thinking perhaps adding a warning message to users that they have entered an invalid color (like the warning for invalid ), and/or auto-filling the entry back to red would emphasize to them why their indicator has turned red again.
The setting is of type string, with which provides a good error message while editing the setting in the JSON file. As far as I can tell there is no way to currently get the same experience in the settings UI. I do agree that it would be nice to have a better experience for editing color settings in the settings UI. have we ever considered adding a type/validation for a setting?
We have to implement these individually and that format isn't implemented yet
It would be a feature request for the settings editor, probably easy, feel free to assign it to me
would you be opened for me to submit a pull request? I would be happy to take a stab at this in my free time to learn more about our codebase.
Sure! Here are our string validations:
Change:
alwaysFocused: true, verticalScrollMode: ScrollbarVisibility.Visible, ariaLabel: nls.localize('treeAriaLabel', "Quick Picker"), <del> keyboardSupport: this.options.keyboardSupport </del> <ins> keyboardSupport: this.options.keyboardSupport, preventRootFocus: true </ins> }); this.treeElement = this.tree.getHTMLElement();

Discussion:
While testing . VSCode Version: Code - Insiders 1.15.0-insider (, 2017-08-01T05:07:59.267Z) OS Version: Darwin x64 16.7.0 Steps to Reproduce: 3 terminals from the command palette <kbdArrowDown</kbdto the last terminal in the switcher <kbdTab</kbdto rename the terminal -keyboard focus disappears from the input box (and seems to be nowhere). I need a second <kbdTab</kbdto move the keyboard focus to the rename action in the selected row. A single <kbdTab</kbdshould suffice.
This is also an issue with task configuration
Change:
if (isString(languageId) && !languageId.trim()) { throw new Error('illegal argument `languageId`. must not be empty'); } <del> const logLevel = this.getDefaultLogLevel(extension); </del> <ins> let logLevel: LogLevel | undefined; const logLevelValue = this.initData.environment.extensionLogLevel?.find(([identifier]) => ExtensionIdentifier.equals(extension.identifier, identifier))?.[1]; if (logLevelValue) { logLevel = parseLogLevel(logLevelValue); } </ins> const extHostOutputChannel = log ? this.doCreateLogOutputChannel(name, logLevel, extension) : this.doCreateOutputChannel(name, languageId, extension); extHostOutputChannel.then(channel => { this.channels.set(channel.id, channel); channel.visible = channel.id === this.visibleChannelId; }); <del> return log ? this.createExtHostLogOutputChannel(name, logLevel, <Promise<ExtHostOutputChannel>>extHostOutputChannel) : this.createExtHostOutputChannel(name, <Promise<ExtHostOutputChannel>>extHostOutputChannel); </del> <ins> return log ? this.createExtHostLogOutputChannel(name, logLevel ?? this.logService.getLevel(), <Promise<ExtHostOutputChannel>>extHostOutputChannel) : this.createExtHostOutputChannel(name, <Promise<ExtHostOutputChannel>>extHostOutputChannel); </ins> } private async doCreateOutputChannel(name: string, languageId: string | undefined, extension: IExtensionDescription): Promise<ExtHostOutputChannel> {

Discussion:
Testing I have two "onDidChangeLogLevel" listeners: one on "" and one on my channel and I'm setting the log levels with this action: ! In the test items description you said: log level change is being propagated in env and also in your log output channel For me only the listener on "" fires.
Change:
const session = dom.append(container, $('.session')); dom.append(session, $('.codicon.codicon-bug')); const name = dom.append(session, $('.name')); <del> const state = dom.append(session, $('.state')); const stateLabel = dom.append(state, $('span.label.monaco-count-badge.long')); </del> <ins> const stateLabel = dom.append(session, $('span.state.label.monaco-count-badge.long')); </ins> const label = new HighlightedLabel(name, false); const actionBar = new ActionBar(session, { actionViewItemProvider: action => {

Discussion:
Testing Badge should use text ellipsis when there is not enough room to display the full message: !
Good catch. Yes, we should improve this.
Not for endgame since we always behaved like this. Moving out of milestone and opening up for PRs. Code pointer
Change:
private readonly _onDidSelectConfigurationName = new Emitter<void>(); private configProviders: IDebugConfigurationProvider[]; private debugConfigurationTypeContext: IContextKey<string>; <ins> private readonly _onDidChangeConfigurationProviders = new Emitter<void>(); public readonly onDidChangeConfigurationProviders = this._onDidChangeConfigurationProviders.event; </ins> constructor( private readonly adapterManager: IAdapterManager,

Discussion:
Type: <bBug</bI'm developing an extension for VSCode and found out that I can't enable Dynamic Debug Configurations unless I include in the list of activation events. I have tried not including this activation event but having my extension activated through other means (like activated on language), but the feature doesn't work. Only when I include , this feature works. My extension is now working properly, but I wouldn't be surprised if this prevents other extension developers from using this feature. I have found this very old post of someone who might have had that exact same issue VS Code version: Code 1.84.2 (Universal) (, 2023-11-09T10:52:33.687Z) OS version: Darwin arm64 23.1.0 Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (36)</summaryExtensionVersion ------ vscode-markdownlint0.52.0 gitlens14.5.0 prettier-vscode10.1.0 custom-local-formatters0.0.6 vscode-clangd0.1.24 vscode-mlir0.0.11 rainbow-csv3.8.0 vscode-mojo5.0.4-dev csdevkit1.0.14 csharp2.10.28 vscode-dotnet-runtime2.0.0 vscodeintellicode-csharp0.1.26 black-formatter2023.6.0 isort2023.10.1 python2023.20.0 vscode-pylance2023.11.10 jupyter2023.10.

jupyter-keymap1.1.2 jupyter-renderers1.0.17 vscode-jupyter-cell-tags0.1.8 vscode-jupyter-slideshow0.1.5 remote-containers0.321.0 remote-ssh0.107.0 remote-ssh-edit0.86.0 remote-wsl0.81.8 vscode-remote-extensionpack0.24.0 cpptools1.18.5 cpptools-extension-pack1.3.0 remote-explorer0.4.1 remote-server1.5.0 reflow-paragraph1.3.0 errorlens3.15.0 vscode-icons12.6.0 vim1.27.0 clang-format1.9.0 markdown-all-in-one3.5.1 (1 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Can you explain a bit more what doesn't work?
, thanks for looking into this. I have an extension with a working debugger feature via file. I'm trying to register a DebugConfigurationProvider with kind = that implements . And, unless, I add as an activation event, my new provider doesn't get invoked at all and I don't see an entry for my debugger in the selector of the Debug View. I have confirmed that my extension was initialized right after VSCode is launched. It's as if this kind of provider is only enabled if the activation event is present.
There's some discussion about this in you've touched this too, should this be changed or just documented in
I think changing it is fine. An extension should register an activation for it, but this isn't something we enforce for any other API. Will take care of it.
Change:
}; private async _createModifiedWebview(id: string, resource: URI): Promise<void> { <ins> if (this._modifiedWebview) { this._modifiedWebview.dispose(); } </ins> this._modifiedWebview = this.instantiationService.createInstance(BackLayerWebView, this, id, resource, this.webviewOptions) as BackLayerWebView<IDiffCellInfo>; // attach the webview container to the DOM tree first this._list.rowsContainer.insertAdjacentElement('afterbegin', this._modifiedWebview.element);

Discussion:
Issue Type: <bBug</bRepro a notebook in the diff view (tested with the github issues notebook) down to another file bug In dev tools, see: VS Code version: Code - OSS Dev 1.55.0 (Commit unknown, Date unknown) OS version: Darwin x64 20.3.0 <details<summarySystem Info</summary </details<details<summaryExtensions (23)</summaryExtensionVersion ------ docs-view0.0.9 vscode-eslint2.1.14 EditorConfig0.16.4 vscode-pull-request-github0.23.1 svg1.4.5 template-string-converter0.4.7 git-graph1.29.0 vscode-language-pack-de1.54.1 vscode-dotnet-runtime1.0.0 vscode-edge-devtools1.1.3 python2021.2. jupyter2021.3. remote-containers0.163.0 remote-ssh0.64.0 remote-ssh-edit0.64.0 azure-account0.9.6 cpptools1.2.2 hexeditor1.4.0 vscode-github-issue-notebooks0.0.68 vscode-markdown-notebook0.0.14 debugger-for-chrome4.12.12 debugger-for-edge1.0.15 shader-toy0.10.15 </details<!-- generated by issue reporter --
I believe that webviews in diff editors are being leaked at the moment. For normal notebooks, I see the webview disposed of in the method: However I don't see the same in notebookTextDiffEditor
Hm, now I'm just more confused. It seems the webviews are not disposed of when the diff editor is closed (and is not fired on the either). However they are disposed of when another notebook diff editor is opened The root cause of this issue is that the webview is no longer in the dom but it also isn't disposed. We then try posting a message to it which causes an exception. Here's the call stack that triggers this error: !
I started to see leaks of recently, which is likely a regression, and probably in the logic.
Change:
position: relative; font-size: 13px; line-height: 19px; <del> animation: fadein 100ms linear; </del> /* Must be higher than sash's z-index and terminal canvases */ z-index: 40; overflow: hidden; max-width: 700px; } <ins> .monaco-workbench .workbench-hover:not(.skip-fade-in) { animation: fadein 100ms linear; } </ins> .monaco-workbench .workbench-hover.compact { font-size: 12px; }

Discussion:
Native browser tooltips and many custom ones (Figma, Discord, Edge tabs) keep the tooltip element visible when moving between elements. Would be nice to do the same, to make mouse exploration even snappier. Discord icon bar: ! macOS dock: !
cc as this discussion was spawned off cc as owner of the hover widget cc as we talked about this a few times and he brought it up most recently in the team chat
fyi I'm the main hover widget person This seems doable, needs some thinking on how this would be exposed in the API. It's also a feature of native browser tooltips when hovering from one element with to another.
Thanks for confirmation :)
Change:
return label + (text.match(/rn|n/g) ? '  n' + text : ` u2014 ${text}`); } <ins> function getTagBody(tag: Proto.JSDocTagInfo, filePathConverter: IFilePathToResourceConverter): Array<string> | undefined { if (tag.name === 'template') { const parts = tag.text; if (parts && typeof (parts) !== 'string') { const params = parts.filter(p => p.kind === 'typeParameterName').map(p => p.text).join(', '); const docs = parts.filter(p => p.kind === 'text').map(p => convertLinkTags(p.text.replace(/^s*-?s*/, ''), filePathConverter)).join(' '); return params ? ['', params, docs] : undefined; } } return (convertLinkTags(tag.text, filePathConverter)).split(/^(S+)s*-?s*/); } </ins> export function plainWithLinks( parts: readonly Proto.SymbolDisplayPart[] | string, filePathConverter: IFilePathToResourceConverter,

Discussion:
<img width="957" alt="image" src="https://user-"Version info:
I think the issue is this line. From what I understand the regex matches the first word causing split to return 3 element array 0: empty string(cause there is nothing before the first word) 1: the first word 2: rest of the string. However, seems to have the same effect. What am I missing?
nvm got it. It is not the same for strings like 'iterable' and 'iterable -'
Change:
if (HEAD && HEAD.name && HEAD.commit) { if (HEAD.upstream) { <ins> const config = workspace.getConfiguration('git'); const gitSyncRebase = config.get<string>('syncRebase'); </ins> if (HEAD.ahead || HEAD.behind) { text += this.repository.syncLabel; } <del> command = 'git.sync'; </del> <ins> if (gitSyncRebase) { command = 'git.syncRebase'; } else { command = 'git.sync'; } </ins> tooltip = localize('sync changes', "Synchronize Changes"); } else { icon = '$(cloud-upload)';

Discussion:
Currently the sync icon will sync with pull and merge, which results in undesirable (in my case) merge commits. ! It would be helpful if there was a "Sync with rebase" option for clicking this icon. I see a PR was performed to add Sync (Rebase) command (, though I still don't even see this command in the git menu for 1.23.1 today?), but this does not apply to clicking the actual icon. A setting to change its default value would be great.
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like: <!-- score: 0.479 --<!-- potentialduplicatescomment --
shouldn't the setting text say something like instead of saying . If a branch is already configured to use rebase by default this setting has no effect (i.e. unchecking the box does not use merge)
Change:
resolved "https://registry.yarnpkg.com/xterm-addon-webgl/-/xterm-addon-webgl-0.16.0-beta.2.tgz#30489ef235405255ee54077002c90553531870d8" integrity sha512-DAt4E/QI1w34ToBhcDj0vaZOAHOO+ffwMt2HGDAB7amPXRcMb0LBIjLpyZhB9sD4tbIgsE0vuqZi1R9vKxZwbg== <del> xterm-headless@5.3.0-beta.3: version "5.3.0-beta.3" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-5.3.0-beta.3.tgz#153cf330082f4b2aae64ff736ef0b62d93c30da8" integrity sha512-4i/bpFoAn4D4ZA4g8RKrJdhq2EcB1HN2E25yUg3omRbWCOZ2Gp9nAn+62LYzX5rvGqdNbpUTRJLX0lKwEFyLFw== </del> <ins> xterm-headless@5.3.0-beta.7: version "5.3.0-beta.7" resolved "https://registry.yarnpkg.com/xterm-headless/-/xterm-headless-5.3.0-beta.7.tgz#92704cecf937a18f2223b16efcab8c4e9e8a9e62" integrity sha512-8LDY/cId73q3w6jMmiGU6HtJlfIhtqu/oWlDj/9wUr8SQnCQJwPBzu6RizzQRz1lzMN+8WHdzrHjKcNtayZbdw== </ins> <del> xterm@5.3.0-beta.3: version "5.3.0-beta.3" resolved "https://registry.yarnpkg.com/xterm/-/xterm-5.3.0-beta.3.tgz#1a1aaf9a57afe4dcf86e87d8dc85e80a41d68644" integrity sha512-NGxpV25U2W/KKk6M5V2OXuLgrKY+w05ABi66ZEYuCTi7ux1Qv0z+jm7bkgzk1pGGiTVLG+90OGr2nrhbFr5Y4w== </del> <ins> xterm@5.3.0-beta.7: version "5.3.0-beta.7" resolved "https://registry.yarnpkg.com/xterm/-/xterm-5.3.0-beta.7.tgz#ee638fe60382e6b13f36dec2355c3530ff1c4c34" integrity sha512-wd+QHHfCVSZMSH7ah8WSeCu7VAqZcAD5pEAOiQxCg4VfXu+L//QOycqlWecgr0SFui2X9LshfD+cI9J3FcHRNA== </ins> yallist@^4.0.0: version "4.0.0"

Discussion:
On the latest insiders I can't click and drag the terminal scroll bar: !
Same here - but at least the terminal can actually be resized now!
I the same problem. In my case, all scrollbars (editor, explorer, ...) were. I tried and it was the same. Not sure if this is related, but Google Chrome and Slack App do not have this issue.
Same issue here, cannot scroll the terminal window. The cursor changes to text selector and is unable to scroll for the entire life of the terminal window. !
I completely shut down macOS and restarted it and it fixed it. It's strange.
Restarting vscode fixes it for me. It only happens when my cursor either hovers over a link in the terminal or I select some text from the terminal, it gets forever stuck in text selection/link click mode.
This is because of the image addon: ! cc
Upstream:
Saw that you released v1.80. In there is still 0.4.1 mentioned as version for xterm-addon-image. The patch version fixing this issue at hand is 0.4.2 - did that not work for you? Note that I was not able to repro the issue with vscode 1.79, so there is a chance that my attempt did not address it. Or did just the package update slip through?
I'm seeing this in Insiders. Restarting VSCode doesn't fix it and it only happens when I have multiple terminals open and the terminal tab sidebar is showing. Version: 1.81.0-insider (Universal) Commit: Date: 2023-07-07T19:50:58.701Z Electron: 22.3.14 ElectronBuildId: Chromium: 108.0.5359.215 16.17.1 V8: 10.8.168.25-electron.0 OS: Darwin x64 22.5.0
it came in a bit late for the release and didn't think it met the bar. I'll be updating soon
Change:
} protected _doLayout(heightInPixel: number, widthInPixel: number): void { <ins> this.heightInPx = heightInPixel; </ins> this.input.layout({ height: heightInPixel, width: widthInPixel - 113 }); <ins> this.centerInputVertically(); </ins> } private createBreakpointInput(container: HTMLElement): void {

Discussion:
<!-- Please search existing issues to avoid creating duplicates. --<!-- Also please test using the latest insiders build to make sure your issue has not already been fixed: -- isn't fixed <!-- Use Help Report Issue to prefill these. --- VSCode Version: 1.37.0 OS Version: Windows 10 !
This works just fine for me on OS X and Win10 with vscode insiders. Can you reproduce with latest vscode insiders !
Thanks. I tried and it is indeed fixed in the insider build. However, I can reproduce it for sure on the stable version. The fix should have been included in June update. (seems it was)
There might be some extension which you are using that is modiyfing css and is breaking this. Sorry but I can not reproduce this, either in stable and in insiders. Also no other user seems to be hitting this. Due to that I will close this issue. And yes the fix was included in the June update.
I find the key to reproduction now. Just put in the and you will see the bug.
Yes I acknowledge the bug. The issue is that the breakpoint widget is not updating as the editor font updates. The size of the widget updates, but the font should update as well. I am open to PR that fix this issue Code pointer
Will have a try
Things look more complicated than we expected.  doesn't feel right. The is of 40px height (with font size set to 16) ! It looks more reasonable if setting the height to 20px ! centering thing. The is centred by the styles of (its parent dom) while gets a hardcoded 8px ... !
yes I acknowledge it is not the nicest. Any improvements in that area would be appreciated.
I have gone too deep down the rabbit hole . Leaving it to whoever interested...
This issue is being closed to keep the number of issues in our inbox on a manageable level, we are closing issues that are not going to be addressed in the foreseeable future: We look at the number of votes the issue has received and the number of duplicate issues filed. More details . If you disagree and feel that this issue is crucial: We are happy to listen and to reconsider. If you wonder what we are up to, please see our and guidelines. Thanks for your understanding and happy coding!

I understand this issue is not that important. But I don't agree this is out of scope . IMHO, it is at least a bug (although with very low priority).
Agree, let's reopen.
Attempted a PR () for this. Please have a look.
Verifier: Change the editor.fontSize, add a conditional breakpoint and make sure the text in the breakpoint widget is centered. Or can just try in VS COde insiders from Thursday and let us know how it behaves for him
Thank you! I confirm it is fixed in the insider build.
Thanks for letting us know. Adding verified label.