From 30341c286577c7c748f636008bd3a15d1a94ee2c Mon Sep 17 00:00:00 2001 From: Koen van Staveren Date: Tue, 3 Oct 2023 21:39:05 +0200 Subject: [PATCH] fix: resizing when zoomed (#5436) --- src/canvas/index.ts | 7 +++++-- src/commands/view/Resize.ts | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/canvas/index.ts b/src/canvas/index.ts index 47ad5203a..0a260fac7 100644 --- a/src/canvas/index.ts +++ b/src/canvas/index.ts @@ -485,9 +485,12 @@ export default class CanvasModule extends Module { addLeft = frameRect.left || 0; } + const zoom = this.getZoomDecimal(); + const zoomOffset = 1 / zoom; + return { - y: e.clientY + addTop - yOffset, - x: e.clientX + addLeft - xOffset, + y: (e.clientY + addTop - yOffset) * zoomOffset, + x: (e.clientX + addLeft - xOffset) * zoomOffset, }; } diff --git a/src/commands/view/Resize.ts b/src/commands/view/Resize.ts index 5df162e2d..07f429d2b 100644 --- a/src/commands/view/Resize.ts +++ b/src/commands/view/Resize.ts @@ -10,7 +10,7 @@ export default { appendTo: canvas.getResizerEl(), prefix: editor.getConfig().stylePrefix, posFetcher: canvasView.getElementPos.bind(canvasView), - mousePosFetcher: canvas.getMouseRelativePos, + mousePosFetcher: canvas.getMouseRelativePos.bind(canvas), ...(opt.options || {}), }; let { canvasResizer } = this;