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

Unified Diff: third_party/WebKit/Source/core/style/GridResolvedPosition.cpp

Issue 1496863004: [css-grid] Simplify method to resolve auto-placed items (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@kill-grid-resolved-position
Patch Set: Created 5 years 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/style/GridResolvedPosition.cpp
diff --git a/third_party/WebKit/Source/core/style/GridResolvedPosition.cpp b/third_party/WebKit/Source/core/style/GridResolvedPosition.cpp
index b80e5fa2be1af65682a183a1f7946f85b16c6655..44a1366d9d3642ec05df140e51ba139d88154a70 100644
--- a/third_party/WebKit/Source/core/style/GridResolvedPosition.cpp
+++ b/third_party/WebKit/Source/core/style/GridResolvedPosition.cpp
@@ -155,24 +155,21 @@ static GridSpan resolveGridPositionAgainstOppositePosition(const ComputedStyle&
return definiteGridSpanWithSpanAgainstOpposite(resolvedOppositePosition, position, side);
}
-GridSpan GridResolvedPosition::resolveGridPositionsFromAutoPlacementPosition(const ComputedStyle& gridContainerStyle, const LayoutBox& gridItem, GridTrackSizingDirection direction, size_t resolvedInitialPosition)
+size_t GridResolvedPosition::spanSizeFromAutoPlacementPosition(const ComputedStyle& gridContainerStyle, const LayoutBox& gridItem, GridTrackSizingDirection direction)
{
GridPosition initialPosition, finalPosition;
initialAndFinalPositionsFromStyle(gridContainerStyle, gridItem, direction, initialPosition, finalPosition);
- GridPositionSide finalSide = finalPositionSide(direction);
-
// This method will only be used when both positions need to be resolved against the opposite one.
ASSERT(initialPosition.shouldBeResolvedAgainstOppositePosition() && finalPosition.shouldBeResolvedAgainstOppositePosition());
- size_t resolvedFinalPosition = resolvedInitialPosition + 1;
+ if (initialPosition.isAuto() && finalPosition.isAuto())
+ return 1;
- if (initialPosition.isSpan())
- return resolveGridPositionAgainstOppositePosition(gridContainerStyle, resolvedInitialPosition, initialPosition, finalSide);
- if (finalPosition.isSpan())
- return resolveGridPositionAgainstOppositePosition(gridContainerStyle, resolvedInitialPosition, finalPosition, finalSide);
-
- return GridSpan::definiteGridSpan(resolvedInitialPosition, resolvedFinalPosition);
+ GridPosition spanPosition = initialPosition.isSpan() ? initialPosition : finalPosition;
+ ASSERT(spanPosition.isSpan());
+ ASSERT(spanPosition.spanPosition());
+ return spanPosition.spanPosition();
svillar 2015/12/04 13:28:36 This is terribly confusing. We should use some oth
Manuel Rego 2015/12/04 14:49:10 True, I've changed it for "position".
}
size_t GridResolvedPosition::explicitGridColumnCount(const ComputedStyle& gridContainerStyle)

Powered by Google App Engine
This is Rietveld 408576698