Fix loading commits in the New Review Request page on tall monitors.

Review Request #11673 — Created June 24, 2021 and submitted — Latest diff uploaded

Information

Review Board
release-4.0.x

Reviewers

The New Review Request page's commit list loads an initial page of
commits and then only loads new pages of commits when scrolling to the
end of the list. However, if the window is tall enough, that initial
list of commits won't be enough to trigger a scrollbar, preventing any
more commits from loading.

We now progressively load pages of commits until we know we've filled up
the visible list and triggered a scrollbar. The logic is the same as the
one we used for determining when to load a new page of commits when
scrolling, but is now called on initial page load and can repeatedly
call itself until the visible list is full.

As part of this, RB.RepositoryCommits.fetchNext() now takes options
for notifying on success or error, which is used by
RB.CommitsListView both for the progressive loading and for error
reporting if progressive loading fails (which we didn't notify about
before).

Unit tests passed.

Tested by shrinking the font to an ultra-tiny size with a full-screen
window. Without the patch, the commits wouldn't fill up the available
space, and I had no way of loading new commits. After the patch, the
commits filled up the entire available width, and I could scroll to
load more.

Commits

Files

    Loading...