• Ian Kilpatrick's avatar
    [GridNG] Implement alignment within grid-areas. · f6a05301
    Ian Kilpatrick authored
    This patch implements alignment within a grid-item's grid-area.
    When creating the GridItemData we read of the containers, and
    grid-item's style, or determine its alignment axis-edge, and if it
    should be stretched, saving this information on the GridItemData.
    
    When placing the grid-item it will use this to adjust the offset.
    
    This doesn't implement baseline alignment which requires a secondary
    pass to correctly determine the baseline for the column/row.
    
    The other TODO relates to the constraint-space API, and how grid will
    need a slightly new concept in order to do block-axis stretching
    easily. By default non-replaced grid-items will stretch to the available
    space. A new bit on the space can indicate that we should stretch to
    the available space (if possible), this is similar to the shrink-to-fit
    bit we have today.
    
    This adds a self-start/self-end test as after implementing this now new
    tests passed immediately, and I don't believe we had good test
    coverage for inflow content with these keywords.
    
    Bug: 1045599
    Change-Id: I8c9cc51381c3d75519e52b32472b58ec96a6a85a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2492176
    Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
    Reviewed-by: default avatarChristian Biesinger <cbiesinger@chromium.org>
    Reviewed-by: default avatarKurt Catti-Schmidt <kschmi@microsoft.com>
    Cr-Commit-Position: refs/heads/master@{#821043}
    f6a05301
TestExpectations 532 KB