Commit Graph

1523 Commits

Author SHA1 Message Date
Nicolas Silva
043a970708 Bug 1562091 - Add a reftest. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D42467

--HG--
extra : moz-landing-system : lando
2019-08-19 11:16:34 +00:00
Charlie Marlow
cb99ca7617 Bug 1572800: Part 0: Add text-decoration-skip-ink: none to currently failing test cases r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D41880

--HG--
extra : moz-landing-system : lando
2019-08-14 17:14:20 +00:00
Emilio Cobos Álvarez
eead6b45e1 Bug 1499000 - followup: Annotate the test as failing on Android as the image it uses is not available.
CLOSED TREE
MANUAL PUSH: bustage
2019-08-09 21:56:41 +02:00
Emilio Cobos Álvarez
56df9575bc Bug 1499000 - Don't do CORS checks on CSS images with the resource:// scheme. r=bzbarsky
CORS only works on http channels, so anything else that tries to do a
CORS-enabled request fails catastrophically.

resource:// images are useful for extension developers, so don't perform CORS
checks on them. We may want to also do file:// and fix bug 1565509, while at it,
if we consider it's causing developer pain.

Differential Revision: https://phabricator.services.mozilla.com/D40651

--HG--
extra : moz-landing-system : lando
2019-08-09 18:09:55 +00:00
longsonr
01547f5575 Bug 1474834 - fix transform-box for SVG shapes with fill: none r=dholbert 2019-07-24 09:13:18 +01:00
Jeff Muizelaar
00f87f386d Bug 1564655. blob: Make the recording use absolute coordinates. r=nical
Currently items are painted with a context that has a transform of
-mLayerBounds.TopLeft().  This means that if TopLeft() changes the commands
will be in the wrong place because the -TopLeft() offset is baked into the
recording.

I don't think we've ever needed to support painting without this transformed
baked in so there were some infrastructure changes that needed to be made to
make this possible. Most of the problems come from the use of
gfxContext::GetClipExtents which expose the bounds of the underlying surface.
The biggest of these was fixed by the CreateClippedDrawTarget rewrite. The rest
should be handled by ensuring that the DrawTarget has bounds that are at least
as big as the union of the individual item bounds. i.e. GetClipExtents should
never intersect with bounds of the item.

This change has a couple of parts:

1. Store mLayerBounds.TopLeft() in the recording so that it will be subtracted
during replay

2. Use mLayerBounds as the Rect of the RecordingDrawTarget

3. Don't include mLayerBounds.TopLeft() in the transform during recording.

4. Adjust the dirty rect by recordingOrigin before we use it as a clip so that
it stays in the right place.

5. In PaintContainerItem the bounds parameter of PushLayer is in device space
so we need to account for the shift in the location of device space in the
DrawTargetRecording.

Differential Revision: https://phabricator.services.mozilla.com/D37513

--HG--
extra : moz-landing-system : lando
2019-07-14 00:02:03 +00:00
Boris Chiou
1f9cb879fe Bug 1559276 - Part 1: Avoid using 3 valued syntax for position. r=emilio
Update the existing reftests to not use 3 valued syntax.

I run the script to update the syntax in
`layout/reftests/w3c-css/submitted/images3/*`,
`layout/reftests/w3c-css/submitted/masking/*`,
`layout/reftests/xul/*`, and
`layout/reftests/webm-video/*`:
```
function rename() {
    find layout/reftests/\
         -type f\
         ! -path "./obj*"\
         ! -path "./.git"\
         ! -path "./.hg"\
         \( -name "*.html" -or\
            -name "*.xul" \)\
            -exec sed -i -e "s/$1/$2/g" "{}" \;
}

rename "object-position: top 3px center" "object-position: top 3px left 50%"
rename "object-position: center right 25%" "object-position: top 50% right 25%"
```

For `layout/reftests/svg/svg-integration/clip-path/*`, I just manually
update them.

Differential Revision: https://phabricator.services.mozilla.com/D37125

--HG--
extra : moz-landing-system : lando
2019-07-10 20:25:23 +00:00
Kartikaya Gupta
19648f643e Bug 1564409 - Tweak allowed fuzz for img-width-slice-1.html. r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D37417

--HG--
extra : moz-landing-system : lando
2019-07-09 16:23:51 +00:00
Kartikaya Gupta
30a866a3ac Bug 1525314 - Disable tests that crash. r=gbrown
Depends on D36798

