1
0
mirror of https://github.com/excalidraw/excalidraw.git synced 2024-11-10 11:35:52 +01:00

fix: allow box selection of points when inside editor (#5594)

This commit is contained in:
Aakansha Doshi 2022-08-18 19:07:14 +05:30 committed by GitHub
parent 8f8dd1105f
commit b5fd904808
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 11 additions and 4 deletions

@ -3060,7 +3060,7 @@ class App extends React.Component<AppProps, AppState> {
setCursor(this.canvas, CURSOR_TYPE.MOVE);
}
} else if (
shouldShowBoundingBox([element]) &&
shouldShowBoundingBox([element], this.state) &&
isHittingElementBoundingBoxWithoutHittingElement(
element,
this.state,

@ -67,7 +67,7 @@ export const hitTest = (
if (
isElementSelected(appState, element) &&
shouldShowBoundingBox([element])
shouldShowBoundingBox([element], appState)
) {
return isPointHittingElementBoundingBox(element, point, threshold);
}

@ -6,7 +6,7 @@ import {
import { getElementAbsoluteCoords, Bounds } from "./bounds";
import { rotate } from "../math";
import { Zoom } from "../types";
import { AppState, Zoom } from "../types";
import { isTextElement } from ".";
import { isLinearElement } from "./typeChecks";
import { DEFAULT_SPACING } from "../renderer/renderScene";
@ -267,7 +267,11 @@ export const getTransformHandles = (
export const shouldShowBoundingBox = (
elements: NonDeletedExcalidrawElement[],
appState: AppState,
) => {
if (appState.editingLinearElement) {
return false;
}
if (elements.length > 1) {
return true;
}

@ -424,7 +424,10 @@ export const _renderScene = ({
!appState.editingLinearElement
) {
const locallySelectedElements = getSelectedElements(elements, appState);
const showBoundingBox = shouldShowBoundingBox(locallySelectedElements);
const showBoundingBox = shouldShowBoundingBox(
locallySelectedElements,
appState,
);
const locallySelectedIds = locallySelectedElements.map(
(element) => element.id,