Code change:
<!-- 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. --Version: 1.76.2 Commit: Date: 2023-03-14T17:57:21.103Z Electron: 19.1.11 Chromium: 102.0.5005.196 16.14.2 V8: 10.2.154.26-electron.0 OS: Linux x64 5.19.0-38-generic Sandboxed: No Steps to Reproduce: a git diff view and delete one of the lines. the right pointing arrow in the diff view. https://user-
I cannot reproduce this. Do you see any errors in developer tools? Does this reproduce with any file and with any change or is it specific to this particular file? https://user-
I can't reproduce it anymore either. I just updated to 1.77.0. Maybe it just happened to get fixed in that version? I can still reproduce though.
Hmm no I can still reproduce it in 1.77.0.
Found it! Seems like the issue only occurs after line 99
Hmm and another requirement is that the file has 1000 lines in total or more I think.
I cannot reproduce. I tried with a file which has 1353 lines and I do an edit at line 600. Do you see any errors in Developer Tools (Help Toggle Developer Tools)? https://user-
I don't think the devtools console contains anything of interest: WARN Via '' extension 'ms-' wants API proposal 'contribEditorGutterMenu' but that proposal DOES NOT EXIST. Likely, the proposal has been finalized (check '') or was abandoned. WARN Via '' extension '' wants API proposal 'contribEditorGutterMenu' but that proposal DOES NOT EXIST. Likely, the proposal has been finalized (check '') or was abandoned. WARN Via '' extension 'ms-toolsai.jupyter' wants API proposal 'notebookControllerKind' but that proposal DOES NOT EXIST. Likely, the proposal has been finalized (check '') or was abandoned. ERR Extension 'github.copilot-nightly' appears in but enables LESS API proposals than the extension wants. (LOSES): inlineCompletionsAdditions, interactive (WINS): inlineCompletionsAdditions INFO [perf] Render performance baseline is 62ms I've found that the line 100 rule doesn't completely hold for me either, when make the right panel very big it becomes clickable again.
So far my hypothesis is that you need a long word wrapped line above the one you're trying to reset. But honestly I'm not sure anymore at this point. https://user-
Hooray, this reproduces when using word wrapping! The root cause is that some properties on the mouse event are not converted from view coordinates to model coordinates. This reproduces with the following word wrapped .txt file:
Seems like I can still reproduce (with and w/o word-wrapping): https://user- https://user-
I ran git bisect and I had to skip a few commits due to build problems, but I believe this is caused by The first bad commit could be any of:
So merging the PR will make the arrows work but will also bring back the issue of also setting breakpoints? That is unfortunate but I think I'd rather have the arrows working.
:+1: I think it's better to go back to the state we had in 1.77 and the risk is minimal as it is a simple revert.

Related discussion:
text: if (result.range) { result.range = coordinatesConverter.convertViewRangeToModelRange(result.range); } <ins> if (result.type === MouseTargetType.GUTTER_VIEW_ZONE || result.type === MouseTargetType.CONTENT_VIEW_ZONE) { result.detail = this.convertViewToModelViewZoneData(result.detail, coordinatesConverter); } </ins> return result; } <ins> private static convertViewToModelViewZoneData(data: IMouseTargetViewZoneData, coordinatesConverter: ICoordinatesConverter): IMouseTargetViewZoneData { return { viewZoneId: data.viewZoneId, positionBefore: data.positionBefore ? coordinatesConverter.convertViewPositionToModelPosition(data.positionBefore) : data.positionBefore, positionAfter: data.positionAfter ? coordinatesConverter.convertViewPositionToModelPosition(data.positionAfter) : data.positionAfter, position: coordinatesConverter.convertViewPositionToModelPosition(data.position), afterLineNumber: coordinatesConverter.convertViewPositionToModelPosition(new Position(data.afterLineNumber, 1)).lineNumber, }; } </ins> }