fix: prevent jumping when trying to zoom out the zoomFactor

This commit is contained in:
Arnošt Pleskot 2024-02-09 16:10:58 +01:00
parent 4c62eef7da
commit b5bf346229
No known key found for this signature in database

View file

@ -401,11 +401,17 @@ export const constrainScrollState = (
allowOverscroll,
});
const constrainedValues = constrainScrollValues({
...constraints,
scrollX,
scrollY,
});
const constrainedValues =
zoom.value >= constraints.constrainedZoom.value // when trying to zoom out of the constrained area we want to keep the viewport centered and prevent jumping caused by change of scrollX and scrollY values when zooming
? constrainScrollValues({
...constraints,
scrollX,
scrollY,
})
: calculateConstrainedScrollCenter(state, {
scrollX,
scrollY,
});
if (!canUseMemoizedValues) {
memoizedValues = {