diff --git a/packages/element/src/linearElementEditor.ts b/packages/element/src/linearElementEditor.ts index acd8b553b..70a3432a7 100644 --- a/packages/element/src/linearElementEditor.ts +++ b/packages/element/src/linearElementEditor.ts @@ -367,11 +367,7 @@ export class LinearElementEditor { ); } - const newLinearElementEditor = { - ...linearElementEditor, - customLineAngle, - }; - + // PERF: Avoid state updates if not absolutely necessary if ( app.state.selectedLinearElement?.customLineAngle === customLineAngle && (!suggestedBinding || @@ -380,6 +376,11 @@ export class LinearElementEditor { return null; } + const newLinearElementEditor = { + ...linearElementEditor, + customLineAngle, + }; + return { selectedLinearElement: newLinearElementEditor, suggestedBinding,