gecko-dev/layout/reftests/css-blending
Markus Stange 0636b4dae1 Bug 1238564 - Set the innermost possible scroll clip on opacity items during creation. r=mattwoodrow
Always use an ancestor scroll clip of all direct children, or the original
scroll clip if the children don't share the same scroll clip tree.
Unfortunately this requires another pass over the stacking context display list.

Also, fix clips, scroll clips and creation order of blend items:
If a clipped mix-blend-mode item contains absolute / fixed positioned items,
those items should not be clipped, same for blend container items.
When a transform item contains blend modes, create the blend container inside
the transform.

Don't do tree comparisons on scroll clips from different scroll clip trees.
If the inner scroll clip is nullptr, because it was cleared, it will look like
it's the ancestor of the outer non-nullptr scroll clip.

These changes don't look very related, but it was very hard to get tests passing
with only some of the changes and not the others, and after having spent two
weeks on this patch I'm not thrilled about going back and checking exactly which
change was necessary to fix which test failure.

MozReview-Commit-ID: IKGciUBrdNa

--HG--
extra : rebase_source : e570f16ecedd80cba16051f0e1ac66764bc95815
extra : histedit_source : fcfbcbc254aaf93594d9d80c117d6ec945805993
2016-03-04 15:05:58 -05:00
..
as-image Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blend-mode-body-image-ref.html Bug 1038521 - background-blend-mode should not blend with white backdrop of the root element. r=roc 2014-07-16 21:04:00 +02:00
background-blend-mode-body-image.html Bug 1038521 - background-blend-mode should not blend with white backdrop of the root element. r=roc 2014-07-16 21:04:00 +02:00
background-blend-mode-body-transparent-image-ref.html Bug 1038521 - background-blend-mode should not blend with white backdrop of the root element. r=roc 2014-07-16 21:04:00 +02:00
background-blend-mode-body-transparent-image.html Bug 1038521 - background-blend-mode should not blend with white backdrop of the root element. r=roc 2014-07-16 21:04:00 +02:00
background-blending-alpha-ref.html
background-blending-alpha.html
background-blending-background-attachement-fixed-ref.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-attachement-fixed-scroll-ref.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-attachement-fixed-scroll.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-attachement-fixed.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-clip-content-box-ref.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-clip-content-box.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-clip-padding-box-ref.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-clip-padding-box.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-origin-border-box.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-origin-content-box.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-origin-ref.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-position-percentage-ref.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-position-percentage.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-repeat-no-repeat-ref.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-repeat-no-repeat.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-size-contain.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-size-cover.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-size-percentage.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-size-pixels.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-background-size-ref.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-color-burn-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-color-burn.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-color-dodge-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-color-dodge.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-color-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-color.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-darken-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-darken.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-difference-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-difference.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-exclusion-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-exclusion.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-gradient-color-ref.html
background-blending-gradient-color.html
background-blending-gradient-gradient-ref.html
background-blending-gradient-gradient.html
background-blending-gradient-image-ref.html
background-blending-gradient-image.html
background-blending-hard-light-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-hard-light.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-hue-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-hue.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-image-color-959674-ref.html Bug 959674 - Add reftests. r=roc 2014-01-14 23:02:56 +02:00
background-blending-image-color-959674.html Bug 959674 - Add reftests. r=roc 2014-01-14 23:02:56 +02:00
background-blending-image-color-gif-ref.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-image-color-gif.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-image-color-jpg.html
background-blending-image-color-png.html
background-blending-image-color-ref.html
background-blending-image-color-svg-as-data-uri.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-image-color-svg.html
background-blending-image-color-transform3d.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-image-gradient.html
background-blending-image-image-ref.html
background-blending-image-image.html
background-blending-isolation-parent-child-color.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-isolation-parent-child-image.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-isolation-parent-child-ref.html Bug 970348 - Add background-blend-mode reftests corresponding to the csswg test plan. r=roc, r=heycam 2014-02-25 08:40:54 -05:00
background-blending-isolation-ref.html
background-blending-isolation.html
background-blending-lighten-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-lighten.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-list-repeat-ref.html
background-blending-list-repeat.html
background-blending-luminosity-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-luminosity.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-moz-element-ref.html Bug 1219411: Correctly use RGBA instead of RGB for the background color in background-blending-moz-element reftest. r=mstange 2015-10-29 00:04:05 +01:00
background-blending-moz-element.html Bug 1219411: Correctly use RGBA instead of RGB for the background color in background-blending-moz-element reftest. r=mstange 2015-10-29 00:04:05 +01:00
background-blending-multiple-images-ref.html
background-blending-multiple-images.html
background-blending-multiply-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-multiply.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-normal-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-normal.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-overlay-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-overlay.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-saturation-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-saturation.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-screen-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-screen.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-soft-light-ref.svg Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
background-blending-soft-light.html Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
blend-canvas-ref.html
blend-canvas.html
blend-constant-background-color-ref.html
blend-constant-background-color.html
blend-difference-stacking-ref.html
blend-difference-stacking.html
blend-gradient-background-color-ref.html
blend-gradient-background-color.html
blend-image-ref.html
blend-image.html
blend-isolation-ref.html Bug 1077872 - Implement rendering of isolation CSS property. r=roc 2014-10-16 14:52:00 +02:00
blend-isolation.html Bug 1077872 - Implement rendering of isolation CSS property. r=roc 2014-10-16 14:52:00 +02:00
blend-modes.css Bug 841601 - Add a second batch of tests for background-blending which tests each blend mode. r=roc 2013-11-08 10:09:08 -05:00
clipped-mixblendmode-containing-unclipped-stuff-ref.html Bug 1238564 - Set the innermost possible scroll clip on opacity items during creation. r=mattwoodrow 2016-03-04 15:05:58 -05:00
clipped-mixblendmode-containing-unclipped-stuff.html Bug 1238564 - Set the innermost possible scroll clip on opacity items during creation. r=mattwoodrow 2016-03-04 15:05:58 -05:00
clipped-opacity-containing-unclipped-mixblendmode-ref.html Bug 1238564 - Set the innermost possible scroll clip on opacity items during creation. r=mattwoodrow 2016-03-04 15:05:58 -05:00
clipped-opacity-containing-unclipped-mixblendmode.html Bug 1238564 - Set the innermost possible scroll clip on opacity items during creation. r=mattwoodrow 2016-03-04 15:05:58 -05:00
mix-blend-mode-952051-ref.html Bug 952051 - Add reftests. r=roc 2014-02-27 11:56:48 -05:00
mix-blend-mode-952051.html Bug 952051 - Add reftests. r=roc 2014-02-27 11:56:48 -05:00
mix-blend-mode-and-filter-ref.html Bug 1083241 - Call gfx->Paint in PaintFrameWithEffects when there is blending. r=roc 2014-10-17 11:37:54 -07:00
mix-blend-mode-and-filter-ref.svg Bug 1083241 - Call gfx->Paint in PaintFrameWithEffects when there is blending. r=roc 2014-10-17 11:37:54 -07:00
mix-blend-mode-and-filter.html Bug 1083241 - Call gfx->Paint in PaintFrameWithEffects when there is blending. r=roc 2014-10-17 11:37:54 -07:00
mix-blend-mode-and-filter.svg Bug 1083241 - Call gfx->Paint in PaintFrameWithEffects when there is blending. r=roc 2014-10-17 11:37:54 -07:00
mix-blend-mode-child-of-blended-has-opacity-ref.html Bug 952051 - Add reftests. r=roc 2014-02-27 11:56:48 -05:00
mix-blend-mode-child-of-blended-has-opacity.html Bug 952051 - Add reftests. r=roc 2014-02-27 11:56:48 -05:00
mix-blend-mode-culling-1207041-ref.html Treat mix-blend-mode layers as transparent for occlusion culling. (bug 1207041, r=mstange) 2015-09-30 00:02:00 -07:00
mix-blend-mode-culling-1207041.html Treat mix-blend-mode layers as transparent for occlusion culling. (bug 1207041, r=mstange) 2015-09-30 00:02:00 -07:00
mix-blend-mode-dest-alpha-1135271-ref.html Disable screen and multiply mix-blend-mode support in the D3D11 and OGL compositors. (bug 1135271, r=mattwoodrow) 2015-10-07 16:38:19 -07:00
mix-blend-mode-dest-alpha-1135271.html Disable screen and multiply mix-blend-mode support in the D3D11 and OGL compositors. (bug 1135271, r=mattwoodrow) 2015-10-07 16:38:19 -07:00
mix-blend-mode-nested-976533-ref.html Bug 976533 - Add a reftest. r=roc 2014-02-28 09:11:37 -05:00
mix-blend-mode-nested-976533.html Bug 976533 - Add a reftest. r=roc 2014-02-28 09:11:37 -05:00
mix-blend-mode-soft-light-ref.html Add full mix-blend mode support to the OpenGL compositor. (bug 1235995 part 1, r=mstange) 2016-01-19 13:24:19 +07:00
mix-blend-mode-soft-light.html Add full mix-blend mode support to the OpenGL compositor. (bug 1235995 part 1, r=mstange) 2016-01-19 13:24:19 +07:00
reftest.list Bug 1238564 - Set the innermost possible scroll clip on opacity items during creation. r=mattwoodrow 2016-03-04 15:05:58 -05:00