gtk/testsuite/gsk/compare
Benjamin Otte 95865cb1bf gsk: Fix clipping error when drawing shadows
When shadows were offset - in particular when offset so the original
source was out of bounds of the result - the drawing code would create a
pattern for it that didn't include enough of it to compose a shadow.

Fix that by not creating those patterns anymore, but instead drawing the
source (potentially multiple times) at the required offsets.

While that does more drawing, it simplifies the shadow node draw code,
and that's the primary goal of the Cairo rendering.

Test included.
2023-09-18 07:53:03 +02:00
..
big-checkerboard-scaled-down2.node gsk: Tweak one test to pass 2023-03-22 00:15:04 -04:00
big-checkerboard-scaled-down2.png gsk: Tweak one test to pass 2023-03-22 00:15:04 -04:00
big-checkerboard-scaled-down-nearest.node testsuite: Add some texture tests 2023-03-19 10:05:52 -04:00
big-checkerboard-scaled-down-nearest.png testsuite: Add some texture tests 2023-03-19 10:05:52 -04:00
big-checkerboard-scaled-down.node testsuite: Add some texture tests 2023-03-19 10:05:52 -04:00
big-checkerboard-scaled-down.png testsuite: Add some texture tests 2023-03-19 10:05:52 -04:00
big-checkerboard.node testsuite: Add some texture tests 2023-03-19 10:05:52 -04:00
big-checkerboard.png testsuite: Add some texture tests 2023-03-19 10:05:52 -04:00
big-glyph-wrapped.png Add more gsk tests 2023-05-01 13:35:35 -04:00
big-glyph.node gsk: Test big glyphs 2019-06-03 02:08:36 +00:00
big-glyph.png gsk: Test big glyphs 2019-06-03 02:08:36 +00:00
blend-difference.node testsuite: Add blend-difference test case 2019-05-06 17:34:48 +02:00
blend-difference.png testsuite: Add blend-difference test case 2019-05-06 17:34:48 +02:00
blend-in-rotate.node Add a test for rotated blend nodes 2023-05-01 13:45:20 -04:00
blend-in-rotate.png Add a test for rotated blend nodes 2023-05-01 13:45:20 -04:00
blend-invisible-child.node testsuite: Add a testcase for blend nodes with invisible children 2020-01-07 17:27:19 +01:00
blend-invisible-child.png testsuite: Add a testcase for blend nodes with invisible children 2020-01-07 17:27:19 +01:00
blend-modes.node Add another test 2023-05-01 13:43:33 -04:00
blend-modes.png Add another test 2023-05-01 13:43:33 -04:00
blend-normal.node testsuite: Add a blend node test case 2019-05-06 17:34:48 +02:00
blend-normal.png testsuite: Add a blend node test case 2019-05-06 17:34:48 +02:00
border-bottom-right.node ngl Fix bottom-right border render failure 2021-09-16 23:59:37 +02:00
border-bottom-right.png ngl Fix bottom-right border render failure 2021-09-16 23:59:37 +02:00
border-one-rounded.node testsuite: Fix gsk test 2023-05-01 13:43:33 -04:00
border-one-rounded.png testsuite: Fix gsk test 2023-05-01 13:43:33 -04:00
borders-rotated.node testsuite: Add a test case for rotated border node 2020-01-07 17:27:17 +01:00
borders-rotated.png testsuite: Add a test case for rotated border node 2020-01-07 17:27:17 +01:00
borders-scaled.node Add some more gsk tests 2021-04-01 20:06:40 -04:00
borders-scaled.png Add some more gsk tests 2021-04-01 20:06:40 -04:00
clip-coordinates-2d.node Update gsk tests 2020-09-04 13:19:01 -04:00
clip-coordinates-2d.png Update gsk tests 2020-09-04 13:19:01 -04:00
clip-coordinates-3d.node
clip-coordinates-3d.png
clip-in-rounded-clip1.node gl renderer: Improve clipping code 2020-05-24 15:59:05 +02:00
clip-in-rounded-clip1.png gl renderer: Improve clipping code 2020-05-24 15:59:05 +02:00
clip-in-rounded-clip2.node gl renderer: Improve clipping code 2020-05-24 15:59:05 +02:00
clip-in-rounded-clip2.png gl renderer: Improve clipping code 2020-05-24 15:59:05 +02:00
clip-in-rounded-clip3.node gl renderer: Improve clipping code 2020-05-24 15:59:05 +02:00
clip-in-rounded-clip3.png gl renderer: Improve clipping code 2020-05-24 15:59:05 +02:00
clip-nested1.node testsuite: Fix test case indentation 2020-07-17 05:49:11 +02:00
clip-nested1.png gl renderer: Fix rounded rect intersection code 2019-06-02 08:31:44 +02:00
clip-translate-offscreen.node testsuite: Add clip-translate-offscreen test 2023-05-16 18:53:27 +02:00
clip-translate-offscreen.png testsuite: Add clip-translate-offscreen test 2023-05-16 18:53:27 +02:00
clipped_rounded_clip.node
clipped_rounded_clip.png
clipped-repeat.node testsuite: Make clipped-repeat test work universally 2023-06-05 05:33:07 +02:00
clipped-repeat.png testsuite: Make clipped-repeat test work universally 2023-06-05 05:33:07 +02:00
color-blur0.node testsuite: Add blur node testcase 2019-05-07 17:21:16 +02:00
color-blur0.png testsuite: Add blur node testcase 2019-05-07 17:21:16 +02:00
color-matrix-identity.node testsuite: Adapt color-matrix testcase 2023-06-05 05:33:07 +02:00
color-matrix-identity.png testsuite: Adapt color-matrix testcase 2023-06-05 05:33:07 +02:00
color-matrix-merge.node testsuite: Add color-matrix-merge testcase 2023-08-25 15:54:05 +03:00
color-matrix-merge.png testsuite: Add color-matrix-merge testcase 2023-08-25 15:54:05 +03:00
color-matrix-parsing.node nodeparser: Fix parsing of color-matrix node 2022-05-18 21:16:33 +02:00
color-matrix-parsing.png nodeparser: Fix parsing of color-matrix node 2022-05-18 21:16:33 +02:00
cross-fade-in-opacity.node testsuite: Add cross-fade-in-opacity test 2019-05-05 07:18:39 +02:00
cross-fade-in-opacity.png testsuite: Add cross-fade-in-opacity test 2019-05-05 07:18:39 +02:00
cross-fade-in-rotate.node Add a test for rotated cross-fade nodes 2023-05-01 13:45:13 -04:00
cross-fade-in-rotate.png Add a test for rotated cross-fade nodes 2023-05-01 13:45:13 -04:00
crossfade-clip-both-children.node testsuite: Add crossfade-clip-both-children test 2023-05-16 18:53:27 +02:00
crossfade-clip-both-children.png testsuite: Add crossfade-clip-both-children test 2023-05-16 18:53:27 +02:00
css-background.node Add some more gsk tests 2021-04-01 20:06:40 -04:00
css-background.png Add some more gsk tests 2021-04-01 20:06:40 -04:00
empty-blend.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-blend.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-blur.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-blur.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-border.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-border.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-cairo.node rendernodeparser: Parse Cairo nodes 2019-05-26 00:50:13 +02:00
empty-cairo.png rendernodeparser: Handle empty Cairo nodes 2019-05-30 15:32:36 +02:00
empty-clip.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-clip.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-color-matrix.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-color-matrix.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-color.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-color.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-container.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-container.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-cross-fade.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-cross-fade.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-debug.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-debug.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-inset-shadow.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-inset-shadow.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-linear-gradient.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-linear-gradient.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-mask.node Add more mask node tests 2023-02-14 19:07:01 -05:00
empty-mask.png Add more mask node tests 2023-02-14 19:07:01 -05:00
empty-opacity.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-opacity.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-outset-shadow.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-outset-shadow.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-repeat.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-repeat.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-rounded-clip.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-rounded-clip.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-shadow.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-shadow.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-text.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-text.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-texture.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-texture.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-transform.node testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
empty-transform.png testsuite: Add render tests for all the empty nodes 2019-05-21 06:43:59 +02:00
fill.node Add compare tests for fill and stroke nodes 2023-08-07 13:02:57 -04:00
fill.png Add compare tests for fill and stroke nodes 2023-08-07 13:02:57 -04:00
huge-glyph.node gsk: Test huge glyphs 2019-06-03 02:08:36 +00:00
huge-glyph.png gsk: Test huge glyphs 2019-06-03 02:08:36 +00:00
huge-height.node renderers: Handle large viewports 2022-02-26 20:35:44 +01:00
huge-height.png renderers: Handle large viewports 2022-02-26 20:35:44 +01:00
huge-width.node renderers: Handle large viewports 2022-02-26 20:35:44 +01:00
huge-width.png renderers: Handle large viewports 2022-02-26 20:35:44 +01:00
inset-shadow-multiple.node testsuite: Add an inset shadow rendering test case 2019-12-03 08:40:35 +01:00
inset-shadow-multiple.png testsuite: Add an inset shadow rendering test case 2019-12-03 08:40:35 +01:00
invalid-transform.node rendernode: Bail if matrix is invalid 2020-12-24 06:38:45 +01:00
invalid-transform.png rendernode: Bail if matrix is invalid 2020-12-24 06:38:45 +01:00
issue-3615.node gl renderer: Fix viewport computation when rendering offscreen 2021-01-29 10:37:48 +01:00
issue-3615.png gl renderer: Fix viewport computation when rendering offscreen 2021-01-29 10:37:48 +01:00
linear-gradient-3d.node gl: Linear gradients don't support 3d transforms 2021-12-12 12:57:44 +01:00
linear-gradient-3d.png gl: Linear gradients don't support 3d transforms 2021-12-12 12:57:44 +01:00
mask-clipped-inverted-alpha.node testsuite: Add a test for mask out of bounds effects 2023-07-03 22:02:44 +02:00
mask-clipped-inverted-alpha.png testsuite: Add a test for mask out of bounds effects 2023-07-03 22:02:44 +02:00
mask-modes-with-alpha.node gsk: Fix luminance in Cairo and GL renderer 2023-07-03 22:02:44 +02:00
mask-modes-with-alpha.png gsk: Fix luminance in Cairo and GL renderer 2023-07-03 22:02:44 +02:00
mask-modes.node gsk: Add a render test for mask modes 2023-02-14 21:47:54 -05:00
mask-modes.png gsk: Fix luminance in Cairo and GL renderer 2023-07-03 22:02:44 +02:00
mask.node Add a test for mask nodes 2023-02-12 08:35:25 -05:00
mask.png Add a test for mask nodes 2023-02-12 08:35:25 -05:00
nested-rounded-clips.node gl renderer: Fix nested rounded clip rendering 2020-05-13 08:07:55 +02:00
nested-rounded-clips.png gl renderer: Fix nested rounded clip rendering 2020-05-13 08:07:55 +02:00
opacity_clip.node
opacity_clip.png
opacity-overdraw.node testuite: Add opacity-overdraw test 2021-09-16 23:59:37 +02:00
opacity-overdraw.png testuite: Add opacity-overdraw test 2021-09-16 23:59:37 +02:00
opacity-overlapping-children.node gl renderer: Fix opacity nodes with overlapping child nodes 2019-07-14 10:08:04 +02:00
opacity-overlapping-children.png gl renderer: Fix opacity nodes with overlapping child nodes 2019-07-14 10:08:04 +02:00
outset_shadow_offset_both.node
outset_shadow_offset_both.png
outset_shadow_offset_x.node
outset_shadow_offset_x.png
outset_shadow_offset_y.node
outset_shadow_offset_y.png
outset_shadow_rounded_top.node testsuite: Black out parts of reftest 2019-05-05 07:18:39 +02:00
outset_shadow_rounded_top.png testsuite: Black out parts of reftest 2019-05-05 07:18:39 +02:00
outset_shadow_simple.node
outset_shadow_simple.png
repeat-empty-child-bounds.node vulkan: Handle empty child bounds in repeat node 2023-06-04 19:42:01 +02:00
repeat-empty-child-bounds.png vulkan: Handle empty child bounds in repeat node 2023-06-04 19:42:01 +02:00
repeat-negative-coords.node testsuite: Add another repeat node test case 2019-11-26 09:09:25 +01:00
repeat-negative-coords.png testsuite: Add another repeat node test case 2019-11-26 09:09:25 +01:00
repeat-no-repeat.node testsuite: Add a testcase for repeat nodes that don't repeat 2019-11-19 10:45:35 +01:00
repeat-no-repeat.png testsuite: Add a testcase for repeat nodes that don't repeat 2019-11-19 10:45:35 +01:00
repeat-texture.node testsuite: Add another repeat node test case 2019-08-11 09:05:31 +02:00
repeat-texture.png testsuite: Add another repeat node test case 2019-08-11 09:05:31 +02:00
repeat.node testsuite: Add a repeat node test case 2019-08-11 09:05:31 +02:00
repeat.png testsuite: Add a repeat node test case 2019-08-11 09:05:31 +02:00
repeating-gradient-scaled.node testsuite: Add a test for repeating gradients 2023-06-08 22:16:18 +02:00
repeating-gradient-scaled.png testsuite: Add a test for repeating gradients 2023-06-08 22:16:18 +02:00
repeating-linear-gradient-edge-colors.node rendernode: Fix Cairo rendering of repeating gradients 2023-09-07 16:19:20 +02:00
repeating-linear-gradient-edge-colors.png rendernode: Fix Cairo rendering of repeating gradients 2023-09-07 16:19:20 +02:00
repeating-radial-gradient-edge-colors.node rendernode: Fix Cairo rendering of repeating gradients 2023-09-07 16:19:20 +02:00
repeating-radial-gradient-edge-colors.png rendernode: Fix Cairo rendering of repeating gradients 2023-09-07 16:19:20 +02:00
rounded-clip-in-clip-3d.node gl: Fixed clipped offscreen rendering 2021-02-09 22:43:15 -05:00
rounded-clip-in-clip-3d.png gl: Fixed clipped offscreen rendering 2021-02-09 22:43:15 -05:00
scale-textures-negative-ngl.node testsuite: Avoid negative scales with gl renderer 2021-07-16 07:11:20 -04:00
scale-textures-negative-ngl.png testsuite: Avoid negative scales with gl renderer 2021-07-16 07:11:20 -04:00
scale-up-down.node gl renderer: Fix scale computation 2019-06-02 10:25:39 +02:00
scale-up-down.png gl renderer: Fix scale computation 2019-06-02 10:25:39 +02:00
scaled-cairo.node rendernodeparser: Parse cairo script 2019-05-30 15:32:36 +02:00
scaled-cairo.png rendernodeparser: Parse cairo script 2019-05-30 15:32:36 +02:00
scaled-texture.node testsuite: Fix broken test 2023-03-29 03:53:52 +02:00
scaled-texture.png testsuite: Fix broken test 2023-03-29 03:53:52 +02:00
shadow-behind.node glrenderer: Shadows without offset do exist 2023-09-15 03:46:27 +02:00
shadow-behind.png glrenderer: Shadows without offset do exist 2023-09-15 03:46:27 +02:00
shadow-clip-contents.node gsk: Fix clipping error when drawing shadows 2023-09-18 07:53:03 +02:00
shadow-clip-contents.png gsk: Fix clipping error when drawing shadows 2023-09-18 07:53:03 +02:00
shadow-in-opacity.node testsuite: Add another gl renderer test 2019-05-05 07:18:39 +02:00
shadow-in-opacity.png testsuite: Add another gl renderer test 2019-05-05 07:18:39 +02:00
shadow-opacity.node rendernode: Shadow nodes need offscreen for opacity 2023-09-15 03:46:27 +02:00
shadow-opacity.png rendernode: Shadow nodes need offscreen for opacity 2023-09-15 03:46:27 +02:00
shrink-rounded-border.node gl: Change rounded_rect_shrink() 2023-09-15 16:34:00 +02:00
shrink-rounded-border.png gl: Change rounded_rect_shrink() 2023-09-15 16:34:00 +02:00
stroke.node Add compare tests for fill and stroke nodes 2023-08-07 13:02:57 -04:00
stroke.png Add compare tests for fill and stroke nodes 2023-08-07 13:02:57 -04:00
texture-scale-magnify-10000x.node testsuite: Add a test for large scale nodes 2023-03-03 11:33:57 -06:00
texture-scale-magnify-10000x.png testsuite: Add a test for large scale nodes 2023-03-03 11:33:57 -06:00
texture-scale-magnify-rotate.node tests: Add more tests for texture scale nodes 2023-03-14 01:14:57 -04:00
texture-scale-magnify-rotate.png tests: Add more tests for texture scale nodes 2023-03-14 01:14:57 -04:00
texture-scale-stripes.node testsuite/gsk: add explicit dimensions to <svg> elements 2023-08-28 17:14:18 -04:00
texture-scale-stripes.png testsuite: Add a test for stripes 2023-03-04 02:50:38 +01:00
texture-url.node testsuite/gsk: add explicit dimensions to <svg> elements 2023-08-28 17:14:18 -04:00
texture-url.png rendernodeparser: Parse images differently 2019-05-12 17:27:01 +02:00
transform-in-transform-in-transform.node testsuite: Add test cases for last commit 2020-01-24 06:19:16 +01:00
transform-in-transform-in-transform.png testsuite: Add test cases for last commit 2020-01-24 06:19:16 +01:00
transform-in-transform.node testsuite: Add test cases for last commit 2020-01-24 06:19:16 +01:00
transform-in-transform.png testsuite: Add test cases for last commit 2020-01-24 06:19:16 +01:00
unaligned-offscreen.node testsuite: Add unaligned-offscreen test 2022-04-04 23:48:58 +02:00
unaligned-offscreen.png testsuite: Add unaligned-offscreen test 2022-04-04 23:48:58 +02:00
upside-down-label-3d.node gsk: Avoid a crash with negative scales 2022-11-20 12:13:02 -05:00
upside-down-label-3d.png gsk: Avoid a crash with negative scales 2022-11-20 12:13:02 -05:00
z-transform-clipping-bounds-3d.node testsuite: Add testcase for z clipping 2023-05-16 18:53:27 +02:00
z-transform-clipping-bounds-3d.png testsuite: Add testcase for z clipping 2023-05-16 18:53:27 +02:00