haikuwebkit/LayoutTests/compositing/masks
Fujii Hironori 2b24410d1b [TextureMapper] REGRESION(r269570): mask layer doesn't clip descendent layers
https://bugs.webkit.org/show_bug.cgi?id=219136
<rdar://problem/71742605>

Reviewed by Carlos Garcia Campos.

Source/WebCore:

computeOverlapRegions shouldn't include the descendent layer
region for layers with a mask layer. Add a new mode Mask to
ComputeOverlapRegionMode which is like Union mode but doesn't
include descendent layers.

Test: compositing/masks/clip-path-composited-descendent-2.html

* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::computeOverlapRegions): Skip
children for the Mask mode.
(WebCore::TextureMapperLayer::paintUsingOverlapRegions): Use
ComputeOverlapRegionMode::Mask for a layer with mask layer.
* platform/graphics/texmap/TextureMapperLayer.h (ComputeOverlapRegionMode): Added Mask.

LayoutTests:

* compositing/masks/clip-path-composited-descendent-2-expected.html: Added.
* compositing/masks/clip-path-composited-descendent-2.html: Added.

Canonical link: https://commits.webkit.org/232361@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@270698 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2020-12-11 20:06:50 +00:00
..
become-tiled-mask-expected.html
become-tiled-mask.html
cease-tiled-mask-expected.html
cease-tiled-mask.html
clip-path-composited-descendent-2-expected.html [TextureMapper] REGRESION(r269570): mask layer doesn't clip descendent layers 2020-12-11 20:06:50 +00:00
clip-path-composited-descendent-2.html [TextureMapper] REGRESION(r269570): mask layer doesn't clip descendent layers 2020-12-11 20:06:50 +00:00
clip-path-composited-descendent-expected.txt
clip-path-composited-descendent.html
compositing-clip-path-and-mask-expected.html
compositing-clip-path-and-mask.html
compositing-clip-path-change-no-repaint-expected.txt
compositing-clip-path-change-no-repaint.html
compositing-clip-path-expected.html
compositing-clip-path-mask-change-expected.html
compositing-clip-path-mask-change.html
compositing-clip-path-on-subpixel-position-expected.html
compositing-clip-path-on-subpixel-position.html
compositing-clip-path-origin-expected.html
compositing-clip-path-origin.html
compositing-clip-path.html
direct-image-mask.html
layer-mask-placement-expected.png
layer-mask-placement-expected.txt
layer-mask-placement.html
mask-layer-size-expected.txt
mask-layer-size.html
mask-of-clipped-layer-expected.png
mask-of-clipped-layer-expected.txt
mask-of-clipped-layer.html
mask-with-preserve-3d-expected.html
mask-with-preserve-3d.html
masked-ancestor.html
multiple-masks.html
reference-clip-path-on-composited-expected.html
reference-clip-path-on-composited.html
simple-composited-mask.html
solid-color-masked-expected.html
solid-color-masked.html
tiled-mask-expected.html
tiled-mask.html
toggle-mask-expected.txt
toggle-mask.html