
* lasso without 'real' shape detection * select a single linear el * improve ux * feed segments to worker * simplify path threshold adaptive to zoom * add a tiny threshold for checks * refactor code * lasso tests * fix: ts * do not capture lasso tool * try worker-loader in next config * update config * refactor * lint * feat: show active tool when using "more tools" * keep lasso if selected from toolbar * fix incorrect checks for resetting to selection * shift for additive selection * bound text related fixes * lint * keep alt toggled lasso selection if shift pressed * fix regression * fix 'dead' lassos * lint * use workerpool and polyfill * fix worker bundled with window related code * refactor * add file extension for worker constructor error * another attempt at constructor error * attempt at build issue * attempt with dynamic import * test not importing from math * narrow down imports * Reusing existing workers infrastructure (fallback to the main thread, type-safety) * Points on curve inside the shared chunk * Give up on experimental code splitting * Remove potentially unnecessary optimisation * Removing workers as the complexit is much worse, while perf. does not seem to be much better * fix selecting text containers and containing frames together * render fill directly from animated trail * do not re-render static when setting selected element ids in lasso * remove unnecessary property * tweak trail animation * slice points to remove notch * always start alt-lasso from initial point * revert build & worker changes (unused) * remove `lasso` from `hasStrokeColor` * label change * remove unused props * remove unsafe optimization * snaps --------- Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com> Co-authored-by: Marcel Mraz <marcel@excalidraw.com>
23 lines
823 B
TypeScript
23 lines
823 B
TypeScript
import type { UIAppState } from "@excalidraw/excalidraw/types";
|
|
|
|
import { getSelectedElements } from "./selection";
|
|
|
|
import type { NonDeletedExcalidrawElement } from "./types";
|
|
|
|
export const showSelectedShapeActions = (
|
|
appState: UIAppState,
|
|
elements: readonly NonDeletedExcalidrawElement[],
|
|
) =>
|
|
Boolean(
|
|
!appState.viewModeEnabled &&
|
|
appState.openDialog?.name !== "elementLinkSelector" &&
|
|
((appState.activeTool.type !== "custom" &&
|
|
(appState.editingTextElement ||
|
|
(appState.activeTool.type !== "selection" &&
|
|
appState.activeTool.type !== "lasso" &&
|
|
appState.activeTool.type !== "eraser" &&
|
|
appState.activeTool.type !== "hand" &&
|
|
appState.activeTool.type !== "laser"))) ||
|
|
getSelectedElements(elements, appState).length),
|
|
);
|