maplibre / maplibre-native

MapLibre Native - Interactive vector tile maps for iOS, Android and other platforms.
https://maplibre.org
BSD 2-Clause "Simplified" License
888 stars 273 forks source link

[iOS - SwiftUI] MLNAnnotationView delay with map panning #2522

Open Max-Leopold opened 2 weeks ago

Max-Leopold commented 2 weeks ago

This is a follow up from https://github.com/maplibre/maplibre-native/issues/2053

Describe the bug

MLNAnnotationViews sometimes have a delay when panning the map when using SwiftUI.

To Reproduce

It's a bit inconsistent to reproduce the bug. The way that worked for me most of the time is to zoom in on the map with a flick and then interrupt the zoom and pan the map. Generally if you play around with panning the map right after a zoom you will eventually encounter the bug.

I made a demo app which can be used to test: TestMap.zip

Expected behavior

The MLNAnnotationView should not have a delay when panning the map.

Screenshots In the video you can see that in the beginning the annotation doesn't "wobble" but sticks to it's coordinates. However later you see a delay when panning the map.

https://github.com/maplibre/maplibre-native/assets/26352108/4d1d257b-6293-4fa0-97fe-5b9386e92737

Platform information (please complete the following information):

nnhubbard commented 2 weeks ago

I have this same issue as seen in my app testing:

https://github.com/maplibre/maplibre-native/assets/30858/b194055d-e998-42b2-a83a-e59b66d4d124

It happens in the same way as described by @Max-Leopold where you sort of flick the map and it pans animated and the custom annotations do not stay in place during the pan animation.