Stop auto opening canvas inspector
This commit is contained in:
parent
79fffd88f4
commit
af74e2197b
@ -1803,6 +1803,7 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
const [connectionMenu, setConnectionMenu] = useState<ConnectionMenuState>(null);
|
||||
const [previewNode, setPreviewNode] = useState<CloneNode | null>(null);
|
||||
const [angleEditorNodeId, setAngleEditorNodeId] = useState<string | null>(null);
|
||||
const [inspectorNodeId, setInspectorNodeId] = useState<string | null>(null);
|
||||
const [dockOverviewOpen, setDockOverviewOpen] = useState(false);
|
||||
const [snapEnabled, setSnapEnabled] = useState(true);
|
||||
|
||||
@ -1815,6 +1816,10 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
() => nodes.find((node) => node.id === nodeContextMenu?.nodeId) || null,
|
||||
[nodeContextMenu?.nodeId, nodes]
|
||||
);
|
||||
const inspectorNode = useMemo(
|
||||
() => nodes.find((node) => node.id === inspectorNodeId) || null,
|
||||
[inspectorNodeId, nodes]
|
||||
);
|
||||
|
||||
const connectionNode = useMemo(
|
||||
() => nodes.find((node) => node.id === connectionMenu?.nodeId) || null,
|
||||
@ -2057,6 +2062,7 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
event.preventDefault();
|
||||
const point = toCanvasPoint(event.clientX, event.clientY);
|
||||
setSelectedNodeId(null);
|
||||
setInspectorNodeId(null);
|
||||
setNodeContextMenu(null);
|
||||
setConnectionMenu(null);
|
||||
setActivePanel(null);
|
||||
@ -2075,6 +2081,7 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
event.stopPropagation();
|
||||
setSelectedNodeId(node.id);
|
||||
setCanvasCommand(null);
|
||||
setInspectorNodeId(null);
|
||||
setConnectionMenu(null);
|
||||
setNodeContextMenu({
|
||||
nodeId: node.id,
|
||||
@ -2089,6 +2096,7 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
setSelectedNodeId(node.id);
|
||||
setCanvasCommand(null);
|
||||
setNodeContextMenu(null);
|
||||
setInspectorNodeId(null);
|
||||
setConnectionMenu(null);
|
||||
setActivePanel(null);
|
||||
setConnectionMenu({
|
||||
@ -3061,6 +3069,7 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
|
||||
const configureNode = useCallback((nodeId: string) => {
|
||||
setSelectedNodeId(nodeId);
|
||||
setInspectorNodeId(nodeId);
|
||||
setNodeContextMenu(null);
|
||||
setConnectionMenu(null);
|
||||
}, []);
|
||||
@ -3262,6 +3271,7 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
setNodes((current) => current.filter((node) => node.id !== nodeId));
|
||||
setEdges((current) => current.filter((edge) => edge.source !== nodeId && edge.target !== nodeId));
|
||||
setSelectedNodeId((current) => (current === nodeId ? null : current));
|
||||
setInspectorNodeId((current) => (current === nodeId ? null : current));
|
||||
setNodeContextMenu(null);
|
||||
setConnectionMenu(null);
|
||||
toast.success("节点已删除");
|
||||
@ -3308,17 +3318,18 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
const updateNodeDraft = useCallback((key: string, value: unknown) => {
|
||||
setNodes((current) =>
|
||||
current.map((node) =>
|
||||
node.id === selectedNodeId
|
||||
node.id === inspectorNodeId
|
||||
? { ...node, draftValues: { ...(node.draftValues || {}), [key]: value } }
|
||||
: node
|
||||
)
|
||||
);
|
||||
}, [selectedNodeId]);
|
||||
}, [inspectorNodeId]);
|
||||
|
||||
const startNodeDrag = useCallback((event: ReactPointerEvent, node: CloneNode) => {
|
||||
event.stopPropagation();
|
||||
event.currentTarget.setPointerCapture(event.pointerId);
|
||||
setSelectedNodeId(node.id);
|
||||
setInspectorNodeId(null);
|
||||
setCanvasCommand(null);
|
||||
setNodeContextMenu(null);
|
||||
dragRef.current = {
|
||||
@ -3335,6 +3346,7 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
if (event.button !== 0) return;
|
||||
if ((event.target as HTMLElement).closest("[data-canvas-overlay]")) return;
|
||||
setSelectedNodeId(null);
|
||||
setInspectorNodeId(null);
|
||||
setCanvasCommand(null);
|
||||
setNodeContextMenu(null);
|
||||
setConnectionMenu(null);
|
||||
@ -3488,6 +3500,7 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
setCanvasCommand(null);
|
||||
setNodeContextMenu(null);
|
||||
setConnectionMenu(null);
|
||||
setInspectorNodeId(null);
|
||||
setActivePanel((current) => (current === panel ? null : panel));
|
||||
}, []);
|
||||
|
||||
@ -3729,11 +3742,11 @@ export function LiblibVideoCanvasReplica({ canvasId, isLoading = false }: Liblib
|
||||
/>
|
||||
) : null}
|
||||
|
||||
{selectedNode && !selectedPresetControlNode && !selectedTargetModuleKind && !selectedTextResourceNode ? (
|
||||
{inspectorNode ? (
|
||||
<InspectorPanel
|
||||
node={selectedNode}
|
||||
node={inspectorNode}
|
||||
onChangeProperty={updateNodeDraft}
|
||||
onClose={() => setSelectedNodeId(null)}
|
||||
onClose={() => setInspectorNodeId(null)}
|
||||
/>
|
||||
) : null}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user