Since we support content alignment (space-between and so on) the computed style for grid-template-columns and grid-template-rows is wrong as it's including the distribution offset. However it doesn't include the gaps as we're already subtracting them, we should do the same for the distribution offset. To fix this we'll port this patch from Blink: https://codereview.chromium.org/1903183002/
Created attachment 276818 [details] Patch
Created attachment 276903 [details] Patch
Comment on attachment 276903 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=276903&action=review > Source/WebCore/css/CSSComputedStyleDeclaration.cpp:1073 > + const auto& grid = downcast<RenderGrid>(*renderer); I don’t think the const here is helpful. Just auto& would be fine. > Source/WebCore/css/CSSComputedStyleDeclaration.cpp:1074 > + const Vector<LayoutUnit>& trackPositions = direction == ForColumns ? grid.columnPositions() : grid.rowPositions(); I think this would be better if it said auto& instead of writing out the type. > Source/WebCore/rendering/RenderGrid.h:68 > + LayoutUnit offsetBetweenTracks(GridTrackSizingDirection direction) const > + { > + return direction == ForColumns ? m_offsetBetweenColumns : m_offsetBetweenRows; > + } Normally it’s easier to read class definitions if they don’t have multi-line function definitions inside them. Would you consider putting the inline function definition separately after the class definition and just declaring the function here?
Created attachment 277235 [details] Patch for landing
Thanks for the review. (In reply to comment #3) > > Source/WebCore/css/CSSComputedStyleDeclaration.cpp:1073 > > + const auto& grid = downcast<RenderGrid>(*renderer); > > I don’t think the const here is helpful. Just auto& would be fine. Done. > > Source/WebCore/css/CSSComputedStyleDeclaration.cpp:1074 > > + const Vector<LayoutUnit>& trackPositions = direction == ForColumns ? grid.columnPositions() : grid.rowPositions(); > > I think this would be better if it said auto& instead of writing out the > type. Done. > > Source/WebCore/rendering/RenderGrid.h:68 > > + LayoutUnit offsetBetweenTracks(GridTrackSizingDirection direction) const > > + { > > + return direction == ForColumns ? m_offsetBetweenColumns : m_offsetBetweenRows; > > + } > > Normally it’s easier to read class definitions if they don’t have multi-line > function definitions inside them. Would you consider putting the inline > function definition separately after the class definition and just declaring > the function here? Moved the implementation to the .cpp.
Comment on attachment 277235 [details] Patch for landing Clearing flags on attachment: 277235 Committed r199981: <http://trac.webkit.org/changeset/199981>
All reviewed patches have been landed. Closing bug.