Skip to content

Commit

Permalink
Fixing overscrolling issue on Virtualized List (#23181)
Browse files Browse the repository at this point in the history
Summary:
Changelog:
----------
[iOS][fixed] Fixed overscroll behavior on iOS virtualized lists (Fixes #18098)
Pull Request resolved: #23181

Differential Revision: D13838579

Pulled By: cpojer

fbshipit-source-id: 2ec5787218ecca0e01aaf31bfbb7d630cf9f1f09
  • Loading branch information
Dustin Savery authored and facebook-github-bot committed Jan 28, 2019
1 parent 8508da4 commit 4d5f85e
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion Libraries/Lists/VirtualizedList.js
Original file line number Diff line number Diff line change
Expand Up @@ -330,13 +330,20 @@ class VirtualizedList extends React.PureComponent<Props, State> {
return;
}
const frame = this._getFrameMetricsApprox(index);
const offset =
const maxScroll =
this._scrollMetrics.contentLength - this._scrollMetrics.visibleLength;
let offset =
Math.max(
0,
frame.offset -
(viewPosition || 0) *
(this._scrollMetrics.visibleLength - frame.length),
) - (viewOffset || 0);

/* Fix for overscrolling */
if (offset > maxScroll) {
offset = maxScroll;
}
/* $FlowFixMe(>=0.53.0 site=react_native_fb,react_native_oss) This comment
* suppresses an error when upgrading Flow's support for React. To see the
* error delete this comment and run Flow. */
Expand Down

0 comments on commit 4d5f85e

Please sign in to comment.