diff --git a/src/viewport-three/ViewportPanel.tsx b/src/viewport-three/ViewportPanel.tsx index 78bca0f5..452f31b2 100644 --- a/src/viewport-three/ViewportPanel.tsx +++ b/src/viewport-three/ViewportPanel.tsx @@ -96,8 +96,12 @@ export function ViewportPanel({ aria-label={`${getViewportPanelLabel(panelId)} viewport panel`} style={panelStyle} onPointerDownCapture={() => onActivatePanel(panelId)} - onPointerEnterCapture={() => onHoverPanel(panelId)} - onPointerLeaveCapture={() => onHoverPanel(null)} + onPointerMoveCapture={() => onHoverPanel(panelId)} + onPointerOutCapture={(event) => { + if (!event.currentTarget.contains(event.relatedTarget as Node | null)) { + onHoverPanel(null); + } + }} onFocusCapture={() => onActivatePanel(panelId)} >