Fixed node dragging and selecting text on input

This commit is contained in:
Lucas Oliveira 2023-07-20 16:49:41 -03:00
commit 7b1b028364
4 changed files with 15 additions and 23 deletions

View file

@ -152,7 +152,7 @@ export default function ParameterComponent({
return (
<div
ref={ref}
className="mt-1 flex w-full flex-wrap items-center justify-between bg-muted px-5 py-2"
className="nopan nodrag mt-1 flex w-full flex-wrap items-center justify-between bg-muted px-5 py-2"
>
<>
<div

View file

@ -20,14 +20,6 @@ type UseUndoRedoOptions = {
enableShortcuts: boolean;
};
type UseUndoRedo = (options?: UseUndoRedoOptions) => {
undo: () => void;
redo: () => void;
takeSnapshot: () => void;
canUndo: boolean;
canRedo: boolean;
};
type HistoryItem = {
nodes: Node[];
edges: Edge[];

View file

@ -97,25 +97,24 @@ function BaseModal({
break;
}
const { setDisableCopyPaste } = useContext(TabsContext);
const [openInner, setOpenInner] = useState(open ?? false);
const { disableCopyPaste, setDisableCopyPaste } = useContext(TabsContext);
const [keepDisabling, setKeepDisabling] = useState(false);
useEffect(() => {
setOpenInner(open);
}, [open]);
useEffect(() => {
setOpen(openInner);
if (openInner) {
if (keepDisabling) {
setDisableCopyPaste(true);
} else {
setDisableCopyPaste(false);
}
}, [openInner]);
}, [disableCopyPaste]);
useEffect(() => {
if (!open) {
setKeepDisabling(false);
}
}, [open]);
//UPDATE COLORS AND STYLE CLASSSES
return (
<Dialog open={openInner} onOpenChange={setOpenInner}>
<Dialog modal={true} open={open} onOpenChange={setOpen}>
<DialogTrigger className="w-full" hidden={triggerChild ? false : true}>
{triggerChild}
</DialogTrigger>

View file

@ -379,12 +379,15 @@ export default function Page({ flow }: { flow: FlowType }) {
}}
edges={edges}
onPaneClick={() => {
console.log("enableCopyPastePaneClick");
setDisableCopyPaste(false);
}}
onPaneMouseLeave={() => {
console.log("enableCopyPastePaneLeave");
setDisableCopyPaste(true);
}}
onPaneMouseEnter={() => {
console.log("enableCopyPastePaneEnter");
setDisableCopyPaste(false);
}}
onNodesChange={onNodesChangeMod}
@ -407,8 +410,6 @@ export default function Page({ flow }: { flow: FlowType }) {
onDrop={onDrop}
onNodesDelete={onDelete}
onSelectionChange={onSelectionChange}
nodesDraggable={!disableCopyPaste}
panOnDrag={!disableCopyPaste}
zoomOnDoubleClick={!disableCopyPaste}
className="theme-attribution"
minZoom={0.01}