Differential Revision: https://phabricator.services.mozilla.com/D36799

--HG--
extra : moz-landing-system : lando
2019-07-04 21:34:59 +00:00
Kartikaya Gupta
ec2096ed3f Bug 1525314 - Update reftest annotations for WebRender on GeckoView. r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D36798

--HG--
extra : moz-landing-system : lando
2019-07-04 21:57:48 +00:00
Coroiu Cristina
3983fddf6d Backed out 6 changesets (bug 1525314) for reftest failures at reftests/svg/filters/css-filters/saturate-zero.html om a CLOSED TREE
Backed out changeset 0ed2509b7191 (bug 1525314)
Backed out changeset af72d1c4c107 (bug 1525314)
Backed out changeset ab21a3ff4ae4 (bug 1525314)
Backed out changeset 02399933ac4b (bug 1525314)
Backed out changeset 95790a07a93c (bug 1525314)
Backed out changeset 28f52fd3934e (bug 1525314)
2019-07-05 00:29:12 +03:00
Kartikaya Gupta
7cfd94cc2c Bug 1525314 - Disable tests that crash. r=gbrown
Depends on D36798

Differential Revision: https://phabricator.services.mozilla.com/D36799

--HG--
extra : moz-landing-system : lando
2019-07-03 17:09:40 +00:00
Kartikaya Gupta
c08a0b6539 Bug 1525314 - Update reftest annotations for WebRender on GeckoView. r=gbrown
Depends on D36797

Differential Revision: https://phabricator.services.mozilla.com/D36798

--HG--
extra : moz-landing-system : lando
2019-07-03 17:13:33 +00:00
Jeff Muizelaar
164066e445 Bug 1561689. svg: Add reftest for clipped items at negative coordinates. r=mstange
'<image>' elements will look at the current clip when painting. Puting one
of them at negative coordinates exposes potential bugs in the blob recoord work.

Differential Revision: https://phabricator.services.mozilla.com/D36072

--HG--
extra : moz-landing-system : lando
2019-06-26 18:51:22 +00:00
Kartikaya Gupta
97d708b2a2 Bug 1501582 - Mark geckoview failures. r=gbrown
There are a number of failures, for which I've filed separate bugs.
And then a lot of fuzziness. I manually inspected the reftest analyzer
results on try pushes to distinguish failures vs fuzziness.

Depends on D34537

Differential Revision: https://phabricator.services.mozilla.com/D34538

--HG--
extra : moz-landing-system : lando
2019-06-11 16:12:03 +00:00
violet
5dc50b71d1 Bug 1556713 - Transform dirtyRect down to <image> r=longsonr
aDirtyRect in PaintSVG() is in outer <svg> coordinate. Image painting
API needs dirty rect in image coordinate. We need to transform it.

Differential Revision: https://phabricator.services.mozilla.com/D33813

--HG--
extra : source : d055d72f5e77f8ffd30331ed093800e87da8151a
2019-06-06 14:54:40 +00:00
Daniel Varga
7a937f7212 Backed out changeset d055d72f5e77 (bug 1556713) for reftest failure at builds/worker/workspace/build/tests/reftest/tests/layout/reftests/position-relative/table-separate-1.html
--HG--
extra : rebase_source : 788c539876d4ecfbd8b83fe08f13076429849dbf
2019-06-07 12:05:00 +03:00
violet
fbc30b61cd Bug 1556713 - Transform dirtyRect down to <image> r=longsonr
aDirtyRect in PaintSVG() is in outer <svg> coordinate. Image painting
API needs dirty rect in image coordinate. We need to transform it.

Differential Revision: https://phabricator.services.mozilla.com/D33813

--HG--
extra : moz-landing-system : lando
2019-06-06 14:54:40 +00:00
Joel Maher
edd5fd6be2 Bug 1544460 - fix reftest annotations and enable for osx 10.14. r=jfkthame,kats
fix reftest annotations and enable for osx 10.14.

Differential Revision: https://phabricator.services.mozilla.com/D32463

--HG--
extra : moz-landing-system : lando
2019-05-24 18:01:02 +00:00
violet
13e131d652 Bug 1383650 - Support geometry property for SVG image element r=longsonr
The only different part is to resolve intrinsic image size. This patch
implements explicit requirements of the spec, but an edge case is tricky.
It's not clear per spec what the intrinsic image size is for an SVG
without explicit width/height, something like:

