mapbox-maps-android
mapbox-maps-android copied to clipboard
View annotations missing after de-clustering
Environment
- Android OS version: Irrelevant
- Devices affected: Irrelevant
- Maps SDK Version: 10.2.0
Observed behavior and steps to reproduce
It seems that if clustering is enabled for a certain geojson source and 2 geometries are really close together + those geometries have View annotations attached (via associatedFeatureId), one of the view annotations does not render.
Clustering enabled
https://user-images.githubusercontent.com/21218132/151536902-028911e3-2b21-40c4-a99f-7b5339a82368.mp4
Clustering disabled
https://user-images.githubusercontent.com/21218132/151537004-4054ab82-d5aa-4f98-a152-17dd5433fc25.mp4
Expected behavior
View annotations behave the same way with or without clustering enabled.
Notes / preliminary analysis
It seems that in ViewAnnotationManagerImpl.drawAnnotationViews the positionDescriptorCoreList is missing one of the entries in that case. (so the root cause seems to be in the native sdk already)
Additional links and references
@florianPOLARSTEPS thank you for reporting this and providing the sample project. I am able to see the reported behavior with the project and will look into the root cause.
@ZiZasaurus Any idea on the timeline for a fix for this? This is somewhat of a major blocker for our project since it inevitably means that, users will click on elements on the map (which are clustered initially), which should display information via a view annotation but those will not become visible. The only workaround would be to disable clustering which has some major performance drawbacks.