@@ -44,7 +44,7 @@ export type PanAndZoomProviderProps = {
4444
4545export default React . forwardRef ( function PanAndZoomProvider (
4646 { children, settings = defaultSettings , ...rest } : PanAndZoomProviderProps ,
47- ref : React . ForwardedRef < HTMLDivElement > ,
47+ forwardRef : React . ForwardedRef < HTMLDivElement > ,
4848) {
4949 const [ state , setState ] = useState < PanAndZoomState > ( defaultState ) ;
5050 const mousedown = useRef < boolean > ( false ) ;
@@ -147,7 +147,7 @@ export default React.forwardRef(function PanAndZoomProvider(
147147 < PanAndZoomContext . Provider value = { { state, panning } } >
148148 < div
149149 { ...rest }
150- ref = { ref }
150+ ref = { forwardRef }
151151 onMouseDown = { e => {
152152 if ( e . button === 0 || e . button === 1 ) {
153153 if ( timeout . current ) {
@@ -175,6 +175,7 @@ export default React.forwardRef(function PanAndZoomProvider(
175175 }
176176 } }
177177 onWheel = { e => {
178+ const target = e . currentTarget ;
178179 setState ( state => {
179180 const zoomDirection = getWheelDirection ( e . nativeEvent ) ;
180181 const zoomChange = zoomDirection * settings . zoomSpeed ;
@@ -183,10 +184,7 @@ export default React.forwardRef(function PanAndZoomProvider(
183184 settings . minZoom ,
184185 settings . maxZoom ,
185186 ) ;
186- const { x, y } = getRelativeMousePosition (
187- e . nativeEvent ,
188- e . currentTarget ,
189- ) ;
187+ const { x, y } = getRelativeMousePosition ( e . nativeEvent , target ) ;
190188 const panX = x - ( x - state . panX ) * ( zoom / state . zoom ) ;
191189 const panY = y - ( y - state . panY ) * ( zoom / state . zoom ) ;
192190 return { panX, panY, zoom } ;
0 commit comments