jiebi/CodeConvo huggingface dataset:
Code change:
see gif open GH notebook with a few cell that reference a variable run peek references and select entries notice how notebook cells are being highlighted, like "Milestone Work" get selected !
I can repro in Insiders but not master, I'll check again tomorrow
This happens because of this listener: Tho, not yet sure why the selection keeps changing... Maybe some inner list event (from the references list) bubbles up to the outer list
That listener is fine, it's the nested lists
Hey do you have any thoughts on handling this? We have a list inside another list. The inner list handles the touch event properly. The outer list then handles the event and picks up the wrong index because it finds the data attribute inside the inner list in We can Make sure the event is fired on the outer list with the correct element, by fixing to check whether it's in the right list Not fire the event on the outer list at all, when we see that it originates in a different list Add some property to the list event that says it originated in a different list so the consumer can decide In this particular case, I think any of these are fine
Thinking more, I don't think that the event should ever be handled by two lists at all. Meaning we either mark the browserEvent as handled, like with preventDefault/isDefaultPrevented, or we make the list check every event to be sure that it originated in this list.
This sounds good to me. This also sounds good to me.
related when I do peek references, I see markdown cells being selected? ! Notice I'm looking for under-discussion but "Configure" is being highlighted as one of the references
From Good catch, I didn't notice that
Thanks for the quick handling!

Related discussion:
text: this.list.setSelection([focus], e.browserEvent); } <ins> e.browserEvent.preventDefault(); </ins> this._onPointer.fire(e); }
Code change:
see gif open GH notebook with a few cell that reference a variable run peek references and select entries notice how notebook cells are being highlighted, like "Milestone Work" get selected !
I can repro in Insiders but not master, I'll check again tomorrow
This happens because of this listener: Tho, not yet sure why the selection keeps changing... Maybe some inner list event (from the references list) bubbles up to the outer list
That listener is fine, it's the nested lists
Hey do you have any thoughts on handling this? We have a list inside another list. The inner list handles the touch event properly. The outer list then handles the event and picks up the wrong index because it finds the data attribute inside the inner list in We can Make sure the event is fired on the outer list with the correct element, by fixing to check whether it's in the right list Not fire the event on the outer list at all, when we see that it originates in a different list Add some property to the list event that says it originated in a different list so the consumer can decide In this particular case, I think any of these are fine
Thinking more, I don't think that the event should ever be handled by two lists at all. Meaning we either mark the browserEvent as handled, like with preventDefault/isDefaultPrevented, or we make the list check every event to be sure that it originated in this list.
This sounds good to me. This also sounds good to me.
related when I do peek references, I see markdown cells being selected? ! Notice I'm looking for under-discussion but "Configure" is being highlighted as one of the references
From Good catch, I didn't notice that
Thanks for the quick handling!

