Fix elbow arrow

This commit is contained in:
Mark Tolmacs 2025-07-27 12:09:58 +02:00
parent 9111fda080
commit 027a74acfc
No known key found for this signature in database
2 changed files with 25 additions and 18 deletions

View File

@ -474,23 +474,30 @@ export const getBindingStrategyForDraggingBindingElementEndpoints = (
appState.zoom, appState.zoom,
); );
return { return isElbowArrow(arrow)
start: hovered ? {
? hit start: hovered
? { element: hovered, mode: "inside" } ? { element: hovered, mode: "orbit" }
: opts?.newArrow : { mode: undefined },
? { end: { mode: undefined },
element: hovered, }
mode: "orbit", : {
focusPoint: pointFrom<GlobalPoint>( start: hovered
hovered.x + hovered.width / 2, ? hit
hovered.y + hovered.height / 2, ? { element: hovered, mode: "inside" }
), : opts?.newArrow
} ? {
: { element: hovered, mode: "inside" } element: hovered,
: { mode: undefined }, mode: "orbit",
end: { mode: undefined }, focusPoint: pointFrom<GlobalPoint>(
}; hovered.x + hovered.width / 2,
hovered.y + hovered.height / 2,
),
}
: { element: hovered, mode: "inside" }
: { mode: undefined },
end: { mode: undefined },
};
} }
// If none of the ends are dragged, we don't change anything // If none of the ends are dragged, we don't change anything

View File

@ -8077,7 +8077,7 @@ class App extends React.Component<AppProps, AppState> {
} }
this.scene.mutateElement(element, { this.scene.mutateElement(element, {
points: [...element.points, pointFrom<LocalPoint>(0, 0)], points: [pointFrom<LocalPoint>(0, 0), pointFrom<LocalPoint>(0, 0)],
}); });
this.scene.insertElement(element); this.scene.insertElement(element);
if (isBindingElement(element)) { if (isBindingElement(element)) {