 Chromium Code Reviews
 Chromium Code Reviews Issue 1220043002:
  [CSS Grid Layout] Removing Content Alignment logic from track sizing alg  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/blink.git@master
    
  
    Issue 1220043002:
  [CSS Grid Layout] Removing Content Alignment logic from track sizing alg  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/blink.git@master| Index: Source/core/layout/LayoutGrid.h | 
| diff --git a/Source/core/layout/LayoutGrid.h b/Source/core/layout/LayoutGrid.h | 
| index 0a50e9c3763348c7ed68f6a273f16c398803aee3..a41a4fdb5ae8e4435521d61b7c6d8a8709bce636 100644 | 
| --- a/Source/core/layout/LayoutGrid.h | 
| +++ b/Source/core/layout/LayoutGrid.h | 
| @@ -32,10 +32,12 @@ | 
| namespace blink { | 
| +struct ContentAlignmentData; | 
| struct GridCoordinate; | 
| struct GridSpan; | 
| class GridTrack; | 
| + | 
| 
svillar
2015/07/08 07:14:08
Careful, extra line.
 
jfernandez
2015/07/08 11:16:00
Done.
 | 
| enum TrackSizeComputationPhase { | 
| ResolveIntrinsicMinimums, | 
| ResolveMaxContentMinimums, | 
| @@ -127,7 +129,7 @@ private: | 
| void layoutGridItems(); | 
| void layoutPositionedObjects(bool relayoutChildren, PositionedLayoutBehavior = DefaultLayout); | 
| void offsetAndBreadthForPositionedChild(const LayoutBox&, GridTrackSizingDirection, bool startIsAuto, bool endIsAuto, LayoutUnit& offset, LayoutUnit& breadth); | 
| - void populateGridPositions(const GridSizingData&); | 
| + void populateGridPositions(GridSizingData&, LayoutUnit availableSpaceForColumns, LayoutUnit availableSpaceForRows); | 
| typedef struct GridItemsSpanGroupRange GridItemsSpanGroupRange; | 
| LayoutUnit currentItemSizeForTrackSizeComputationPhase(TrackSizeComputationPhase, LayoutBox&, GridTrackSizingDirection, Vector<GridTrack>& columnTracks); | 
| @@ -146,12 +148,15 @@ private: | 
| GridAxisPosition rowAxisPositionForChild(const LayoutBox&) const; | 
| LayoutUnit columnPositionForChild(const LayoutBox&) const; | 
| LayoutUnit rowPositionForChild(const LayoutBox&) const; | 
| - void computeContentPositionAndDistributionRowOffset(LayoutUnit availableFreeSpace, GridSizingData&) const; | 
| - void computeContentPositionAndDistributionColumnOffset(LayoutUnit availableFreeSpace, GridSizingData&) const; | 
| + ContentAlignmentData computeContentPositionAndDistributionRowOffset(LayoutUnit availableFreeSpace, unsigned numberOfGridTracks) const; | 
| + ContentAlignmentData computeContentPositionAndDistributionColumnOffset(LayoutUnit availableFreeSpace, unsigned numberOfGridTracks) const; | 
| LayoutPoint findChildLogicalPosition(const LayoutBox&, GridSizingData&) const; | 
| GridCoordinate cachedGridCoordinate(const LayoutBox&) const; | 
| LayoutUnit gridAreaBreadthForChild(const LayoutBox& child, GridTrackSizingDirection, const Vector<GridTrack>&) const; | 
| + LayoutUnit gridAreaBreadthForChildIncludingAlignmentOffsets(const LayoutBox&, GridTrackSizingDirection, const GridSizingData&) const; | 
| + | 
| + void applyStretchAlignmentToTracksIfNeeded(GridTrackSizingDirection, GridSizingData&, LayoutUnit availableSpace); | 
| virtual void paintChildren(const PaintInfo&, const LayoutPoint&) override; | 
| bool allowedToStretchLogicalHeightForChild(const LayoutBox& child) const; |