surfstudio / yandex-mapkit-lite-flutter

Made by Surf 🏄
MIT License
3 stars 0 forks source link

[BUG] Map objects are "jumping" after every map objects collection update #11

Closed samirakhmedov closed 8 months ago

samirakhmedov commented 8 months ago

Expected behavior

The clusters/pins are standing still - only those who actually changed those ID or appearance should change.

Actual behavior

It seems that every object on the map is updating all at the same time, no regards the included functionality of merging the duplicates.

Video/Screenshot

https://github.com/surfstudio/yandex-mapkit-lite-flutter/assets/54618146/71395346-a362-47f1-92ca-ce8a4097015e

https://github.com/surfstudio/yandex-mapkit-lite-flutter/assets/54618146/73306685-d5b4-476e-86bf-9eda79126d51

Steps to reproduce

1) Add the collection of map objects with distinct IDs 2) Change or remove only one object

Details

Flutter version: 3.16.8 Dart version: >=2.12.0 <4.0.0 Platform: Both Android and iOS

Any possible solutions

My suggestion is to move map options and objects update from widget to controller - not only there will be no need in passing arguments, but also there will be opportunity to control maps from any point in the app

If this solution is not an option, we should hugely investigate into Map widget implementation - maybe optimise the widget comparison

Checklist for self-check