Related discussion:
text: return; } <ins> if (e.browserEvent.defaultPrevented) { return; } </ins> const focus = this.list.getFocus(); this.list.setSelection(focus, e.browserEvent); <ins> e.browserEvent.preventDefault(); </ins> } private changeSelection(e: IListMouseEvent<T> | IListTouchEvent<T>): void {
Code change:
see gif open GH notebook with a few cell that reference a variable run peek references and select entries notice how notebook cells are being highlighted, like "Milestone Work" get selected !
I can repro in Insiders but not master, I'll check again tomorrow
This happens because of this listener: Tho, not yet sure why the selection keeps changing... Maybe some inner list event (from the references list) bubbles up to the outer list
That listener is fine, it's the nested lists
Hey do you have any thoughts on handling this? We have a list inside another list. The inner list handles the touch event properly. The outer list then handles the event and picks up the wrong index because it finds the data attribute inside the inner list in We can Make sure the event is fired on the outer list with the correct element, by fixing to check whether it's in the right list Not fire the event on the outer list at all, when we see that it originates in a different list Add some property to the list event that says it originated in a different list so the consumer can decide In this particular case, I think any of these are fine
Thinking more, I don't think that the event should ever be handled by two lists at all. Meaning we either mark the browserEvent as handled, like with preventDefault/isDefaultPrevented, or we make the list check every event to be sure that it originated in this list.
This sounds good to me. This also sounds good to me.
related when I do peek references, I see markdown cells being selected? ! Notice I'm looking for under-discussion but "Configure" is being highlighted as one of the references
From Good catch, I didn't notice that
Thanks for the quick handling!

Related discussion:
text: return; } <ins> if (e.browserEvent.defaultPrevented) { return; } </ins> const node = e.element; if (!node) {
Code change:
see gif open GH notebook with a few cell that reference a variable run peek references and select entries notice how notebook cells are being highlighted, like "Milestone Work" get selected !
I can repro in Insiders but not master, I'll check again tomorrow
This happens because of this listener: Tho, not yet sure why the selection keeps changing... Maybe some inner list event (from the references list) bubbles up to the outer list
That listener is fine, it's the nested lists
Hey do you have any thoughts on handling this? We have a list inside another list. The inner list handles the touch event properly. The outer list then handles the event and picks up the wrong index because it finds the data attribute inside the inner list in We can Make sure the event is fired on the outer list with the correct element, by fixing to check whether it's in the right list Not fire the event on the outer list at all, when we see that it originates in a different list Add some property to the list event that says it originated in a different list so the consumer can decide In this particular case, I think any of these are fine
Thinking more, I don't think that the event should ever be handled by two lists at all. Meaning we either mark the browserEvent as handled, like with preventDefault/isDefaultPrevented, or we make the list check every event to be sure that it originated in this list.
This sounds good to me. This also sounds good to me.
related when I do peek references, I see markdown cells being selected? ! Notice I'm looking for under-discussion but "Configure" is being highlighted as one of the references
From Good catch, I didn't notice that
Thanks for the quick handling!

Related discussion:
text: return; } <ins> if (e.browserEvent.defaultPrevented) { return; } </ins> super.onDoubleClick(e); } }
Code change:
see gif open GH notebook with a few cell that reference a variable run peek references and select entries notice how notebook cells are being highlighted, like "Milestone Work" get selected !
I can repro in Insiders but not master, I'll check again tomorrow
This happens because of this listener: Tho, not yet sure why the selection keeps changing... Maybe some inner list event (from the references list) bubbles up to the outer list
That listener is fine, it's the nested lists
Hey do you have any thoughts on handling this? We have a list inside another list. The inner list handles the touch event properly. The outer list then handles the event and picks up the wrong index because it finds the data attribute inside the inner list in We can Make sure the event is fired on the outer list with the correct element, by fixing to check whether it's in the right list Not fire the event on the outer list at all, when we see that it originates in a different list Add some property to the list event that says it originated in a different list so the consumer can decide In this particular case, I think any of these are fine
Thinking more, I don't think that the event should ever be handled by two lists at all. Meaning we either mark the browserEvent as handled, like with preventDefault/isDefaultPrevented, or we make the list check every event to be sure that it originated in this list.
This sounds good to me. This also sounds good to me.
related when I do peek references, I see markdown cells being selected? ! Notice I'm looking for under-discussion but "Configure" is being highlighted as one of the references
From Good catch, I didn't notice that
Thanks for the quick handling!

