Change:
Type: <bBug</bTooltip position changed VSCode insiders and also see the right pointer is also missing Insiders release ! Stable release ! VS Code version: Code - Insiders 1.85.0-insider (, 2023-11-24T15:21:39.004Z) OS version: WindowsNT x64 10.0. Modes: <details<summarySystem Info</summary </details<details<summaryExtensions (15)</summaryExtensionVersion ------ ng-template17.0.2 multi-cursor-case-preserve1.0.5 codeium1.4.20 codium0.7.19 svg-gallery2.1.0 console-log0.6.2 gitlens2023.11.2404 vscode-test-explorer2.21.1 angular2-switcher0.4.0 vscode-jest-test-adapter0.8.1 template-string-converter0.6.1 test-adapter-converter0.1.8 gitpatch0.2.1 material-icon-theme4.32.0 pretty-ts-errors0.5.2 </details<details<summaryA/B Experiments</summary</details<!-- generated by issue reporter --
Assuming this could be a bug in Hover infrastructure. Please let me know if it is otherwise.

Discussion:
*/ target: IHoverDelegateTarget | HTMLElement; /** <del> * Position of the hover. The default is to show above the target. This option will be ignored * if there is not enough room to layout the hover in the specified position, unless the * forcePosition option is set. */ hoverPosition?: HoverPosition; /** * Whether to show the hover pointer */ showPointer?: boolean; /** * Whether to skip the fade in animation, this should be used when hovering from one hover to * another in the same group so it looks like the hover is moving from one element to the other. */ skipFadeInAnimation?: boolean; /** </del> * The container to pass to {@link IContextViewProvider.showContextView} which renders the hover * in. This is particularly useful for more natural tab focusing behavior, where the hover is * created as the next tab index after the element being hovered and/or to workaround the * element's container hiding on `focusout`. */ container?: HTMLElement; <ins> /** * Options that defines where the hover is positioned. */ position?: { /** * Position of the hover. The default is to show above the target. This option will be ignored * if there is not enough room to layout the hover in the specified position, unless the * forcePosition option is set. */ hoverPosition?: HoverPosition; }; appearance?: { /** * Whether to show the hover pointer */ showPointer?: boolean; /** * Whether to skip the fade in animation, this should be used when hovering from one hover to * another in the same group so it looks like the hover is moving from one element to the other. */ skipFadeInAnimation?: boolean; }; </ins> } export interface IHoverDelegate {

const hoverOptions: IHoverDelegateOptions = { content, target: this.target, <del> showPointer: this.hoverDelegate.placement === 'element', hoverPosition: HoverPosition.BELOW, skipFadeInAnimation: !this.fadeInAnimation || !!oldHoverWidget, // do not fade in if the hover is already showing </del> <ins> appearance: { showPointer: this.hoverDelegate.placement === 'element', skipFadeInAnimation: !this.fadeInAnimation || !!oldHoverWidget, // do not fade in if the hover is already showing }, position: { hoverPosition: HoverPosition.BELOW, }, </ins> ...options };

linkHandler: (url) => { this.options.linkOpenerDelegate(url); }, <del> showPointer: true, </del> <ins> appearance: { showPointer: true, }, </ins> container: this.container, <del> hoverPosition: HoverPosition.RIGHT </del> <ins> position: { hoverPosition: HoverPosition.RIGHT } </ins> }, false); }

private _lastHoverHideTime: number = 0; readonly showHover = (options: IHoverDelegateOptions) => { <del> options.hoverPosition = HoverPosition.ABOVE; </del> <ins> options.position = options.position ?? {}; options.position.hoverPosition = HoverPosition.ABOVE; </ins> return hoverService.showHover(options); };