diff --git a/src/components/ProjectSetupModal.tsx b/src/components/ProjectSetupModal.tsx index a8f6ba4d..2aa64262 100644 --- a/src/components/ProjectSetupModal.tsx +++ b/src/components/ProjectSetupModal.tsx @@ -383,12 +383,13 @@ export function ProjectSetupModal({ return (
{ + if (e.target === e.currentTarget) onClose(); + }} onWheelCapture={(e) => e.stopPropagation()} >
e.stopPropagation()} onKeyDown={handleKeyDown} >
diff --git a/src/components/nodes/ControlPanel.tsx b/src/components/nodes/ControlPanel.tsx index 888b155d..aa526284 100644 --- a/src/components/nodes/ControlPanel.tsx +++ b/src/components/nodes/ControlPanel.tsx @@ -884,6 +884,7 @@ function EaseCurveControls({ node }: { node: Node }) { const removeEdge = useWorkflowStore((state) => state.removeEdge); const [showPresets, setShowPresets] = useState(false); const presetsButtonRef = useRef(null); + const presetsPopupRef = useRef(null); useEffect(() => { if (!showPresets) return; @@ -893,6 +894,7 @@ function EaseCurveControls({ node }: { node: Node }) { }; const handleClickOutside = (e: MouseEvent) => { if (presetsButtonRef.current?.contains(e.target as HTMLElement)) return; + if (presetsPopupRef.current?.contains(e.target as HTMLElement)) return; setShowPresets(false); }; @@ -1022,6 +1024,7 @@ function EaseCurveControls({ node }: { node: Node }) { {showPresets && typeof document !== 'undefined' && createPortal(