Related discussion:
text: } if (node.collapsible) { <del> // Do not set this before calling a handler on the super class, because it will reject it as handled e.browserEvent.isHandledByList = true; </del> const location = this.tree.getNodeLocation(node); const recursive = e.browserEvent.altKey; this.tree.setFocus([location]); this.tree.toggleCollapsed(location, recursive); if (expandOnlyOnTwistieClick && onTwistie) { <ins> // Do not set this before calling a handler on the super class, because it will reject it as handled e.browserEvent.isHandledByList = true; </ins> return; } }
Code change:
VSCode Version: 1.47 insiders OS Version: Windows Steps to Reproduce: on the "Add item" button in and press enter. ! Does this issue occur when all extensions are disabled?: Yes

Related discussion:
text: } } // New item was added <del> else if (template.objectWidget.isItemNew(e.originalItem)) { </del> <ins> else if (template.objectWidget.isItemNew(e.originalItem) && e.item.key.data !== '') { </ins> newValue[e.item.key.data] = e.item.value.data; newItems.push(e.item); }
Code change:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- 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: --<!-- Use Help Report Issue to prefill these. --- VSCode Version: 1.47 OS Version: MacOS Steps to Reproduce: a local project server (f.ex angular) with a long filename (some 16+ characters) <filename.<extension. a debug session (f.ex firefox), and check the debug console output. <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes !
I don't understand what the screenshot is showing. Please show the whole debug console. I do not understand what gets concatenated in the screenshot. What exactly are you expecting and what is the erroneous behavior?
attached photo of whole debug console - error occurs on last line. Behavior: supposedly filenames (some 16+ characters) will be shortened with (...) instead of showing the whole filename and line number. Expecting: the whole filename and line number where a console log is being outputted. !
Yes, I agree this is an issue. The problem is that we set a to 150 . The ideal solution would be that the elements gets shrinked first, and that it has unlimited size. Adding help wanted as I am open to review a PR which fixes this. If nobody tackles this I can also look into this in the future.
Hi I can give this a try.
great, thanks!

Related discussion:
text: } .monaco-workbench .repl .repl-tree .output.expression.value-and-source .value { <del> flex: 1; </del> <ins> margin-right: 4px; </ins> } .monaco-workbench .repl .repl-tree .monaco-tl-contents .arrow {
Code change:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- 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: --<!-- Use Help Report Issue to prefill these. --- VSCode Version: 1.47 OS Version: MacOS Steps to Reproduce: a local project server (f.ex angular) with a long filename (some 16+ characters) <filename.<extension. a debug session (f.ex firefox), and check the debug console output. <!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes !
I don't understand what the screenshot is showing. Please show the whole debug console. I do not understand what gets concatenated in the screenshot. What exactly are you expecting and what is the erroneous behavior?
attached photo of whole debug console - error occurs on last line. Behavior: supposedly filenames (some 16+ characters) will be shortened with (...) instead of showing the whole filename and line number. Expecting: the whole filename and line number where a console log is being outputted. !
Yes, I agree this is an issue. The problem is that we set a to 150 . The ideal solution would be that the elements gets shrinked first, and that it has unlimited size. Adding help wanted as I am open to review a PR which fixes this. If nobody tackles this I can also look into this in the future.
Hi I can give this a try.
great, thanks!

Related discussion:
text: } .monaco-workbench .repl .repl-tree .output.expression.value-and-source .source { <del> margin-left: 4px; </del> <ins> margin-left: auto; </ins> margin-right: 8px; cursor: pointer; text-decoration: underline; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; <del> max-width: 150px; </del> <ins> text-align: right; </ins> } .monaco-workbench .repl .repl-tree .output.expression > .value,
Code change:
Issue Type: <bBug</bWhen : one mouse wheel scroll in extension view: moves 100px one mouse wheel scroll in settings editor: moves 100px When : one mouse wheel scroll in extension view: moves 100px, with slight animation one mouse wheel scroll in settings editor: moves 15~25px, without animation I'm using a Logitech G502 Lightspeed mouse, without any scrolling tweaking softwares. ! VS Code version: Code - Insiders 1.48.0-insider (, 2020-08-05T05:30:25.429Z) OS version: WindowsNT x64 10.0. <details<summarySystem Info</summary </detailsExtensions: none <!-- generated by issue reporter --
I don't see this, any idea
I believe this setting is ignored for macOS. Duplicate of
Actually not a duplicate. Interesting. I need to get my hands on a mouse to see if I can repro.
Created a PR that fixes this:

