jiebi/CodeConvo huggingface dataset:
Code change:
this._hoverSettings = { enabled: hoverOpts.enabled, sticky: hoverOpts.sticky, <del> hidingDelay: hoverOpts.delay </del> <ins> hidingDelay: hoverOpts.hidingDelay </ins> }; if (hoverOpts.enabled) {

Related discussion:
text: Type: <bBug</bSince the upgrade to 1.91.1, the tooltips/popups (that show function documentation on mouseover, for example) have become a hinder, because they seem to get sticky, being in the way when I want to select/click something on the lines that the tooltip/popup is overlaying. I'm not 100% sure how to explain this, or what exactly changed, but I know this wasn't a problem in the version before. Something definitely changed in version 1.91.1. I'm not sure if it's because they're appearing faster, or taking longer to disappear, or... Thank you! VS Code version: Code 1.91.1 (, 2024-07-09T22:06:49.809Z) OS version: WindowsNT x64 10.0. Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (13)</summaryExtensionVersion ------ better-comments3.0.2 vscode-intelephense-client1.10.4 path-intellisense2.9.0 vscode-eslint3.0.10 gitlens15.2.0 prettier-vscode10.4.0 duplicate1.0.2 vscode-github-actions0.26.3 php-cs-fixer0.3.13 vscode-phpunit3.2.2 vscodeintellicode1.3.1 php-sniffer1.3.0 php-debug1.34.0 </details<!-- generated by issue reporter --
Hi the editor hover has not been fundamentally changed last iteration. Last iteration I have refactored the editor hover code so this could be the source of the new issue you are seeing. For me to understand better the situation, next time you see the issue you described, could you post a screen recording here and an example of the code where you are seeing the issue?
Thank you. I cannot show much of the code, but here's a short video which I hope helps. (I tried to "exaggerate/force" a bit, but it should show what I mean) These editor hovers have been annoying me all day, since the update. They just keep being in the way. In previous versions, wasn't the hover disappearing when the mouse leaves the tooltip? Or when the user is selecting text? Thanks.
Code change:
this._hoverSettings = { enabled: hoverOpts.enabled, sticky: hoverOpts.sticky, <del> hidingDelay: hoverOpts.delay </del> <ins> hidingDelay: hoverOpts.hidingDelay </ins> }; if (hoverOpts.enabled) {

Related discussion:
text: [video removed, for privacy]
What version were you previously on?
Hi the hover should still disappear if you keep your mouse outside of the hover for long enough. Perhaps you could change the value of the setting . This setting controls how quickly the hover disappears. The default is 300 ms, meaning that after 300 ms outside of the hover it disappears. Similarly you could tweak the setting - this setting controls how quickly the hover shows, ie how long the cursor needs to be on a word before the hover is shown.
I believe I was on 1.91.0, but maybe I didn't use it enough between upgrading to that one, and 1.91.1, to find this issue. Before that, I was on last month's iteration, which definitely didn't have this problem. Thank you. I was going to change that option, and then I saw a hint about having to be enabled. So, what I did is I actually disabled that one. Seems to have improved a bit. It seems to be still remaining sticky if I do put the mouse over it, so I'm not sure what exactly that option does (its description says the hover will remain visible when mouse is moved over it), but somehow, disabling this option makes the hover disappear if I move the mouse outside the code that triggered the hover, which is similar to the behavior I had before, I think. And if I click on the hover, it remains sticky, which is good/expected. Great. I changed from 300 to 600, so it doesn't appear so quickly. Thank you for the tips. I think there's still one question left -- what about when I'm selecting text (like shown in the video above) ? Wasn't the hover supposed to disappear, once I'm selecting text, and therefore the user is not interested in having a hover in the way of the selection? :) Many thanks, again!
Hi thank you for the comment. I believe the way the editor hover works is that when you click outside of the hover, the hover disappears. Meaning when you start a selection it disappears. However as you move the cursor to expand the selection and hover on a word the hover can appear again. Perhaps we could make the hover never appear when a selection is under way, I will open an issue about it and let the community put votes on it.
Code change:
this._hoverSettings = { enabled: hoverOpts.enabled, sticky: hoverOpts.sticky, <del> hidingDelay: hoverOpts.delay </del> <ins> hidingDelay: hoverOpts.hidingDelay </ins> }; if (hoverOpts.enabled) {

Related discussion:
text: I am having an issue with this as well since updating versions. I attached some images. attempting to drag selected text into the object ! once selected tooltip stays in place permanently blocking destination ! I think once you hold down left click on a selection to start moving, the tooltip should always disappear. At least that is the behavior that you would expect in most applications.
+1 to this, also experiencing the same issue after updating versions
Also having this issue. The Hover Hide Delay is using the Hover Delay instead, so if you have a long delay before the tooltip appears, you will have a long delay before it disappears. If you set the Hover Delay to 0 and the Hover Hide Delay to 1000, should see the tooltip appear and disappear instantly
I have noticed and issue when using VS Code, in which the clicking outside of a tooltip will no longer dismiss hover tooltips. This occurs after leaving VS Code open for a while, including after a sleep/hibernate cycle. When this happens I have to restart VS Code, otherwise, clicking anywhere, including to initiate text selection does not dismiss any existing tooltip and the tool tip then interferes with the selection process. Perhaps there is a bug that is causing the described tooltip/click behavior to break after leaving VS Code open for some time. It might be related to this issue of tooltips being more sticky than intended. Version: 1.92.1 (user setup) Commit: Date: 2024-08-07T20:16:39.455Z Electron: 30.1.2 ElectronBuildId: Chromium: 124.0.6367.243 20.14.0 V8: 12.4.254.20-electron.0 OS: Windows_NT x64 10.0.
Looked through the code a bit, and I think this is the issue this.hoverSettings = { enabled: hoverOpts.enabled, sticky: , hidingDelay: }; should be this.hoverSettings = { enabled: hoverOpts.enabled, sticky: , hidingDelay: hoverOpts.hidingDelay }; in and
supports your theory.
Hi thanks a lot for finding this error in the code. If you would like you can make a PR containing this finding, so we can merge your fix and you can participate as a community member in the project. If not I will make the fix that you mention :). Thanks for the catch.
Code change:
this._hoverSettings = { enabled: hoverOpts.enabled, sticky: hoverOpts.sticky, <del> hidingDelay: hoverOpts.delay </del> <ins> hidingDelay: hoverOpts.hidingDelay </ins> }; if (hoverOpts.enabled) {

Related discussion:
text: If you could make the fix, that'd be great, I'm not very familiar with git
Sounds good thanks again
Hi the PR that fixes this issue is here When this is merged, you should see the correct behavior in tomorrow's insiders release or next month's stable release. Please let me know if this is not the case and you continue seeing this issue.
Code change:
} function substituteWithWhitespace(result: string, start: number, end: number, oldContent: string, before: string, after: string) { <del> let accumulatedWS = 0; </del> result += before; <del> for (let i = start + before.length; i < end; i++) { </del> <ins> let accumulatedWS = -before.length; // start with a negative value to account for the before string for (let i = start; i < end; i++) { </ins> const ch = oldContent[i]; if (ch === 'n' || ch === 'r') { // only write new lines, skip the whitespace

Related discussion:
text: Type: <bBug</bIn the latest release syntax highlighting in html files with included JavaScript is so far off it's unusable. I have a comment (which should be green) Syntax highlighting has the the correct color. is dark blue. is green again. is a different color blue. The color choices and what parts of words are highlighted seems random. VS Code version: Code 1.71.2 (, 2022-09-14T21:07:15.900Z) OS version: Darwin arm64 21.6.0 Modes: Sandboxed: No <details<summarySystem Info</summary </details<details<summaryExtensions (105)</summaryExtensionVersion ------ html-snippets0.2.1 vscode-languagetool3.8.0 vscode-languagetool-en3.8.0 vscode-icalendar1.0.1 vscode-color0.4.5 code-gnu-global0.2.2 simple-react-snippets1.2.7 vscode-reveal-hugo0.2.5 doxdocgen1.4.0 vscode-postgresql-client25.7.11 vscode-mac-color-picker1.1.0 vscode-eslint2.2.6 vscode-instant-markdown1.4.7 vscode-springboot-snippets1.2.0 xml2.5.1 rust-syntax0.6.1 vscode-html-css1.13.1 EditorConfig0.16.4 vscode-npm-script0.3.28 esp-idf-extension1.5.0 vscode-diff1.4.2 markdown-table-formatter2.2.4 change-case0.0.6 vs-code-http-server-and-html-preview2.2.2 copilot1.47.6882 go0.35.2 CppSnippets0.0.15 rest-client0.25.1 flux1.0.4 mediawiki0.0.4 tablegenerator1.0.4 better-cpp-syntax1.15.19 react-component1.1.0 vscode-hacker-typer0.1.1 diff-tool0.0.1 hugo-shortcode-syntax1.0.0 vscode-github0.30.7 cortex-debug1.6.5 vscode-language-babel0.0.36 vscode-clang0.2.4 vscode-http-client0.34.0 prettify-json0.0.
Code change:
} function substituteWithWhitespace(result: string, start: number, end: number, oldContent: string, before: string, after: string) { <del> let accumulatedWS = 0; </del> result += before; <del> for (let i = start + before.length; i < end; i++) { </del> <ins> let accumulatedWS = -before.length; // start with a negative value to account for the before string for (let i = start; i < end; i++) { </ins> const ch = oldContent[i]; if (ch === 'n' || ch === 'r') { // only write new lines, skip the whitespace

Related discussion:
text: 3 mongodb-vscode0.9.3 mongoose-os-ide0.6.0 vscode-docker1.22.1 csharp1.25.0 data-workspace-vscode0.3.0 mssql1.16.0 sql-bindings-vscode0.3.0 sql-database-projects-vscode0.19.0 python2022.14.0 vscode-pylance2022.9.40 jupyter2022.8. jupyter-keymap1.0.0 jupyter-renderers1.0.9 remote-containers0.251.0 remote-ssh0.84.0 remote-ssh-edit0.82.0 remote-wsl0.66.3 vscode-remote-extensionpack0.21.0 cmake-tools1.12.27 cpptools1.12.4 cpptools-extension-pack1.3.0 live-server0.4.1 vsliveshare-pack0.4.0 vscode-react-native1.9.3 sqltools0.25.1 sqltools-driver-pg0.3.0 vetur0.36.0 particle-vscode-core1.15.4 particle-vscode-pack1.15.4 particle-vscode-snippets1.15.4 vscode-boot-dev-pack0.1.0 vscode-concourse1.39.0 vscode-manifest-yaml1.39.0 vscode-spring-boot1.39.0 platformio-ide2.5.4 r-debugger0.4.7 java1.10.0 r2.5.3 wordcount0.1.33 bash-debug0.3.9 rust-analyzer0.3.1221 sockscode-vscode1.0.1 stackery1.1.4 spellchecker1.4.0 markdowntable0.10.2 html-preview-vscode0.2.5 cmake0.0.17 vscode-arduino0.4.12 vscode-java-debug0.44.0 vscode-java-dependency0.21.0 vscode-java-pack0.25.2 vscode-java-test0.37.1 vscode-maven0.39.0 vscode-spring-boot-dashboard0.7.1 vscode-spring-initializr0.11.0 codetour0.0.58 gistfs0.4.1 vscode-wakatime19.3.0 full-react-snippets1.4.2 vscode-java-saber0.
Code change:
} function substituteWithWhitespace(result: string, start: number, end: number, oldContent: string, before: string, after: string) { <del> let accumulatedWS = 0; </del> result += before; <del> for (let i = start + before.length; i < end; i++) { </del> <ins> let accumulatedWS = -before.length; // start with a negative value to account for the before string for (let i = start; i < end; i++) { </ins> const ch = oldContent[i]; if (ch === 'n' || ch === 'r') { // only write new lines, skip the whitespace

Related discussion:
text: 1.2 markdown-all-in-one3.4.3 vscode-aspell0.1.4 propertylist0.0.2 (2 theme extensions excluded) </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
<img width="940" alt="Screen Shot 2022-09-28 at 6 56 06 PM" src="https://user-"<img width="879" alt="Screen Shot 2022-09-28 at 6 15 54 AM" src="https://user-"
Does this reproduce in the with all ?
It sure does. <img width="517" alt="Screen Shot 2022-09-28 at 7 12 08 PM" src="https://user-"<img width="705" alt="Screen Shot 2022-09-28 at 7 13 25 PM" src="https://user-"
Please share the text of file that causes this
It ain't pretty ...
It's a template file for Hugo. Specifically a file called
same as semantic highlighting is broken for some reason
Reproduced with The special thing that there's a new line right after
Code change:
import { Disposable } from 'vs/base/common/lifecycle'; import { ILogger, ILoggerService, LogLevelToString } from 'vs/platform/log/common/log'; import { dirname, join } from 'vs/base/common/path'; <del> import { ChildProcess, spawn } from 'child_process'; </del> <ins> import { ChildProcess, StdioOptions, spawn } from 'child_process'; </ins> import { IProductService } from 'vs/platform/product/common/productService'; import { isMacintosh, isWindows } from 'vs/base/common/platform'; import { CancelablePromise, createCancelablePromise, Delayer } from 'vs/base/common/async';

Related discussion:
text: Version: 1.78.0-insider (user setup) Commit: Date: 2023-04-04T09:32:52.453Z Electron: 22.4.3 Chromium: 108.0.5359.215 16.17.1 V8: 10.8.168.25-electron.0 OS: Windows_NT x64 10.0. Sandboxed: Yes run from a Windows command prompt The tunnel starts and prints open VS Code, and open the output Note that the output is stuck at Missing are the message and the info that the tunnel is attached The UI thinks the tunnel is still connecting. Sometimes this also works, but when I try it, most of the time it is stuck
Can you please enable trace logging and share the output?
Nothing extra messages shown when the Desktop tunnel attaches:
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!
Still a problem in Version: 1.78.0-insider (user setup) Commit: Date: 2023-04-12T05:19:38.288Z Reproduces every time I try it
This issue has been closed automatically because it needs more information and has not had recent activity. See also our guidelines. Happy Coding!
<!-- 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!
I'm still not seeing info in the log in VS Code that the tunnel is attached after from the command line and seeing the "Open this link in your browser". <img width="945" alt="image" src=""
the tunnel will not start unless you "Turn on Remote Tunnel Access"
<img width="730" alt="image" src=""Looks good to me after enabling tunnels in VS Code
Thanks. Enabling Tunnels in VS Code fixed it.
Code change:
primary: KeyCode.Escape, secondary: [KeyMod.Shift | KeyCode.Escape] } })); <ins> class ToggleScreenReaderMode extends Action2 { constructor() { super({ id: 'editor.action.toggleScreenReaderAccessibilityMode', title: { value: nls.localize('toggleScreenReaderMode', "Toggle Screen Reader Accessibility Mode"), original: 'Toggle Screen Reader Accessibility Mode' }, f1: true, }); } async run(accessor: ServicesAccessor): Promise<void> { const configurationService = accessor.get(IConfigurationService); const value = configurationService.getValue('editor.accessibilitySupport'); configurationService.updateValue('editor.accessibilitySupport', value === 'on' ? 'off' : 'on'); } } registerAction2(ToggleScreenReaderMode); </ins>

Related discussion:
text: I got into screen reader optimized mode on Windows by using NVDA, but after closing NVDA, I don't know how to leave that mode. I tried clicking on the indicator in the taskbar, and also tried searching "accessibility" in the command palette for a command that would toggle it off. !
clicking on the indicator in the taskbar should work we should also have a toggle command in the command palette so that clicking isn't required and can reference that command in this help menu !
fyi for any input
Agree with the above. Also on vscode restart you should no longer be in screen reader mode if that is happening, it is a bug. take into account that the accessibility help dialog shown in the screenshot has not been polished since we introduced it. We could make sure the text is more concise and user friendly. Visually it should not be polished since this is targeted for screen reader users.
Try to set a custom keybinding for this command - I find it very handy
How do I get that status bar entry to show? I tried the following: Turn on NVDA when Manually set `"editor.accessibilitySupport": "on"
This command should work !
That still doesn't cause the status bar entry to show for me. I've checked the status bar show/hide menu and it's not in there either.
any interesting settings? https://user-
I was about to say I have the same issue, but then noticed that I had to go to a text editor to test out the feature. I was running the toggle command in the Settings editor.
Not being in a text editor was the problem! I was either in the settings editor or the endgame notebook.
Code change:
getId() { return languageId; }, <del> doValidation(document: TextDocument): Diagnostic[] { </del> <ins> doValidation(document: TextDocument, settings = workspace.settings): Diagnostic[] { </ins> updateCurrentTextDocument(document); <ins> host.getCompilationSettings()['experimentalDecorators'] = settings && settings.javascript && settings.javascript.implicitProjectConfig.experimentalDecorators; </ins> const syntaxDiagnostics: ts.Diagnostic[] = jsLanguageService.getSyntacticDiagnostics(workingFile); const semanticDiagnostics = jsLanguageService.getSemanticDiagnostics(workingFile); return syntaxDiagnostics.concat(semanticDiagnostics).map((diag: ts.Diagnostic): Diagnostic => {

Related discussion:
text: <!-- 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.43.0 OS Version: n/a I have the set to in my settings: Given a Does not produce any warnings as expected. However in : The linter says
This has the same root cause as : script are owned by the html extension instead of by the JavaScript extension. Fixing that is difficult However we could have a small fix that just makes html understand the setting. Marking this as help-wanted
Hello I'd like to try my hands on fixing this issue. Can you give some pointers as to which files are good places to start?
This change will need to be made in the HTML extension Here's where we configure TypeScript for the html extension: You should: Pass the value for in with the initial configuration Make sure that the language service updates its value for when the VS Code setting changes
Is there another way to get the setting value other than vscode.workspace.getConfiguration()? The 'vscode' module cannot be found when I try to import it into javascriptMode. I think 'vscode' would have to be as a dependency in in order to import 'vscode'.
Right now I'm passing in a default 'false' for experimentalDecorators in the initial configuration and passing the settings into getJavascriptMode.doValidation to update compilerOptions and calling ts.createLanguageService(host) every time doValidation is invoked. It has the expected behavior, but is there a better way to update the compiler options without creating the service every time it runs validation?
Is called when the file is changed? If it is, try updating the object that it returns
I am reproducing this error now with the following code: I realize this is known, but I will add the mention with respect to . Here is the relevant docs page, if a person wanted to make a unit test using If anyone finds this in the future, if is set in , it should suppress this error. Additionally, both and files, in the root of the project, take precedence over that setting.
Code change:
// Create and show quick pick const pick = this._quickInputService.createQuickPick<IQuickPickItem | ITerminalLinkQuickPickItem>({ useSeparators: true }); <ins> const disposables = new DisposableStore(); disposables.add(pick); </ins> pick.items = picks; pick.placeholder = localize('terminal.integrated.openDetectedLink', "Select the link to open, type to filter all links"); pick.sortByLabel = false;

Related discussion:
text: Quick pick and events are disposables: is a listeners are : , , , , , A few instances of pickers or events not being disposed or registered as disposable: [x] [x] [x] [x] [x] [x] [x] [x] [x] [x] [x] [x] //cc
Thanks for catching these just taught me that there's a better way to use the quick pick API - with and that will avoid this
Interesting, curious to see how that change looks like, I have a lot more places:
Code change:
description: 'content-hover-highlight', className: 'hoverHighlight' }); <ins> public static computeHoverRanges(anchorRange: Range, messages: IHoverPart[]) { // The anchor range is always on a single line const anchorLineNumber = anchorRange.startLineNumber; let renderStartColumn = anchorRange.startColumn; let renderEndColumn = anchorRange.endColumn; let highlightRange: Range = messages[0].range; let forceShowAtRange: Range | null = null; for (const msg of messages) { highlightRange = Range.plusRange(highlightRange, msg.range); if (msg.range.startLineNumber === anchorLineNumber && msg.range.endLineNumber === anchorLineNumber) { // this message has a range that is completely sitting on the line of the anchor renderStartColumn = Math.min(renderStartColumn, msg.range.startColumn); renderEndColumn = Math.max(renderEndColumn, msg.range.endColumn); } if (msg.forceShowAtRange) { forceShowAtRange = msg.range; } } return { showAtPosition: forceShowAtRange ? forceShowAtRange.getStartPosition() : new Position(anchorRange.startLineNumber, renderStartColumn), showAtRange: forceShowAtRange ? forceShowAtRange : new Range(anchorLineNumber, renderStartColumn, anchorLineNumber, renderEndColumn), highlightRange }; } </ins> } class ContentHoverVisibleData {

Related discussion:
text: ! I see this sometimes, but it often gets fixed if I try again, or close and reopen the editor, etc. Right now it keeps happening and it's just impossible to click the hover. I don't know how this API works but I assume this is on vscode's side. Happy to set breakpoints and debug
I couldn't reproduce this so I'm not sure what's the root problem. However, I'm saving here a patch which simulates a hover very similar to the one in the gif: <img width="1141" alt="image" src="https://user-"diffn- editor.focusNotebookCell(newCell, newFocusMode, { focusEditorLine: 1 });n+ await editor.focusNotebookCell(newCell, newFocusMode, { focusEditorLine: 1 });n
I tried for quite a while but couldn't repro. I think there might be some settings that cause the issue reproduce. Does this reproduce when you comment out all your user settings?
Yeah, it reproes with all settings commented out
Thanks to via we could find a repro. Reproduces consistently when hovering at the end of the line: It turns out it has to do with the range the hover provider returns. If the hover provider returns a range that spans one line above the hover request, the hover will render one line above. If the hover provider returns a range that spans two lines above the hover request, the hover will render two lines above, etc. Here's a simplified patch: https://user-
To verify, use gitlens and hover over the end of the line at
Works great but raises the question, why does gitlens return a hover with a multiline range? And I get a highlight in this region, but it blinks and disappears on line 919, and on other lines, no highlight. !
PR to improve the highlight range at
I'm still seeing the original issue at