Fix zoom offset drift on location detail

This commit is contained in:
Thomas Andres Gomez 2023-08-11 09:06:56 +02:00
parent b3ab535448
commit b6af245327

View file

@ -64,12 +64,21 @@ fun FantasyMap(
scale = newScale
)
state.pan(
offset = Offset(
x = oldOffset.x * newScale / oldScale + pan.x,
y = oldOffset.y * newScale / oldScale + pan.y,
if (state.scale == newScale) {
state.pan(
offset = Offset(
x = oldOffset.x * newScale / oldScale + pan.x,
y = oldOffset.y * newScale / oldScale + pan.y,
)
)
)
} else {
state.pan(
offset = Offset(
x = oldOffset.x + pan.x,
y = oldOffset.y + pan.y,
)
)
}
}
}
.graphicsLayer {