[webkit-changes] [WebKit/WebKit] 3fc32a: [Multicol] Incorrect clipping when a layer is pres...
Rob Buis
noreply at github.com
Tue Nov 22 13:47:39 PST 2022
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3fc32a416db0c58ed77f9f3b7414e00c7eba9ebb
https://github.com/WebKit/WebKit/commit/3fc32a416db0c58ed77f9f3b7414e00c7eba9ebb
Author: Rob Buis <rbuis at igalia.com>
Date: 2022-11-22 (Tue, 22 Nov 2022)
Changed paths:
M LayoutTests/TestExpectations
A LayoutTests/fast/multicol/positioned-split-expected.html
M LayoutTests/fast/multicol/positioned-split.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/relative-child-overflowing-column-gap-expected.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/relative-child-overflowing-column-gap-ref.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/relative-child-overflowing-column-gap.html
A LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/relative-child-overflowing-container-expected.xht
A LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/relative-child-overflowing-container.html
R LayoutTests/platform/glib/fast/multicol/positioned-split-expected.txt
R LayoutTests/platform/gtk/fast/multicol/positioned-split-expected.png
R LayoutTests/platform/ios/fast/multicol/positioned-split-expected.txt
R LayoutTests/platform/mac/fast/multicol/positioned-split-expected.png
R LayoutTests/platform/mac/fast/multicol/positioned-split-expected.txt
R LayoutTests/platform/win/fast/multicol/positioned-split-expected.txt
R LayoutTests/platform/wincairo/fast/multicol/positioned-split-expected.txt
M Source/WebCore/rendering/RenderBlock.cpp
M Source/WebCore/rendering/RenderBox.cpp
Log Message:
-----------
[Multicol] Incorrect clipping when a layer is present between the column and the content layer
https://bugs.webkit.org/show_bug.cgi?id=238854
Reviewed by Darin Adler.
Multicol keeps track of both visual and layout overflow of children
to determine pagination clips for fragments. For layout overflow
this works fine, but for visual overflow RenderBox::addOverflowFromChild
skips self painting layers, needed amongst others for position:relative
elements, so this was not taken into account for pagination clipping.
Rework RenderBox::addOverflowFromChild to also take into account
visual overflow for elements that use a self painting layer, in order
to allow (visual) overflow of elements that do not cause column breaks
as specified in https://www.w3.org/TR/css-multicol-1/#overflow.
* LayoutTests/TestExpectations:
* LayoutTests/fast/multicol/positioned-split.html:
* LayoutTests/fast/multicol/positioned-split-expected.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/relative-child-overflowing-container-expected.xht: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/relative-child-overflowing-container.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/relative-child-overflowing-column-gap-expected.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/relative-child-overflowing-column-gap-ref.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/css-multicol/relative-child-overflowing-column-gap.html: Added.
* LayoutTests/platform/glib/fast/multicol/positioned-split-expected.txt: Removed.
* LayoutTests/platform/gtk/fast/multicol/positioned-split-expected.png: Removed.
* LayoutTests/platform/ios/fast/multicol/positioned-split-expected.txt: Removed.
* LayoutTests/platform/mac/fast/multicol/positioned-split-expected.png: Removed.
* LayoutTests/platform/mac/fast/multicol/positioned-split-expected.txt: Removed.
* LayoutTests/platform/win/fast/multicol/positioned-split-expected.txt: Removed.
* LayoutTests/platform/wincairo/fast/multicol/positioned-split-expected.txt: Removed.
* Source/WebCore/rendering/RenderBlock.cpp:
(WebCore::RenderBlock::addOverflowFromChildren):
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::addOverflowFromChild):
Canonical link: https://commits.webkit.org/256953@main
More information about the webkit-changes
mailing list