| Index: chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageRecyclerView.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageRecyclerView.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageRecyclerView.java
|
| index 525d1012f8e008cec76371f8536bbc01e3d5e9fa..f3461d3ab64e8a3c7114cd068db7963095901671 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageRecyclerView.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageRecyclerView.java
|
| @@ -236,7 +236,14 @@ public class NewTabPageRecyclerView extends RecyclerView implements TouchDisable
|
| return 0;
|
| }
|
|
|
| - if (firstVisiblePos > aboveTheFoldPosition && mHasRenderedAboveTheFoldView) {
|
| + // For the scroll below the fold experiment, the above the fold item must be scrolled away
|
| + // completely, so the spacer must be large enough even when we're not sure exactly how
|
| + // large it should be. Returning 0 would lead to http://crbug.com/674432.
|
| + boolean allowSpaceForInitiallyScrollingBelowTheFold =
|
| + CardsVariationParameters.isScrollBelowTheFoldEnabled()
|
| + && !mHasRenderedAboveTheFoldView;
|
| + if (firstVisiblePos > aboveTheFoldPosition
|
| + && !allowSpaceForInitiallyScrollingBelowTheFold) {
|
| // We have enough items to fill the viewport, since we have scrolled past the
|
| // above-the-fold item. We must check whether the above-the-fold view has been rendered
|
| // at least once, because it's possible to skip right over it if the initial scroll
|
|
|