[webkit-changes] [WebKit/WebKit] 4258e7: Implement safe alignment in flexbox.
fantasai
noreply at github.com
Thu Feb 8 12:46:45 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 4258e7ee63a17d362a9d57f91615925b176962ca
https://github.com/WebKit/WebKit/commit/4258e7ee63a17d362a9d57f91615925b176962ca
Author: Elika Etemad <fantasai.bugs at inkedblade.net>
Date: 2024-02-08 (Thu, 08 Feb 2024)
Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-safe-overflow-position-002.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-safe-overflow-position-003.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-safe-overflow-position-004.html
M LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-safe-overflow-position-005.html
M Source/WebCore/rendering/RenderFlexibleBox.cpp
M Source/WebCore/rendering/RenderFlexibleBox.h
Log Message:
-----------
Implement safe alignment in flexbox.
https://bugs.webkit.org/show_bug.cgi?id=263893
rdar://118000717
Reviewed by Sammy Gill.
Coverts alignment to Start when available space is negative and overflow alignment safety is on.
* LayoutTests/TestExpectations: Pass more tests!
* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-safe-overflow-position-002.html: Fix (and augment) incorrect test.
* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-safe-overflow-position-003.html: Fix (and augment) incorrect test.
* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-safe-overflow-position-004.html: Fix (and augment) incorrect test.
* LayoutTests/imported/w3c/web-platform-tests/css/css-flexbox/flexbox-safe-overflow-position-005.html: Fix (and augment) incorrect test.
* Source/WebCore/rendering/RenderFlexibleBox.cpp:
(WebCore::initialJustifyContentOffset): Apply overflow safety to main-axis content alignment.
(WebCore::RenderFlexibleBox::staticCrossAxisPositionForPositionedChild): Apply overflow safety to static positioning.
(WebCore::RenderFlexibleBox::overflowAlignmentForChild const): Implement new helper method.
(WebCore::initialAlignContentOffset): Apply overflow safety to main-axis content alignment.
(WebCore::RenderFlexibleBox::alignFlexLines): Don't skip alignment calculation when safety is on, pass safety value to initialAlignContentOffset().
(WebCore::RenderFlexibleBox::alignChildren): Apply overflow safety to cross-axis item alignment.
(WebCore::RenderFlexibleBox::allowedLayoutOverflow const): Apply overflow safety to overflow bounds.
* Source/WebCore/rendering/RenderFlexibleBox.h: Add helper method overflowAlignmentForChild(), parallel to alignmentForChild().
Canonical link: https://commits.webkit.org/274304@main
More information about the webkit-changes
mailing list