<svg>
  <image href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'><rect width='40' height='90' fill='red' /></svg>"/>
</svg>

Chrome treats the intrinsic size of the href svg as the default size of
a replaced element (300x150), our image/VectorImage.cpp doesn't resolve
size in this case.

We can handle this particular case in some seperate bug if necessary, I think.

Differential Revision: https://phabricator.services.mozilla.com/D32415

--HG--
extra : moz-landing-system : lando
2019-05-24 12:40:12 +00:00
violet
f30d87431e Bug 1383650 - Add reftest for rect, circle, ellipse and foreignObject r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D30807

--HG--
extra : moz-landing-system : lando
2019-05-16 13:21:22 +00:00
Jonathan Kew
35bcd113af Bug 1509423 - Test/manifest updates to account for minor rendering differences between HarfBuzz and Core Text. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31095

--HG--
extra : moz-landing-system : lando
2019-05-20 14:29:35 +00:00
Coroiu Cristina
b4731ed54d Backed out 12 changesets (bug 1383650) for landing in the soft-freeze period
Backed out changeset 4316d55f87be (bug 1383650)
Backed out changeset 0118148f1534 (bug 1383650)
Backed out changeset 447c9248342b (bug 1383650)
Backed out changeset 6730776560c0 (bug 1383650)
Backed out changeset a7b8e6460fb8 (bug 1383650)
Backed out changeset e864696f6cf8 (bug 1383650)
Backed out changeset 2b003d678c58 (bug 1383650)
Backed out changeset 7bc3bff991c4 (bug 1383650)
Backed out changeset f1f7b4ad9547 (bug 1383650)
Backed out changeset 18b030b31660 (bug 1383650)
Backed out changeset 70e74dd6b45d (bug 1383650)
Backed out changeset 55a283e793df (bug 1383650)
2019-05-16 04:47:58 +03:00
violet
91a6cb1a68 Bug 1383650 - Add reftest for rect, circle, ellipse and foreignObject r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D30807

--HG--
extra : moz-landing-system : lando
2019-05-16 00:55:53 +00:00
Emilio Cobos Álvarez
ab3478ba32 Bug 1551137 - <svg:mpath> should work in Shadow DOM. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D30894

--HG--
extra : moz-landing-system : lando
2019-05-13 17:28:59 +00:00
violet
47cc97916c Bug 608812 - Add blurry reftest r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D29621

--HG--
extra : moz-landing-system : lando
2019-05-02 20:51:55 +00:00
violet
8213637295 Bug 1372537 - display:none of symbol should be important r=longsonr,emilio
Differential Revision: https://phabricator.services.mozilla.com/D29099

--HG--
extra : moz-landing-system : lando
2019-04-29 00:20:30 +00:00
violet
17083b6e11 Bug 1547209 - Compute transform matrix directly in nsSVGUtils::GetTransformMatrixInUserSpace r=longsonr
Since now most CSS transform related bugs are fixed, it's clear that the
purpose of nsSVGUtils::GetTransformMatrixInUserSpace() should solely be to
replace SVGElement::PrependLocalTransformsTo(eUserSpaceToParent).

After fixing Bug 972041, the only other usecase (Bug 1247218) no longer exists.

OTOH, there is a problem when the parent has a viewbox transform, in that case,
SVGElement::PrependLocalTransformsTo() doesn't include it, but
nsLayoutUtils::GetTransformToAncestor() does.

In fact, it's much easier to compute the transform matrix directly based on
the implementation of nsDisplayTransform::GetResultingTransformMatrixInternal(),
which is also the function internally called by nsLayoutUtils::GetTransformToAncestor().

In particular, we don't need to look at 3D stuff since our matrix is inherently 2D.

Differential Revision: https://phabricator.services.mozilla.com/D28970

--HG--
extra : moz-landing-system : lando
2019-04-27 07:22:53 +00:00
violet
cd03f30677 Bug 1546636 - Should consider geometry box type r=longsonr
Geometry box was implemented long ago in Bug 1289011. But during some
refactoring, the existence of geometry box was overlooked. We add back
its support.

Differential Revision: https://phabricator.services.mozilla.com/D28815

--HG--
extra : moz-landing-system : lando
2019-04-25 19:56:15 +00:00
violet
126058f55b Bug 1533491 - nsCSSClipPathInstance::ApplyBasicShapeOrPathClip should consider transform r=longsonr
nsSVGUtils::PaintFrameWithEffects needs to pass its transform to
nsCSSClipPathInstance::ApplyBasicShapeOrPathClip so that the latter
can compute the correct box.

