From 430a5d80bb4e2a4a682de2cb0cee706f2b83673a Mon Sep 17 00:00:00 2001 From: Mark Tolmacs Date: Fri, 14 Mar 2025 17:20:51 +0100 Subject: [PATCH] Elbow arrow move cursor fix --- packages/excalidraw/components/App.tsx | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/excalidraw/components/App.tsx b/packages/excalidraw/components/App.tsx index 3f2b48b83..abeb27124 100644 --- a/packages/excalidraw/components/App.tsx +++ b/packages/excalidraw/components/App.tsx @@ -6094,7 +6094,12 @@ class App extends React.Component { this.setState({ activeEmbeddable: { element: hitElement, state: "hover" }, }); - } else if (!hitElement || !isElbowArrow(hitElement)) { + } else if ( + !hitElement || + // Ebow arrows can only be moved when unconnected + !isElbowArrow(hitElement) || + !(hitElement.startBinding || hitElement.endBinding) + ) { setCursor(this.interactiveCanvas, CURSOR_TYPE.MOVE); if (this.state.activeEmbeddable?.state === "hover") { this.setState({ activeEmbeddable: null }); @@ -6287,7 +6292,13 @@ class App extends React.Component { if (isHoveringAPointHandle || segmentMidPointHoveredCoords) { setCursor(this.interactiveCanvas, CURSOR_TYPE.POINTER); } else if (this.hitElement(scenePointerX, scenePointerY, element)) { - setCursor(this.interactiveCanvas, CURSOR_TYPE.MOVE); + if ( + // Ebow arrows can only be moved when unconnected + !isElbowArrow(element) || + !(element.startBinding || element.endBinding) + ) { + setCursor(this.interactiveCanvas, CURSOR_TYPE.MOVE); + } } } else if (this.hitElement(scenePointerX, scenePointerY, element)) { if (