From 44c836da3220b66f31f1e6d09ba1c7c442b6404e Mon Sep 17 00:00:00 2001 From: Damian Stasik <920747+damianstasik@users.noreply.github.com> Date: Fri, 31 Jan 2025 14:17:36 +0100 Subject: [PATCH 1/2] fix(system): ensure auto-pan stops when state changes during drag --- packages/system/src/xydrag/XYDrag.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/system/src/xydrag/XYDrag.ts b/packages/system/src/xydrag/XYDrag.ts index eb2ea80a..0921e3ec 100644 --- a/packages/system/src/xydrag/XYDrag.ts +++ b/packages/system/src/xydrag/XYDrag.ts @@ -214,7 +214,13 @@ export function XYDrag voi return; } - const { transform, panBy, autoPanSpeed } = getStoreItems(); + const { transform, panBy, autoPanSpeed, autoPanOnNodeDrag } = getStoreItems(); + + if (!autoPanOnNodeDrag) { + autoPanStarted = false; + cancelAnimationFrame(autoPanId); + return; + } const [xMovement, yMovement] = calcAutoPan(mousePosition, containerBounds, autoPanSpeed); From 4947029cd6cda0f695e1fb4815e4030adb232234 Mon Sep 17 00:00:00 2001 From: moklick Date: Wed, 12 Feb 2025 13:43:13 +0100 Subject: [PATCH 2/2] chore(changeset): add --- .changeset/serious-ducks-care.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/serious-ducks-care.md diff --git a/.changeset/serious-ducks-care.md b/.changeset/serious-ducks-care.md new file mode 100644 index 00000000..77c69a3d --- /dev/null +++ b/.changeset/serious-ducks-care.md @@ -0,0 +1,5 @@ +--- +'@xyflow/system': patch +--- + +Make it possible to stop autoPanOnDrag by setting it to false