• H
    Make the drawer, popup menus, dialogs, and settings page scrollable. · 442c55b4
    Hixie 提交于
    Also, fixes the stocks list to work properly including hit testing at
    the bottom of the screen.
    
    New classes:
    
    RenderViewport: a class that supports positioning a child inside
    itself and offsetting it.
    
    Viewport: a RenderObjectWrapper that wraps RenderViewport.
    
    ScrollableViewport: a Component that hooks Viewport up to some
    scrolling behaviour.
    
    Code changes:
    
    RenderBlock now only works when it has an unbounded height constraint.
    I removed the clipping in there since it's no longer needed.
    
    I made FixedHeightScrollable use Viewport instead of hand-rolling its
    clipping with Transform and Clip. This is what fixes the stocks list
    hit testing at the bottom of the screen.
    
    I made anywhere that used to use Block now use ScrollableViewport.
    
    RenderFlex now takes a list of children.
    
    Justifications for test changes:
    
    tests/examples/stocks: changing FixedHeightScrollable to use a
    RenderViewport instead of a RenderClipRect/RenderTransform combination
    removes the use of an actual transform.
    
    R=abarth@chromium.org
    
    Review URL: https://codereview.chromium.org/1223153004 .
    442c55b4
flex.dart 15.1 KB