Differential Revision: https://phabricator.services.mozilla.com/D28655

--HG--
extra : moz-landing-system : lando
2019-04-25 00:52:25 +00:00
violet
8afef00f56 Bug 1323962 - PaintSVG for container should consider CSS transform for its children r=longsonr
Container manages SVG/CSS transform of its children, thus PaintSVG of container
should take children's CSS transform into account.

Differential Revision: https://phabricator.services.mozilla.com/D28273

--HG--
rename : layout/reftests/svg/test_bug1323962-3-ref.html => layout/reftests/svg/clipPath-css-transform-ref.html
rename : layout/reftests/svg/test_bug1323962-3.html => layout/reftests/svg/clipPath-css-transform.html
rename : layout/reftests/svg/test_bug1323962-ref.html => layout/reftests/svg/mask-css-transform-ref.html
rename : layout/reftests/svg/test_bug1323962.html => layout/reftests/svg/mask-css-transform.html
rename : layout/reftests/svg/test_bug1247218-ref.html => layout/reftests/svg/non-scaling-stroke-css-transform-ref.html
rename : layout/reftests/svg/test_bug1247218.html => layout/reftests/svg/non-scaling-stroke-css-transform.html
rename : layout/reftests/svg/test_bug1323962-2-ref.html => layout/reftests/svg/pattern-css-transform-ref.html
rename : layout/reftests/svg/test_bug1323962-2.html => layout/reftests/svg/pattern-css-transform.html
extra : moz-landing-system : lando
2019-04-23 00:03:00 +00:00
violet
09e109dd9a Bug 1323962 - Should support CSS transform for clip-path r=longsonr
<clipPath> can itself have SVG transform, thus we need to override
nsIFrame::IsSVGTransformed() method so that layout code will be aware
of the SVG transform.

The remaining is similar to <mask>

Differential Revision: https://phabricator.services.mozilla.com/D28272

--HG--
extra : moz-landing-system : lando
2019-04-22 23:59:38 +00:00
violet
f48d16aaf5 Bug 1247218 - Should consider CSS transform when using non-scaling-stroke r=longsonr
We remove initial x/y offset for nsSVGUtils::GetTransformMatrixInUserSpace
so that it can be used in not-nondisplay context. Previously it was only
used in nondisplay context, where x/y offset is always 0.

Then we use this utility to get the transform matrix to judge whether we need
special care for non-scaling-stroke. The old matrix doesn't account for CSS
transform.

Differential Revision: https://phabricator.services.mozilla.com/D28193

--HG--
extra : moz-landing-system : lando
2019-04-20 02:04:52 +00:00
violet
3d671c5897 Bug 1323962 - Should support CSS transform for pattern r=longsonr
The same as mask.

Differential Revision: https://phabricator.services.mozilla.com/D27882

--HG--
extra : moz-landing-system : lando
2019-04-18 14:35:23 +00:00
violet
5f0ba63570 Bug 1323962 - Should support CSS transform for mask r=longsonr
SVGElement::PrependLocalTransformsTo doesn't take CSS transform into
account, we should use nsIFrame::GetTransformMatrix instead.

Differential Revision: https://phabricator.services.mozilla.com/D27659

--HG--
extra : moz-landing-system : lando
2019-04-18 17:19:42 +00:00
violet
995f337626 Bug 1524901 - Should not set SVG viewport to intrinsic size when painting background image r=longsonr
When an SVG is used as a CSS background-image, we previously used the same behavior as
a normal image. It will stretch if the background-size is incompatible with the intrinsic
size of the SVG. This is a webcompat issue.

Now we use the painting destination rect size instead to avoid stretching.

Differential Revision: https://phabricator.services.mozilla.com/D26935

--HG--
extra : moz-landing-system : lando
2019-04-11 01:05:02 +00:00
Jonathan Kew
f41c23be63 Bug 1541500 - Apply Android ::selection styling to SVG as well as HTML content. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D25980

--HG--
extra : moz-landing-system : lando
2019-04-10 10:44:30 +00:00
Jeff Muizelaar
43dc286d72 Bug 1541920. Handle blend mode activeness properly. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D26364

--HG--
extra : moz-landing-system : lando
2019-04-08 22:37:26 +00:00
violet
14a3ded377 Bug 1523343 - Should not round translation for SVG frame r=longsonr
When computing transform matrix, translation in SVG should not be rounded.
Checking !IsSVGTransformed() isn't the correct way, since an SVG frame may
have CSS transform applied.

