Chromium Code Reviews| Index: third_party/WebKit/Source/core/layout/LayoutGrid.h |
| diff --git a/third_party/WebKit/Source/core/layout/LayoutGrid.h b/third_party/WebKit/Source/core/layout/LayoutGrid.h |
| index c9cc0244f0b5a1f669ce93d5d3242608eb7719dc..b9a19afd19bfbc679f19817bb91cdf2daa26e553 100644 |
| --- a/third_party/WebKit/Source/core/layout/LayoutGrid.h |
| +++ b/third_party/WebKit/Source/core/layout/LayoutGrid.h |
| @@ -97,6 +97,8 @@ private: |
| bool isOfType(LayoutObjectType type) const override { return type == LayoutObjectLayoutGrid || LayoutBlock::isOfType(type); } |
| void computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const override; |
| + LayoutUnit computeIntrinsicLogicalContentHeightUsing(const Length& logicalHeightLength, LayoutUnit intrinsicContentHeight, LayoutUnit borderAndPadding) const override; |
|
cbiesinger
2015/10/26 22:22:35
override -> final
|
| + |
| void addChild(LayoutObject* newChild, LayoutObject* beforeChild = nullptr) override; |
| void removeChild(LayoutObject*) override; |
| @@ -107,8 +109,7 @@ private: |
| class GridIterator; |
| struct GridSizingData; |
| - bool gridElementIsShrinkToFit(); |
| - void computeUsedBreadthOfGridTracks(GridTrackSizingDirection, GridSizingData&); |
| + void computeUsedBreadthOfGridTracks(GridTrackSizingDirection, GridSizingData&, LayoutUnit& baseSizesWithoutMaximization, LayoutUnit& growthLimitsWithoutMaximization); |
| LayoutUnit computeUsedBreadthOfMinLength(const GridLength&, LayoutUnit maxBreadth) const; |
| LayoutUnit computeUsedBreadthOfMaxLength(const GridLength&, LayoutUnit usedBreadth, LayoutUnit maxBreadth) const; |
| void resolveContentBasedTrackSizingFunctions(GridTrackSizingDirection, GridSizingData&); |
| @@ -124,7 +125,11 @@ private: |
| GridTrackSizingDirection autoPlacementMajorAxisDirection() const; |
| GridTrackSizingDirection autoPlacementMinorAxisDirection() const; |
| - void layoutGridItems(); |
| + void computeIntrinsicLogicalHeight(GridSizingData&, LayoutUnit borderAndPadding); |
| + LayoutUnit computeTrackBasedLogicalHeight(const GridSizingData&) const; |
| + void computeTrackSizesForDirection(GridTrackSizingDirection, GridSizingData&, LayoutUnit freeSpace); |
| + |
| + void layoutGridItems(GridSizingData&); |
| void prepareChildForPositionedLayout(LayoutBox&); |
| void layoutPositionedObjects(bool relayoutChildren, PositionedLayoutBehavior = DefaultLayout); |
| void offsetAndBreadthForPositionedChild(const LayoutBox&, GridTrackSizingDirection, LayoutUnit& offset, LayoutUnit& breadth); |
| @@ -175,7 +180,7 @@ private: |
| void updateAutoMarginsInRowAxisIfNeeded(LayoutBox&); |
| #if ENABLE(ASSERT) |
| - bool tracksAreWiderThanMinTrackBreadth(GridTrackSizingDirection, const Vector<GridTrack>&); |
| + bool tracksAreWiderThanMinTrackBreadth(GridTrackSizingDirection, GridSizingData&); |
| #endif |
| size_t gridItemSpan(const LayoutBox&, GridTrackSizingDirection); |
| @@ -203,6 +208,9 @@ private: |
| OrderIterator m_orderIterator; |
| Vector<LayoutBox*> m_gridItemsOverflowingGridArea; |
| HashMap<const LayoutBox*, size_t> m_gridItemsIndexesMap; |
| + |
| + LayoutUnit m_minContentHeight { -1 }; |
| + LayoutUnit m_maxContentHeight { -1 }; |
| }; |
| DEFINE_LAYOUT_OBJECT_TYPE_CASTS(LayoutGrid, isLayoutGrid()); |