From 6a8ee003b0959fea4c11fd95bfc6766aa166295f Mon Sep 17 00:00:00 2001 From: Ryan Di Date: Mon, 31 Mar 2025 10:48:04 +1100 Subject: [PATCH] fix 'dead' lassos --- packages/excalidraw/components/App.tsx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/excalidraw/components/App.tsx b/packages/excalidraw/components/App.tsx index 89512c068..48b6304cb 100644 --- a/packages/excalidraw/components/App.tsx +++ b/packages/excalidraw/components/App.tsx @@ -8247,7 +8247,8 @@ class App extends React.Component { if ( (hasHitASelectedElement || pointerDownState.hit.hasHitCommonBoundingBoxOfSelectedElements) && - !isSelectingPointsInLineEditor + !isSelectingPointsInLineEditor && + this.state.activeTool.type !== "lasso" ) { const selectedElements = this.scene.getSelectedElements(this.state); @@ -8279,8 +8280,7 @@ class App extends React.Component { selectedElements.length > 0 && !pointerDownState.withCmdOrCtrl && !this.state.editingTextElement && - this.state.activeEmbeddable?.state !== "active" && - this.state.activeTool.type !== "lasso" + this.state.activeEmbeddable?.state !== "active" ) { const dragOffset = { x: pointerCoords.x - pointerDownState.origin.x, @@ -9613,6 +9613,8 @@ class App extends React.Component { } if ( + // do not clear selection if lasso is active + this.state.activeTool.type !== "lasso" && // not elbow midpoint dragged !(hitElement && isElbowArrow(hitElement)) && // not dragged