Change:
I'm trying to navigate to here from an Inlay Hint, but nothing happens when I click the "Go to Definition" option: ! The LSP traffic for this hint looks like this: The looks correct to me (Code is zero-based, so it says 1195 here but the line is 1196 in the editor): <img width="743" alt="Screenshot 2023-02-21 at 11 16 08" src="https://user-"The text for says: But it's not very clear to me what this means. The location provide here definitely has a symbol defined at the location, which can be navigated to from the breadcrumb/symbol list: <img width="778" alt="Screenshot 2023-02-21 at 11 21 55" src="https://user-"
So, when invoking go to definition at you get the desired result?
I believe so. The request returns the same symbol, so VS code then falls back to request and shows references (I believe there's a setting for this, and it's intended functionality, so you can just use F12 on a declaration to get references easily?).
Please try with column and not with
Sorry, not sure how I did that. But the result appears to be exactly the same:
Oh, I just did some more testing and it seems like the request VS Code is sending is using the current cursor position and not where I clicked? !
I can reproduce, funnily only from the context menu but not from the link gesture.
<!-- 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!
Works great now, thanks ! /verified

Discussion:
import * as dom from 'vs/base/browser/dom'; import { Action, IAction, Separator } from 'vs/base/common/actions'; import { CancellationToken } from 'vs/base/common/cancellation'; <ins> import { generateUuid } from 'vs/base/common/uuid'; </ins> import { IActiveCodeEditor, ICodeEditor } from 'vs/editor/browser/editorBrowser'; import { EditorOption } from 'vs/editor/common/config/editorOptions'; import { Range } from 'vs/editor/common/core/range';

// from all registered (not active) context menu actions select those // that are a symbol navigation actions const filter = new Set(MenuRegistry.getMenuItems(MenuId.EditorContext) <del> .map(item => isIMenuItem(item) ? item.command.id : '')); </del> <ins> .map(item => isIMenuItem(item) ? item.command.id : generateUuid())); </ins> for (const delegate of SymbolNavigationAction.all()) { if (filter.has(delegate.desc.id)) { menuActions.push(new Action(delegate.desc.id, MenuItemAction.label(delegate.desc, { renderShortTitle: true }), undefined, true, async () => { const ref = await resolverService.createModelReference(location.uri); try { <del> await instaService.invokeFunction(delegate.run.bind(delegate), editor, new SymbolNavigationAnchor(ref.object.textEditorModel, Range.getStartPosition(location.range))); </del> <ins> const symbolAnchor = new SymbolNavigationAnchor(ref.object.textEditorModel, Range.getStartPosition(location.range)); const range = part.item.anchor.range; await instaService.invokeFunction(delegate.runEditorCommand.bind(delegate), editor, symbolAnchor, range); </ins> } finally { ref.dispose();