Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 578b0cd616d27f530dd49e693bc7d6b4ac93fe4a
      
https://github.com/WebKit/WebKit/commit/578b0cd616d27f530dd49e693bc7d6b4ac93fe4a
  Author: Brandon Stewart <[email protected]>
  Date:   2024-11-07 (Thu, 07 Nov 2024)

  Changed paths:
    M Source/WebCore/rendering/GridMasonryLayout.cpp
    M Source/WebCore/rendering/GridMasonryLayout.h
    M Source/WebCore/rendering/RenderGrid.cpp

  Log Message:
  -----------
  [css-masonry] Refactor Overriding of Logical Width during Masonry
https://bugs.webkit.org/show_bug.cgi?id=282638
rdar://problem/139312026

Reviewed by Sammy Gill.

The overriding logical width logic should live in the GridMasonryLayout instead 
of RenderGrid.

Added an enum to handle the different min, max, and not overriding cases.

There was one special behavior with subgrid containers not being iterated over 
in the old implementation. I added extra code to handle this behavior.

 * Source/WebCore/rendering/GridMasonryLayout.cpp:
 (WebCore::GridMasonryLayout::performMasonryPlacement):
 (WebCore::GridMasonryLayout::placeItemsUsingOrderModifiedDocumentOrder):
 (WebCore::GridMasonryLayout::placeItemsWithDefiniteGridAxisPosition):
 (WebCore::GridMasonryLayout::placeItemsWithIndefiniteGridAxisPosition):
 (WebCore::GridMasonryLayout::calculateMasonryIntrinsicLogicalWidth):
 (WebCore::GridMasonryLayout::insertIntoGridAndLayoutItem):
 * Source/WebCore/rendering/GridMasonryLayout.h:
 * Source/WebCore/rendering/RenderGrid.cpp:
 (WebCore::RenderGrid::layoutMasonry):
 (WebCore::RenderGrid::computeIntrinsicLogicalWidths const):

Canonical link: https://commits.webkit.org/286276@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to