fix(viewability): exclude items behind sticky header offset#2373
Open
codergon wants to merge 1 commit into
Open
fix(viewability): exclude items behind sticky header offset#2373codergon wants to merge 1 commit into
codergon wants to merge 1 commit into
Conversation
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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
Fixes #2238
When there is a fixed header on top of the list, you can set
stickyHeaderConfig.offsetso sticky headers stop below it. That offset marks the area covered at the top of the list, but viewability was ignoring it, so items scrolled behind the header were still reported byonViewableItemsChanged.This passes the same offset into the viewability check. The visible area now starts at
offsetinstead of 0, so rows hidden behind the header are no longer counted as viewable, and partial visibility is measured against the area below the offset. Nothing changes when no offset is set, since it defaults to 0.Reviewers' hat-rack:
ViewabilityHelper.isItemViewableclamps the top of the visible area to the offset and dividesviewAreaCoveragePercentThresholdby the height below itViewabilityManagerreadsstickyHeaderConfig.offsetand passes it throughScreenshots or videos (if needed)
List scrolled so a row sits behind a 120px fixed header. Before, that row is still reported viewable. After, it is excluded.