Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 8c4fd56347648a238656e54d696b308dca674fe8
https://github.com/WebKit/WebKit/commit/8c4fd56347648a238656e54d696b308dca674fe8
Author: Alan Baradlay <[email protected]>
Date: 2026-08-23 (Sun, 23 Aug 2026)
Changed paths:
M
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-004-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-005-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-006-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-007-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-008-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-009-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-010-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-011-expected.txt
A
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-float-001-expected.txt
A
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-float-001.html
M Source/WebCore/rendering/FloatingObjects.cpp
M Source/WebCore/rendering/FloatingObjects.h
M Source/WebCore/rendering/RenderBlockFlow.cpp
Log Message:
-----------
[block] align-content moves a float child twice
https://bugs.webkit.org/show_bug.cgi?id=322298
<rdar://problem/185536955>
Reviewed by Antti Koivisto.
align-content distributes a block container's extra space by moving its
content. shiftForAlignContent moves
every child box and FloatingObjects::shiftFloatsBy then moves the float
renderers again, so a float that is a
child of the container travels twice as far as the content it sits with.
A float taken from a child's float list moves twice as well: the child moves
with the rest of the content and
shiftFloatsBy then moves the float's renderer, which belongs to that child.
Only the FloatingObject's frame
rect needs the shift there, since that rect is in this container's coordinate
space.
* Source/WebCore/rendering/FloatingObjects.cpp:
(WebCore::FloatingObjects::shiftFloatsBy):
* Source/WebCore/rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::shiftForAlignContent):
*
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-float-001.html:
Added.
*
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-float-001-expected.txt:
Added.
*
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-004-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-005-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-006-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-007-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-008-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-009-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-010-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/css/css-align/blocks/align-content-block-011-expected.txt:
* Source/WebCore/rendering/FloatingObjects.h:
Canonical link: https://commits.webkit.org/319665@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications