From e7c39b065d895875d5079e0bbe6d5877ac6d1b1d Mon Sep 17 00:00:00 2001 From: braks <78412429+bcakmakoglu@users.noreply.github.com> Date: Mon, 20 Mar 2023 11:40:59 +0100 Subject: [PATCH] fix(core): non-passive wheel event listener violation Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com> --- .../core/src/container/Viewport/Viewport.vue | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/packages/core/src/container/Viewport/Viewport.vue b/packages/core/src/container/Viewport/Viewport.vue index a8228db8..ab358bcd 100644 --- a/packages/core/src/container/Viewport/Viewport.vue +++ b/packages/core/src/container/Viewport/Viewport.vue @@ -162,8 +162,9 @@ onMounted(() => { watchEffect(() => { if (panOnScroll && !zoomKeyPressed.value && !userSelectionActive) { - d3Selection - .on('wheel', (event: WheelEvent) => { + d3Selection.on( + 'wheel.zoom', + (event: WheelEvent) => { if (isWrappedWithClass(event, noWheelClassName)) { return false } @@ -190,18 +191,22 @@ onMounted(() => { const deltaY = panOnScrollMode === PanOnScrollMode.Horizontal ? 0 : event.deltaY * deltaNormalize d3Zoom.translateBy(d3Selection, -(deltaX / currentZoom) * panOnScrollSpeed, -(deltaY / currentZoom) * panOnScrollSpeed) - }) - .on('wheel.zoom', null) + }, + { passive: false }, + ) } else if (typeof d3ZoomHandler !== 'undefined') { - d3Selection - .on('wheel', (event: WheelEvent) => { + d3Selection.on( + 'wheel.zoom', + function (event: WheelEvent, d) { if (!preventScrolling || isWrappedWithClass(event, noWheelClassName)) { return null } event.preventDefault() - }) - .on('wheel.zoom', d3ZoomHandler) + d3ZoomHandler.call(this, event, d) + }, + { passive: false }, + ) } })