-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Prevent iOS CollectionView size shifts from clearing the cell size cache #18464
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
It seems that this problem also exists on other view on iOS. When I tried to solve this #17885, I found that there was always a very small gap in the size before and after, although the size did not change.
|
Eilon
added
the
area-controls-collectionview
CollectionView, CarouselView, IndicatorView
label
Nov 2, 2023
PureWeen
requested review from
mattleibow and
Redth
and removed request for
jsuarezruiz
November 9, 2023 10:49
/rebase |
github-actions
bot
force-pushed
the
fix-17890
branch
from
November 20, 2023 22:00
5369794
to
a235bbc
Compare
rmarinho
approved these changes
Nov 21, 2023
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
area-controls-collectionview
CollectionView, CarouselView, IndicatorView
fixed-in-8.0.6
Look for this fix in 8.0.6 SR1!
platform/iOS 🍎
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of Change
In some circumstances, the iOS CollectionView runs into an issue where rounding/floating point math differences cause the UICollectionViewLayout to trigger a bounds-change layout incorrectly. This can happen continuously during scrolling operations, which causes the cell size cache to repeatedly clear, which in turn causes constant cell resizing and shifting.
These changes eliminate one source of diverging size information and widen the tolerance for other layout triggers, preventing the continuous cache clearing. This also introduces an automated test to ensure the cell size cache is active.
Issues Fixed
Fixes #17890