mirror of
https://github.com/excalidraw/excalidraw.git
synced 2025-11-18 03:34:43 +01:00
feat: Alt inside start binding mode change
This commit is contained in:
@@ -865,6 +865,44 @@ class App extends React.Component<AppProps, AppState> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private handleSkipBindMode() {
|
private handleSkipBindMode() {
|
||||||
|
if (
|
||||||
|
this.state.selectedLinearElement?.pointerDownState &&
|
||||||
|
!this.state.selectedLinearElement.pointerDownState.arrowStartIsInside
|
||||||
|
) {
|
||||||
|
invariant(
|
||||||
|
this.lastPointerMoveCoords,
|
||||||
|
"Missing last pointer move coords when changing bind skip mode for arrow start",
|
||||||
|
);
|
||||||
|
const elementsMap = this.scene.getNonDeletedElementsMap();
|
||||||
|
const hoveredElement = getHoveredElementForBinding(
|
||||||
|
pointFrom<GlobalPoint>(
|
||||||
|
this.lastPointerMoveCoords.x,
|
||||||
|
this.lastPointerMoveCoords.y,
|
||||||
|
),
|
||||||
|
this.scene.getNonDeletedElements(),
|
||||||
|
elementsMap,
|
||||||
|
);
|
||||||
|
const element = LinearElementEditor.getElement(
|
||||||
|
this.state.selectedLinearElement.elementId,
|
||||||
|
elementsMap,
|
||||||
|
);
|
||||||
|
|
||||||
|
if (
|
||||||
|
element?.startBinding &&
|
||||||
|
hoveredElement?.id === element.startBinding.elementId
|
||||||
|
) {
|
||||||
|
this.setState({
|
||||||
|
selectedLinearElement: {
|
||||||
|
...this.state.selectedLinearElement,
|
||||||
|
pointerDownState: {
|
||||||
|
...this.state.selectedLinearElement.pointerDownState,
|
||||||
|
arrowStartIsInside: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (this.state.bindMode === "orbit") {
|
if (this.state.bindMode === "orbit") {
|
||||||
if (this.bindModeHandler) {
|
if (this.bindModeHandler) {
|
||||||
clearTimeout(this.bindModeHandler);
|
clearTimeout(this.bindModeHandler);
|
||||||
|
|||||||
Reference in New Issue
Block a user