Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(195)

Unified Diff: third_party/WebKit/Source/core/layout/LayoutGrid.cpp

Issue 2318993002: [css-grid] Fix performance regression in grid layout (Closed)
Patch Set: Patch for landing Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/layout/LayoutGrid.cpp
diff --git a/third_party/WebKit/Source/core/layout/LayoutGrid.cpp b/third_party/WebKit/Source/core/layout/LayoutGrid.cpp
index 0a0a80b51a7ffe268055b7b47a18f5f969f70066..efd81ad4b39b2df2a53f7c1b65eff343b1adb219 100644
--- a/third_party/WebKit/Source/core/layout/LayoutGrid.cpp
+++ b/third_party/WebKit/Source/core/layout/LayoutGrid.cpp
@@ -672,7 +672,7 @@ void LayoutGrid::computeUsedBreadthOfGridTracks(GridTrackSizingDirection directi
track.setInfinitelyGrowable(false);
if (trackSize.isFitContent()) {
- GridLength gridLength = trackSize.length();
+ GridLength gridLength = trackSize.fitContentTrackBreadth();
if (!gridLength.hasPercentage() || hasDefiniteFreeSpace)
track.setGrowthLimitCap(valueForLength(gridLength.length(), maxSize));
}
@@ -1143,10 +1143,8 @@ void LayoutGrid::resolveContentBasedTrackSizingFunctionsForNonSpanningItems(Grid
track.setGrowthLimit(std::max(track.growthLimit(), minContentForChild(gridItem, direction, sizingData)));
} else if (trackSize.hasMaxContentOrAutoMaxTrackBreadth()) {
LayoutUnit growthLimit = maxContentForChild(gridItem, direction, sizingData);
- if (trackSize.isFitContent()) {
- DCHECK(trackSize.length().isLength());
- growthLimit = std::min(growthLimit, valueForLength(trackSize.length().length(), sizingData.availableSpace()));
- }
+ if (trackSize.isFitContent())
+ growthLimit = std::min(growthLimit, valueForLength(trackSize.fitContentTrackBreadth().length(), sizingData.availableSpace()));
track.setGrowthLimit(std::max(track.growthLimit(), growthLimit));
}
}

Powered by Google App Engine
This is Rietveld 408576698