Differential Revision: https://phabricator.services.mozilla.com/D26271

--HG--
extra : moz-landing-system : lando
2019-04-05 09:03:52 +00:00
Jonathan Kew
224d07137d Bug 1479760 - Use the ::selection colors to paint inactive as well as active selections. r=emilio
This will enable the devtools font highlighting issue in bug 1479760 to be fixed
using ::selection, and matches webkit/blink behavior.

When we implement ::inactive-selection (bug 1475773) it will supersede this.

Differential Revision: https://phabricator.services.mozilla.com/D25396

--HG--
extra : moz-landing-system : lando
2019-04-04 09:17:25 +00:00
Lee Salzman
a00853db4b Bug 1539026 - Skia m74 fuzzing. r=rhunt 2019-03-26 14:52:45 -04:00
Cosmin Sabou
326beac646 Bug 1531816 - Disable svg/as-image/img-blobURI-2.html on webrender due to frequent failures.
Reviewers: kats

Tags: #secure-revision

Bug #: 1531816

Differential Revision: https://phabricator.services.mozilla.com/D24671

--HG--
extra : rebase_source : e1ebfa15431563b74ddc0c70df9fdd8f92c5f749
2019-03-25 10:49:18 +02:00
Kartikaya Gupta
522737691b Bug 1536807 - Expand fuzziness annotation to include macOS. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D24183

--HG--
extra : moz-landing-system : lando
2019-03-21 20:41:14 +00:00
Glenn Watson
9d856b1091 Bug 1535976 - Add a fast path for common rounded rect clips to WR. r=kvark
Most rounded rect clips in real content are (a) axis aligned and
(b) have uniform radii.

When these conditions are met, we can run a fast path for clip
mask generation that uses significantly fewer ALU shader ops.

This is not typically a bottleneck on desktop GPUs, but can have
a large performance impact on mobile GPUs (and perhaps low end
integrated GPUs).

The Mali shader analyzer reports the slow path for the rounded
rect clip shader to be 94 cycles per fragment, while the fast
path is 10 cycles.

Differential Revision: https://phabricator.services.mozilla.com/D23817

--HG--
extra : moz-landing-system : lando
2019-03-19 19:48:13 +00:00
Bogdan Tara
84581c394f Backed out changeset 70440f88051f (bug 1535976) for /reftests/transform-3d/mask-layer* failures CLOSED TREE 2019-03-19 06:02:09 +02:00
Glenn Watson
7e08c517ab Bug 1535976 - Add a fast path for common rounded rect clips to WR. r=kvark
Most rounded rect clips in real content are (a) axis aligned and
(b) have uniform radii.

When these conditions are met, we can run a fast path for clip
mask generation that uses significantly fewer ALU shader ops.

This is not typically a bottleneck on desktop GPUs, but can have
a large performance impact on mobile GPUs (and perhaps low end
integrated GPUs).

The Mali shader analyzer reports the slow path for the rounded
rect clip shader to be 94 cycles per fragment, while the fast
path is 10 cycles.

Differential Revision: https://phabricator.services.mozilla.com/D23817

--HG--
extra : moz-landing-system : lando
2019-03-18 16:15:45 +00:00
longsonr
fd7d94f776 Bug 1532156 - correct marker-start for closed paths so it is the average of the start and end angles i.e. the same as marker-end r=dholbert 2019-03-16 17:00:23 +00:00
Emilio Cobos Álvarez
87b3e6bbd3 Bug 1450652 - Remove platform support for display="" in XBL bindings. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D12586

--HG--
extra : moz-landing-system : lando
2019-03-06 00:47:13 +00:00
Nicolas Silva
ea955a3c08 Bug 1523495 - Reftests adjustments. r=gw,kats,nical
Differential Revision (1): https://phabricator.services.mozilla.com/D18938
Differential Revision (2): https://phabricator.services.mozilla.com/D18854

--HG--
extra : histedit_source : 6d23aa08b25a7d41bf036c0cfccd2acaf00b24d7
2019-02-07 11:32:53 +01:00
Kartikaya Gupta
ff2548e7d2 Bug 1520793 - Allow a bit of fuzz in clip-path-circle-021. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D18486

--HG--
extra : moz-landing-system : lando
2019-02-02 15:56:45 +00:00