diff --git a/frontend/src/state-providers/tooltip.ts b/frontend/src/state-providers/tooltip.ts index 8d6055693f..8bbe861895 100644 --- a/frontend/src/state-providers/tooltip.ts +++ b/frontend/src/state-providers/tooltip.ts @@ -73,6 +73,12 @@ export function createTooltipState(editor: Editor) { document.addEventListener("mousedown", closeTooltip); document.addEventListener("keydown", closeTooltip); + // Hide tooltip and cancel pending timeout when the mouse leaves the document + document.addEventListener("mouseleave", () => { + if (tooltipTimeout) clearTimeout(tooltipTimeout); + closeTooltip(); + }); + // Stop showing a tooltip if the user clicks or presses a key, and require the user to first move out of the element before it can re-appear function closeTooltip() { update((state) => {