Skip to content

Commit 8a47d0d

Browse files
committed
fix: fix popup mouse leave event handler type and logic
1 parent 867a20c commit 8a47d0d

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

src/index.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -568,7 +568,7 @@ export function generateTrigger(
568568
const hoverToHide = hideActions.has('hover');
569569

570570
let onPopupMouseEnter: React.MouseEventHandler<HTMLDivElement>;
571-
let onPopupMouseLeave: VoidFunction;
571+
let onPopupMouseLeave: React.MouseEventHandler<HTMLDivElement>;
572572

573573
const ignoreMouseTrigger = () => {
574574
return touchedRef.current;
@@ -629,8 +629,11 @@ export function generateTrigger(
629629
ignoreMouseTrigger,
630630
);
631631

632-
onPopupMouseLeave = () => {
633-
triggerOpen(false, mouseLeaveDelay);
632+
onPopupMouseLeave = (event: React.MouseEvent) => {
633+
// only trigger close when mouse leave popup
634+
if (popupEle?.contains(event.target as HTMLElement)) {
635+
triggerOpen(false, mouseLeaveDelay);
636+
}
634637
};
635638
}
636639

0 commit comments

Comments
 (0)