- 11 Jan, 2016 1 commit
-
-
Adam Barth authored
We use the ScrollDirection for more than just scrolling. Fixes #151
-
- 06 Jan, 2016 3 commits
-
-
Adam Barth authored
This patch moves PageableList off HomogeneousViewport and onto RenderList and friends, making it match the new ScrollableList.
-
Adam Barth authored
When paging a scrollable list, we were trying to read the render object's size at a time when we're not allowed to read it. Instead, encode the information into the repaint limit, which is more correct (and faster) anyway.
-
Adam Barth authored
This patch also changed ScrollableList2 to use an Iterable instead of an List for its children. This change lets clients map their underlying data lazily. If the clients actually have a concrete list, we skip the extra copy and grab the child list directly.
-
- 05 Jan, 2016 2 commits
-
-
Adam Barth authored
This patch implements the remaining missing features of ScrollableList2. It should now be nearly a drop-in replacement for ScrollableList. The next patch will switch callers over to the new machinery.
-
Adam Barth authored
ScrollableList2 uses the same pattern as ScrollableGrid, which requires the client to allocate widgets for every list item but doesn't inflate them unless they're actually needed for the view. It improves on the original ScrollableList by not requiring a rebuild of the whole visible portion of the list when scrolling. In fact, small scrolls can often be handled entirely by repainting.
-
- 04 Jan, 2016 1 commit
-
-
Adam Barth authored
We now support (vertically) scrollable grids with viewporting. If the scroll doesn't reveal any new rows, we execute the scroll with a repaint (i.e., no layout). If the scroll reveals a new row, we trigger a layout to change the set of materialized children in the viewport.
-