| 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..1b78dc52ca27cf7f4cf5c160d4bc33b86b8cc3a0 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;
|
| +
|
| 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 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());
|
|
|