Arrows binds/unbinds to bindable elements when moved with arrow keys (Issue #2103) (#2150)

This commit is contained in:
João Forja 2020-09-13 18:17:16 +01:00 committed by GitHub
parent b9d584714a
commit 242ccac290
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 38 additions and 2 deletions

View file

@ -1530,6 +1530,8 @@ class App extends React.Component<ExcalidrawProps, AppState> {
});
});
this.maybeSuggestBindingForAll(selectedElements);
event.preventDefault();
} else if (event.key === KEYS.ENTER) {
const selectedElements = getSelectedElements(
@ -1601,6 +1603,16 @@ class App extends React.Component<ExcalidrawProps, AppState> {
if (!event[KEYS.CTRL_OR_CMD] && !this.state.isBindingEnabled) {
this.setState({ isBindingEnabled: true });
}
if (isArrowKey(event.key)) {
const selectedElements = getSelectedElements(
this.scene.getElements(),
this.state,
);
isBindingEnabled(this.state)
? bindOrUnbindSelectedElements(selectedElements)
: unbindLinearElements(selectedElements);
this.setState({ suggestedBindings: [] });
}
});
private selectShapeTool(elementType: AppState["elementType"]) {