Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

On iOS, don't refresh all cells when items are inserted/removed #1498

Closed
2 tasks done
veyndan opened this issue Sep 20, 2023 · 1 comment
Closed
2 tasks done

On iOS, don't refresh all cells when items are inserted/removed #1498

veyndan opened this issue Sep 20, 2023 · 1 comment
Labels
blocked platform/native redwood/lazylayout Relating to `LazyColumn` or `LazyRow`

Comments

@veyndan
Copy link
Contributor

veyndan commented Sep 20, 2023

When any property of LazyList changes on iOS, we invoke collectionView.reloadData(). This is an expensive operation which shouldn't be necessary to call, as we are given atomic change updates within UICollectionViewListUpdateCallback.

Currently, I don't have a lot of confidence in UICollectionViewListUpdateCallback being given the correct atomic change updates. This is due to the lack of tests, and the fact that on Android we invoke notifyDatasetChanged (the equivalent to iOS' reloadData) on a specific code path, further reducing trust that these atomic change updates are correct.

Therefore, I would argue that this is blocked by:

@swankjesse
Copy link
Collaborator

Implemented by #1538

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked platform/native redwood/lazylayout Relating to `LazyColumn` or `LazyRow`
Projects
None yet
Development

No branches or pull requests

2 participants