fix: allow drag-to-pan over diagram nodes and compounds
All checks were successful
CI / cleanup-branch (push) Has been skipped
CI / build (push) Successful in 58s
CI / docker (push) Successful in 55s
CI / deploy-feature (push) Has been skipped
CI / deploy (push) Successful in 37s

Previously onPointerDown bailed out when the target was inside a node
(data-node-id), blocking pan entirely over nodes and compound groups.
Now panning always starts, and a didPan ref distinguishes drag from
click — node click handlers skip selection when the user was dragging.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
hsiegeln
2026-03-27 23:21:05 +01:00
parent 41111b082c
commit 004574d442
2 changed files with 14 additions and 3 deletions

View File

@@ -152,8 +152,12 @@ export function ProcessDiagram({
);
const handleNodeClick = useCallback(
(nodeId: string) => { onNodeSelect?.(nodeId); },
[onNodeSelect],
(nodeId: string) => {
// Suppress click if the pointer gesture was a drag (pan)
if (zoom.didPan.current) return;
onNodeSelect?.(nodeId);
},
[onNodeSelect, zoom.didPan],
);
const handleNodeDoubleClick = useCallback(