Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3fc32a416db0c58ed77f9f3b7414e00c7eba9ebb
      
https://github.com/WebKit/WebKit/commit/3fc32a416db0c58ed77f9f3b7414e00c7eba9ebb
  Author: Rob Buis <rb...@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


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to