aboutsummaryrefslogtreecommitdiff
path: root/extensions-builtin/canvas-zoom-and-pan/javascript/zoom.js
diff options
context:
space:
mode:
Diffstat (limited to 'extensions-builtin/canvas-zoom-and-pan/javascript/zoom.js')
-rw-r--r--extensions-builtin/canvas-zoom-and-pan/javascript/zoom.js13
1 files changed, 7 insertions, 6 deletions
diff --git a/extensions-builtin/canvas-zoom-and-pan/javascript/zoom.js b/extensions-builtin/canvas-zoom-and-pan/javascript/zoom.js
index a6434743..7ae2c635 100644
--- a/extensions-builtin/canvas-zoom-and-pan/javascript/zoom.js
+++ b/extensions-builtin/canvas-zoom-and-pan/javascript/zoom.js
@@ -622,13 +622,14 @@ onUiLoaded(async() => {
panSpeed = 3.5;
}
- elemData[elemId].panX =
- elemData[elemId].panX + movementX * panSpeed;
- elemData[elemId].panY =
- elemData[elemId].panY + movementY * panSpeed;
+ elemData[elemId].panX += movementX * panSpeed;
+ elemData[elemId].panY += movementY * panSpeed;
- targetElement.style.transform = `translate(${elemData[elemId].panX}px, ${elemData[elemId].panY}px) scale(${elemData[elemId].zoomLevel})`;
- toggleOverlap("on");
+ // Delayed redraw of an element
+ requestAnimationFrame(() => {
+ targetElement.style.transform = `translate(${elemData[elemId].panX}px, ${elemData[elemId].panY}px) scale(${elemData[elemId].zoomLevel})`;
+ toggleOverlap("on");
+ });
}
function handleMoveByKey(e) {