From 08508340e609f33940126e7ed0ddf10dc9e1cc2e Mon Sep 17 00:00:00 2001 From: moklick Date: Wed, 20 Jan 2021 11:46:19 +0100 Subject: [PATCH] refactor(interaction): use zoomActivationKeyPressed for enabling zoom --- src/container/ZoomPane/index.tsx | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/container/ZoomPane/index.tsx b/src/container/ZoomPane/index.tsx index 435d7989..05465c29 100644 --- a/src/container/ZoomPane/index.tsx +++ b/src/container/ZoomPane/index.tsx @@ -177,8 +177,9 @@ const ZoomPane = ({ useEffect(() => { if (d3Zoom) { d3Zoom.filter((event: any) => { + const zoomScroll = zoomActivationKeyPressed || zoomOnScroll; // if all interactions are disabled, we prevent all zoom events - if (!paneMoveable && !zoomOnScroll && !panOnScroll && !zoomOnDoubleClick) { + if (!paneMoveable && !zoomScroll && !panOnScroll && !zoomOnDoubleClick) { return false; } @@ -210,7 +211,7 @@ const ZoomPane = ({ } // when there is no scroll handling enabled, we prevent all wheel events - if (!zoomOnScroll && !panOnScroll && event.type === 'wheel') { + if (!zoomScroll && !panOnScroll && event.type === 'wheel') { return false; } @@ -223,7 +224,16 @@ const ZoomPane = ({ return (!event.ctrlKey || event.type === 'wheel') && !event.button; }); } - }, [d3Zoom, zoomOnScroll, panOnScroll, zoomOnDoubleClick, paneMoveable, selectionKeyPressed, elementsSelectable]); + }, [ + d3Zoom, + zoomOnScroll, + panOnScroll, + zoomOnDoubleClick, + paneMoveable, + selectionKeyPressed, + elementsSelectable, + zoomActivationKeyPressed, + ]); return (