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

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

Issue 1648333002: [css-grid] Rename GridCoordinate to GridArea (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutGrid.h ('k') | third_party/WebKit/Source/core/style/GridArea.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 5b7e4f4709551e1061a118053170a6e313dec519..bbe58963f10af8e112677dada8b4876c07128c6b 100644
--- a/third_party/WebKit/Source/core/layout/LayoutGrid.cpp
+++ b/third_party/WebKit/Source/core/layout/LayoutGrid.cpp
@@ -30,7 +30,7 @@
#include "core/paint/GridPainter.h"
#include "core/paint/PaintLayer.h"
#include "core/style/ComputedStyle.h"
-#include "core/style/GridCoordinate.h"
+#include "core/style/GridArea.h"
#include "platform/LengthFunctions.h"
#include <algorithm>
@@ -197,7 +197,7 @@ public:
return true;
}
- PassOwnPtr<GridCoordinate> nextEmptyGridArea(size_t fixedTrackSpan, size_t varyingTrackSpan)
+ PassOwnPtr<GridArea> nextEmptyGridArea(size_t fixedTrackSpan, size_t varyingTrackSpan)
{
ASSERT(!m_grid.isEmpty());
ASSERT(fixedTrackSpan >= 1 && varyingTrackSpan >= 1);
@@ -209,7 +209,7 @@ public:
const size_t endOfVaryingTrackIndex = (m_direction == ForColumns) ? m_grid.size() : m_grid[0].size();
for (; varyingTrackIndex < endOfVaryingTrackIndex; ++varyingTrackIndex) {
if (checkEmptyCells(rowSpan, columnSpan)) {
- OwnPtr<GridCoordinate> result = adoptPtr(new GridCoordinate(GridSpan::translatedDefiniteGridSpan(m_rowIndex, m_rowIndex + rowSpan), GridSpan::translatedDefiniteGridSpan(m_columnIndex, m_columnIndex + columnSpan)));
+ OwnPtr<GridArea> result = adoptPtr(new GridArea(GridSpan::translatedDefiniteGridSpan(m_rowIndex, m_rowIndex + rowSpan), GridSpan::translatedDefiniteGridSpan(m_columnIndex, m_columnIndex + columnSpan)));
// Advance the iterator to avoid an infinite loop where we would return the same grid area over and over.
++varyingTrackIndex;
return result.release();
@@ -1104,13 +1104,13 @@ void LayoutGrid::ensureGridSize(size_t maximumRowSize, size_t maximumColumnSize)
}
}
-void LayoutGrid::insertItemIntoGrid(LayoutBox& child, const GridCoordinate& coordinate)
+void LayoutGrid::insertItemIntoGrid(LayoutBox& child, const GridArea& area)
{
- RELEASE_ASSERT(coordinate.rows.isTranslatedDefinite() && coordinate.columns.isTranslatedDefinite());
- ensureGridSize(coordinate.rows.resolvedFinalPosition(), coordinate.columns.resolvedFinalPosition());
+ RELEASE_ASSERT(area.rows.isTranslatedDefinite() && area.columns.isTranslatedDefinite());
+ ensureGridSize(area.rows.resolvedFinalPosition(), area.columns.resolvedFinalPosition());
- for (const auto& row : coordinate.rows) {
- for (const auto& column: coordinate.columns)
+ for (const auto& row : area.rows) {
+ for (const auto& column: area.columns)
m_grid[row][column].append(&child);
}
}
@@ -1120,7 +1120,7 @@ void LayoutGrid::placeItemsOnGrid()
if (!m_gridIsDirty)
return;
- ASSERT(m_gridItemCoordinate.isEmpty());
+ ASSERT(m_gridItemArea.isEmpty());
populateExplicitGridAndOrderIterator();
@@ -1133,22 +1133,22 @@ void LayoutGrid::placeItemsOnGrid()
if (child->isOutOfFlowPositioned())
continue;
- GridCoordinate coordinate = cachedGridCoordinate(*child);
- if (!coordinate.rows.isIndefinite())
- coordinate.rows.translate(abs(m_smallestRowStart));
- if (!coordinate.columns.isIndefinite())
- coordinate.columns.translate(abs(m_smallestColumnStart));
- m_gridItemCoordinate.set(child, coordinate);
+ GridArea area = cachedGridArea(*child);
+ if (!area.rows.isIndefinite())
+ area.rows.translate(abs(m_smallestRowStart));
+ if (!area.columns.isIndefinite())
+ area.columns.translate(abs(m_smallestColumnStart));
+ m_gridItemArea.set(child, area);
- if (coordinate.rows.isIndefinite() || coordinate.columns.isIndefinite()) {
- GridSpan majorAxisPositions = (autoPlacementMajorAxisDirection() == ForColumns) ? coordinate.columns : coordinate.rows;
+ if (area.rows.isIndefinite() || area.columns.isIndefinite()) {
+ GridSpan majorAxisPositions = (autoPlacementMajorAxisDirection() == ForColumns) ? area.columns : area.rows;
if (majorAxisPositions.isIndefinite())
autoMajorAxisAutoGridItems.append(child);
else
specifiedMajorAxisAutoGridItems.append(child);
continue;
}
- insertItemIntoGrid(*child, coordinate);
+ insertItemIntoGrid(*child, area);
}
ASSERT(gridRowCount() >= GridPositionsResolver::explicitGridRowCount(*style()));
@@ -1164,8 +1164,8 @@ void LayoutGrid::placeItemsOnGrid()
if (child->isOutOfFlowPositioned())
continue;
- GridCoordinate coordinate = cachedGridCoordinate(*child);
- ASSERT(coordinate.rows.isTranslatedDefinite() && coordinate.columns.isTranslatedDefinite());
+ GridArea area = cachedGridArea(*child);
+ ASSERT(area.rows.isTranslatedDefinite() && area.columns.isTranslatedDefinite());
}
#endif
}
@@ -1188,10 +1188,10 @@ void LayoutGrid::populateExplicitGridAndOrderIterator()
populator.collectChild(child);
m_gridItemsIndexesMap.set(child, childIndex++);
- // This function bypasses the cache (cachedGridCoordinate()) as it is used to build it.
+ // This function bypasses the cache (cachedGridArea()) as it is used to build it.
GridSpan rowPositions = GridPositionsResolver::resolveGridPositionsFromStyle(*style(), *child, ForRows);
GridSpan columnPositions = GridPositionsResolver::resolveGridPositionsFromStyle(*style(), *child, ForColumns);
- m_gridItemCoordinate.set(child, GridCoordinate(rowPositions, columnPositions));
+ m_gridItemArea.set(child, GridArea(rowPositions, columnPositions));
// |positions| is 0 if we need to run the auto-placement algorithm.
if (!rowPositions.isIndefinite()) {
@@ -1218,13 +1218,13 @@ void LayoutGrid::populateExplicitGridAndOrderIterator()
column.grow(maximumColumnIndex + abs(m_smallestColumnStart));
}
-PassOwnPtr<GridCoordinate> LayoutGrid::createEmptyGridAreaAtSpecifiedPositionsOutsideGrid(const LayoutBox& gridItem, GridTrackSizingDirection specifiedDirection, const GridSpan& specifiedPositions) const
+PassOwnPtr<GridArea> LayoutGrid::createEmptyGridAreaAtSpecifiedPositionsOutsideGrid(const LayoutBox& gridItem, GridTrackSizingDirection specifiedDirection, const GridSpan& specifiedPositions) const
{
GridTrackSizingDirection crossDirection = specifiedDirection == ForColumns ? ForRows : ForColumns;
const size_t endOfCrossDirection = crossDirection == ForColumns ? gridColumnCount() : gridRowCount();
size_t crossDirectionSpanSize = GridPositionsResolver::spanSizeForAutoPlacedItem(*style(), gridItem, crossDirection);
GridSpan crossDirectionPositions = GridSpan::translatedDefiniteGridSpan(endOfCrossDirection, endOfCrossDirection + crossDirectionSpanSize);
- return adoptPtr(new GridCoordinate(specifiedDirection == ForColumns ? crossDirectionPositions : specifiedPositions, specifiedDirection == ForColumns ? specifiedPositions : crossDirectionPositions));
+ return adoptPtr(new GridArea(specifiedDirection == ForColumns ? crossDirectionPositions : specifiedPositions, specifiedDirection == ForColumns ? specifiedPositions : crossDirectionPositions));
}
void LayoutGrid::placeSpecifiedMajorAxisItemsOnGrid(const Vector<LayoutBox*>& autoGridItems)
@@ -1245,11 +1245,11 @@ void LayoutGrid::placeSpecifiedMajorAxisItemsOnGrid(const Vector<LayoutBox*>& au
unsigned majorAxisInitialPosition = majorAxisPositions.resolvedInitialPosition();
GridIterator iterator(m_grid, autoPlacementMajorAxisDirection(), majorAxisPositions.resolvedInitialPosition(), isGridAutoFlowDense ? 0 : minorAxisCursors.get(majorAxisInitialPosition));
- OwnPtr<GridCoordinate> emptyGridArea = iterator.nextEmptyGridArea(majorAxisPositions.integerSpan(), minorAxisSpanSize);
+ OwnPtr<GridArea> emptyGridArea = iterator.nextEmptyGridArea(majorAxisPositions.integerSpan(), minorAxisSpanSize);
if (!emptyGridArea)
emptyGridArea = createEmptyGridAreaAtSpecifiedPositionsOutsideGrid(*autoGridItem, autoPlacementMajorAxisDirection(), majorAxisPositions);
- m_gridItemCoordinate.set(autoGridItem, *emptyGridArea);
+ m_gridItemArea.set(autoGridItem, *emptyGridArea);
insertItemIntoGrid(*autoGridItem, *emptyGridArea);
if (!isGridAutoFlowDense)
@@ -1283,7 +1283,7 @@ void LayoutGrid::placeAutoMajorAxisItemOnGrid(LayoutBox& gridItem, std::pair<siz
size_t majorAxisAutoPlacementCursor = autoPlacementMajorAxisDirection() == ForColumns ? autoPlacementCursor.second : autoPlacementCursor.first;
size_t minorAxisAutoPlacementCursor = autoPlacementMajorAxisDirection() == ForColumns ? autoPlacementCursor.first : autoPlacementCursor.second;
- OwnPtr<GridCoordinate> emptyGridArea;
+ OwnPtr<GridArea> emptyGridArea;
if (minorAxisPositions.isTranslatedDefinite()) {
// Move to the next track in major axis if initial position in minor axis is before auto-placement cursor.
if (minorAxisPositions.resolvedInitialPosition() < minorAxisAutoPlacementCursor)
@@ -1323,7 +1323,7 @@ void LayoutGrid::placeAutoMajorAxisItemOnGrid(LayoutBox& gridItem, std::pair<siz
emptyGridArea = createEmptyGridAreaAtSpecifiedPositionsOutsideGrid(gridItem, autoPlacementMinorAxisDirection(), GridSpan::translatedDefiniteGridSpan(0, minorAxisSpanSize));
}
- m_gridItemCoordinate.set(&gridItem, *emptyGridArea);
+ m_gridItemArea.set(&gridItem, *emptyGridArea);
insertItemIntoGrid(gridItem, *emptyGridArea);
// Move auto-placement cursor to the new position.
autoPlacementCursor.first = emptyGridArea->rows.resolvedInitialPosition();
@@ -1353,7 +1353,7 @@ void LayoutGrid::dirtyGrid()
setNeedsLayout(LayoutInvalidationReason::GridChanged);
m_grid.resize(0);
- m_gridItemCoordinate.clear();
+ m_gridItemArea.clear();
m_gridItemsOverflowingGridArea.resize(0);
m_gridItemsIndexesMap.clear();
m_gridIsDirty = true;
@@ -1429,9 +1429,9 @@ void LayoutGrid::layoutGridItems(GridSizingData& sizingData)
updateAutoMarginsInRowAxisIfNeeded(*child);
#if ENABLE(ASSERT)
- const GridCoordinate& coordinate = cachedGridCoordinate(*child);
- ASSERT(coordinate.columns.resolvedInitialPosition() < sizingData.columnTracks.size());
- ASSERT(coordinate.rows.resolvedInitialPosition() < sizingData.rowTracks.size());
+ const GridArea& area = cachedGridArea(*child);
+ ASSERT(area.columns.resolvedInitialPosition() < sizingData.columnTracks.size());
+ ASSERT(area.rows.resolvedInitialPosition() < sizingData.rowTracks.size());
#endif
child->setLogicalLocation(findChildLogicalPosition(*child, sizingData));
@@ -1544,16 +1544,16 @@ void LayoutGrid::offsetAndBreadthForPositionedChild(const LayoutBox& child, Grid
}
}
-GridCoordinate LayoutGrid::cachedGridCoordinate(const LayoutBox& gridItem) const
+GridArea LayoutGrid::cachedGridArea(const LayoutBox& gridItem) const
{
- ASSERT(m_gridItemCoordinate.contains(&gridItem));
- return m_gridItemCoordinate.get(&gridItem);
+ ASSERT(m_gridItemArea.contains(&gridItem));
+ return m_gridItemArea.get(&gridItem);
}
GridSpan LayoutGrid::cachedGridSpan(const LayoutBox& gridItem, GridTrackSizingDirection direction) const
{
- GridCoordinate coordinate = cachedGridCoordinate(gridItem);
- return direction == ForColumns ? coordinate.columns : coordinate.rows;
+ GridArea area = cachedGridArea(gridItem);
+ return direction == ForColumns ? area.columns : area.rows;
}
LayoutUnit LayoutGrid::gridAreaBreadthForChild(const LayoutBox& child, GridTrackSizingDirection direction, const Vector<GridTrack>& tracks) const
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutGrid.h ('k') | third_party/WebKit/Source/core/style/GridArea.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698