fix 'dead' lassos

This commit is contained in:
Ryan Di 2025-03-31 10:48:04 +11:00
parent fdd6c65fd9
commit 6a8ee003b0

View file

@ -8247,7 +8247,8 @@ class App extends React.Component<AppProps, AppState> {
if ( if (
(hasHitASelectedElement || (hasHitASelectedElement ||
pointerDownState.hit.hasHitCommonBoundingBoxOfSelectedElements) && pointerDownState.hit.hasHitCommonBoundingBoxOfSelectedElements) &&
!isSelectingPointsInLineEditor !isSelectingPointsInLineEditor &&
this.state.activeTool.type !== "lasso"
) { ) {
const selectedElements = this.scene.getSelectedElements(this.state); const selectedElements = this.scene.getSelectedElements(this.state);
@ -8279,8 +8280,7 @@ class App extends React.Component<AppProps, AppState> {
selectedElements.length > 0 && selectedElements.length > 0 &&
!pointerDownState.withCmdOrCtrl && !pointerDownState.withCmdOrCtrl &&
!this.state.editingTextElement && !this.state.editingTextElement &&
this.state.activeEmbeddable?.state !== "active" && this.state.activeEmbeddable?.state !== "active"
this.state.activeTool.type !== "lasso"
) { ) {
const dragOffset = { const dragOffset = {
x: pointerCoords.x - pointerDownState.origin.x, x: pointerCoords.x - pointerDownState.origin.x,
@ -9613,6 +9613,8 @@ class App extends React.Component<AppProps, AppState> {
} }
if ( if (
// do not clear selection if lasso is active
this.state.activeTool.type !== "lasso" &&
// not elbow midpoint dragged // not elbow midpoint dragged
!(hitElement && isElbowArrow(hitElement)) && !(hitElement && isElbowArrow(hitElement)) &&
// not dragged // not dragged