1. 04 Mar, 2016 1 commit
  2. 12 Feb, 2016 2 commits
    • Adam Barth's avatar
      Fix padding for ScrollableList · ad2fa5a6
      Adam Barth authored
      Previously we had totally wrong behavior. Now we have more correct behavior and
      testing.
      
      Fixes #1808
      ad2fa5a6
    • Hixie's avatar
      SizeObserver crusade: snap alignment · fd7be69d
      Hixie authored
      Remove the SizeObserver you need to use snap alignment in lists by
      having the lists provide the size themselves in the callback.
      
      Also, remove snapAlignmentOffset since we couldn't figure out how to
      explain it and it's not really needed.
      fd7be69d
  3. 10 Feb, 2016 2 commits
  4. 06 Feb, 2016 1 commit
    • Adam Barth's avatar
      Remove HomogeneousViewport · 5b896694
      Adam Barth authored
      The virtual viewport machinery now handles all of these use cases.
      Previous clients of ScrollableWidgetList can use ScrollableLazyList
      instead.
      5b896694
  5. 03 Feb, 2016 1 commit
  6. 21 Jan, 2016 1 commit
  7. 14 Jan, 2016 1 commit
    • Adam Barth's avatar
      Stocks has both tabs reified in the wiget tree · b5ed355b
      Adam Barth authored
      We were recomputing which widgets to show only when we were on the other side
      of the repaint boundaries. That doesn't work well for pageable lists because we
      come to rest exactly on a repaint boundary, which means we don't cull the other
      page.
      
      After this patch, we recompute the set of widgets using an edge-trigger when we
      hit the boundary. That's better than using a level-trigger so that we don't
      continuously recompute the set of widget as we sit at the boundary.
      b5ed355b
  8. 11 Jan, 2016 2 commits
  9. 06 Jan, 2016 4 commits
    • Adam Barth's avatar
      Switch PageableList over to using RenderList · e64d93a5
      Adam Barth authored
      This patch moves PageableList off HomogeneousViewport and onto RenderList and
      friends, making it match the new ScrollableList.
      e64d93a5
    • Adam Barth's avatar
      Replace ScrollableList with ScrollableList2 · 627c1ffb
      Adam Barth authored
      ScrollableList2 is complete and subsumes all the use cases for the original
      ScrollableList.
      627c1ffb
    • Adam Barth's avatar
      Fix assert in Stocks app · d2a1389e
      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.
      d2a1389e
    • Adam Barth's avatar
      Switch clients of ScrollableList to ScrollableList2 · b1f9138f
      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.
      b1f9138f
  10. 05 Jan, 2016 2 commits
    • Adam Barth's avatar
      Complete features of ScrollableList2 · 37106ea6
      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.
      37106ea6
    • Adam Barth's avatar
      Introduce ScrollableList2 · 99bca282
      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.
      99bca282