From 0885d193d2478327661b817d1766a253718a7384 Mon Sep 17 00:00:00 2001 From: drew08t Date: Mon, 6 Nov 2023 17:50:12 -0800 Subject: [PATCH] Fix scale offset when adding elements during zoom --- .../plugins/panel/canvas/components/CanvasContextMenu.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/public/app/plugins/panel/canvas/components/CanvasContextMenu.tsx b/public/app/plugins/panel/canvas/components/CanvasContextMenu.tsx index 685097cabd2..3faede4e981 100644 --- a/public/app/plugins/panel/canvas/components/CanvasContextMenu.tsx +++ b/public/app/plugins/panel/canvas/components/CanvasContextMenu.tsx @@ -117,9 +117,11 @@ export const CanvasContextMenu = ({ scene, panel, visibleFun }: Props) => { let offsetY = anchorPoint.y; let offsetX = anchorPoint.x; if (scene.div) { + const transformRef = scene.transformComponentRef?.current; + const transformScale = transformRef?.instance.transformState.scale ?? 1; const sceneContainerDimensions = scene.div.getBoundingClientRect(); - offsetY = offsetY - sceneContainerDimensions.top; - offsetX = offsetX - sceneContainerDimensions.left; + offsetY = (offsetY - sceneContainerDimensions.top) / transformScale; + offsetX = (offsetX - sceneContainerDimensions.left) / transformScale; } onAddItem(option, rootLayer, {