Related discussion:
text: this.render(previousRenderRange, e.scrollTop, e.height, e.scrollLeft, e.scrollWidth); if (this.supportDynamicHeights) { <del> this._rerender(e.scrollTop, e.height); </del> <ins> // Don't update scrollTop from within an scroll event // so we don't break smooth scrolling. #104144 this._rerender(e.scrollTop, e.height, false); </ins> } } catch (err) { console.error('Got bad scroll event:', e);
Code change:
Issue Type: <bBug</bWhen : one mouse wheel scroll in extension view: moves 100px one mouse wheel scroll in settings editor: moves 100px When : one mouse wheel scroll in extension view: moves 100px, with slight animation one mouse wheel scroll in settings editor: moves 15~25px, without animation I'm using a Logitech G502 Lightspeed mouse, without any scrolling tweaking softwares. ! VS Code version: Code - Insiders 1.48.0-insider (, 2020-08-05T05:30:25.429Z) OS version: WindowsNT x64 10.0. <details<summarySystem Info</summary </detailsExtensions: none <!-- generated by issue reporter --
I don't see this, any idea
I believe this setting is ignored for macOS. Duplicate of
Actually not a duplicate. Interesting. I need to get my hands on a mouse to see if I can repro.
Created a PR that fixes this:

Related discussion:
text: * Given a stable rendered state, checks every rendered element whether it needs * to be probed for dynamic height. Adjusts scroll height and top if necessary. */ <del> private _rerender(renderTop: number, renderHeight: number): void { </del> <ins> private _rerender(renderTop: number, renderHeight: number, updateScrollTop: boolean = true): void { </ins> const previousRenderRange = this.getRenderRange(renderTop, renderHeight); // Let's remember the second element's position, this helps in scrolling up
Code change:
Issue Type: <bBug</bWhen : one mouse wheel scroll in extension view: moves 100px one mouse wheel scroll in settings editor: moves 100px When : one mouse wheel scroll in extension view: moves 100px, with slight animation one mouse wheel scroll in settings editor: moves 15~25px, without animation I'm using a Logitech G502 Lightspeed mouse, without any scrolling tweaking softwares. ! VS Code version: Code - Insiders 1.48.0-insider (, 2020-08-05T05:30:25.429Z) OS version: WindowsNT x64 10.0. <details<summarySystem Info</summary </detailsExtensions: none <!-- generated by issue reporter --
I don't see this, any idea
I believe this setting is ignored for macOS. Duplicate of
Actually not a duplicate. Interesting. I need to get my hands on a mouse to see if I can repro.
Created a PR that fixes this:

Related discussion:
text: } } <del> if (typeof anchorElementIndex === 'number') { </del> <ins> if (updateScrollTop && typeof anchorElementIndex === 'number') { </ins> this.scrollTop = this.elementTop(anchorElementIndex) - anchorElementTopDelta!; }
Code change:
Issue Type: <bBug</brepo your user tsdk to use this version, for example: load the VS Code workspace (making sure you are using your user TS version) a file in and try getting the document outline Bug Big delay. This is because two full TS Servers are being spawned instead of a syntax only server + full server (see memory usage in screenshot): <img width="1079" alt="Screen Shot 2020-08-11 at 3 13 33 PM" src="https://user-"VS Code version: Code - Insiders 1.48.0-insider (, 2020-08-11T10:13:04.551Z) OS version: Darwin x64 19.6.0 <details<summarySystem Info</summary </details<!-- generated by issue reporter --
Seems like this was caused by
For verification, try the following cases: Using TS 3.9.7 Using TS 4.0.1-rc Using TS Using an old TS version like 3.5 (older versions don't support the syntax server at all) All should load the document symbols quickly even while the loading spinner is showing You can use the same global install in all cases, just make sure to reload VS Code each time
Assigning this to july milestone since it is a candidate.
following your steps I have verified that the outline get loaded quickly, however I still see two tsservers spinning up when I open the process explorer. If I understood correctly this is by design, since only one of them has a large memory usage. I have verified for TS: 3.9.7, 4.0.1-rc. ts 3.5 Thus adding verified label !

Related discussion:
text: import { GetErrRoutingTsServer, ITypeScriptServer, ProcessBasedTsServer, SyntaxRoutingTsServer, TsServerDelegate, TsServerProcessFactory, TsServerProcessKind } from './server'; import { TypeScriptVersionManager } from './versionManager'; import { ITypeScriptVersionProvider, TypeScriptVersion } from './versionProvider'; <del> import * as semver from 'semver'; </del> const enum CompositeServerType { /** Run a single server that handles all commands  */
Code change:
Issue Type: <bBug</brepo your user tsdk to use this version, for example: load the VS Code workspace (making sure you are using your user TS version) a file in and try getting the document outline Bug Big delay. This is because two full TS Servers are being spawned instead of a syntax only server + full server (see memory usage in screenshot): <img width="1079" alt="Screen Shot 2020-08-11 at 3 13 33 PM" src="https://user-"VS Code version: Code - Insiders 1.48.0-insider (, 2020-08-11T10:13:04.551Z) OS version: Darwin x64 19.6.0 <details<summarySystem Info</summary </details<!-- generated by issue reporter --
Seems like this was caused by
For verification, try the following cases: Using TS 3.9.7 Using TS 4.0.1-rc Using TS Using an old TS version like 3.5 (older versions don't support the syntax server at all) All should load the document symbols quickly even while the loading spinner is showing You can use the same global install in all cases, just make sure to reload VS Code each time
Assigning this to july milestone since it is a candidate.
following your steps I have verified that the outline get loaded quickly, however I still see two tsservers spinning up when I open the process explorer. If I understood correctly this is by design, since only one of them has a large memory usage. I have verified for TS: 3.9.7, 4.0.1-rc. ts 3.5 Thus adding verified label !

Related discussion:
text: let tsServerLogFile: string | undefined; if (kind === TsServerProcessKind.Syntax) { <del> if (semver.gte(API.v400rc.fullVersionString, apiVersion.fullVersionString)) { args.push('--serverMode'); args.push('partialSemantic'); } else { </del> <ins> if (apiVersion.gte(API.v401)) { args.push('--serverMode', 'partialSemantic'); } else { </ins> args.push('--syntaxOnly'); } }
Code change:
Issue Type: <bBug</brepo your user tsdk to use this version, for example: load the VS Code workspace (making sure you are using your user TS version) a file in and try getting the document outline Bug Big delay. This is because two full TS Servers are being spawned instead of a syntax only server + full server (see memory usage in screenshot): <img width="1079" alt="Screen Shot 2020-08-11 at 3 13 33 PM" src="https://user-"VS Code version: Code - Insiders 1.48.0-insider (, 2020-08-11T10:13:04.551Z) OS version: Darwin x64 19.6.0 <details<summarySystem Info</summary </details<!-- generated by issue reporter --
Seems like this was caused by
For verification, try the following cases: Using TS 3.9.7 Using TS 4.0.1-rc Using TS Using an old TS version like 3.5 (older versions don't support the syntax server at all) All should load the document symbols quickly even while the loading spinner is showing You can use the same global install in all cases, just make sure to reload VS Code each time
Assigning this to july milestone since it is a candidate.
following your steps I have verified that the outline get loaded quickly, however I still see two tsservers spinning up when I open the process explorer. If I understood correctly this is by design, since only one of them has a large memory usage. I have verified for TS: 3.9.7, 4.0.1-rc. ts 3.5 Thus adding verified label !

Related discussion:
text: public static readonly v380 = API.fromSimpleString('3.8.0'); public static readonly v381 = API.fromSimpleString('3.8.1'); public static readonly v390 = API.fromSimpleString('3.9.0'); <del> public static readonly v400rc = API.fromSimpleString('4.0.0-rc'); </del> public static readonly v400 = API.fromSimpleString('4.0.0'); <ins> public static readonly v401 = API.fromSimpleString('4.0.1'); </ins> public static fromVersionString(versionString: string): API { let version = semver.valid(versionString);