From cf75f6bfe034935acdddd5ce4dfee3b121804811 Mon Sep 17 00:00:00 2001 From: Mark Tolmacs Date: Sat, 15 Mar 2025 14:02:39 +0100 Subject: [PATCH] Fix flickering selection --- packages/excalidraw/components/App.tsx | 2 +- packages/excalidraw/renderer/interactiveScene.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/excalidraw/components/App.tsx b/packages/excalidraw/components/App.tsx index abeb27124..998872ece 100644 --- a/packages/excalidraw/components/App.tsx +++ b/packages/excalidraw/components/App.tsx @@ -2088,7 +2088,7 @@ class App extends React.Component { swapPreviewOnAlt: true, colorPickerType: type === "stroke" ? "elementStroke" : "elementBackground", - onSelect: (color, event) => { + onSelect: (color: string, event: KeyboardEvent) => { const shouldUpdateStrokeColor = (type === "background" && event.altKey) || (type === "stroke" && !event.altKey); diff --git a/packages/excalidraw/renderer/interactiveScene.ts b/packages/excalidraw/renderer/interactiveScene.ts index 0bbfc92b1..f988dcb39 100644 --- a/packages/excalidraw/renderer/interactiveScene.ts +++ b/packages/excalidraw/renderer/interactiveScene.ts @@ -1089,7 +1089,7 @@ const _renderInteractiveScene = ({ const dashedLinePadding = (DEFAULT_TRANSFORM_HANDLE_SPACING * 2) / appState.zoom.value; context.fillStyle = oc.white; - const [x1, y1, x2, y2] = getCommonBounds(selectedElements); + const [x1, y1, x2, y2] = getCommonBounds(selectedElements, elementsMap); const initialLineDash = context.getLineDash(); context.setLineDash([2 / appState.zoom.value]); const lineWidth = context.lineWidth;