Граф коммитов

3651 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 8c06775ab0 Bug 1550554 - Share computed and specified value representation of -moz-context-properties. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D30545
2019-05-16 16:24:20 +02: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 504ea1b5aa Bug 1383650 - Use CSS to layout foreignObject r=longsonr
Should also update layout code for foreignObject to use CSS geometry property.

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

--HG--
extra : moz-landing-system : lando
2019-05-16 00:55:25 +00:00
violet 4e7e1be890 Bug 1383650 - Invalidate path cache when geometry changed via CSS r=longsonr
We cached the path of an element. Previously we only need to invalidate
the cached path if an geometry attribute is changed. Now we also need
to invalidate if the corresponding CSS is changed.

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

--HG--
extra : moz-landing-system : lando
2019-05-16 00:50:15 +00:00
Nicolas Silva 92e099dc31 Bug 1536021 - Gecko side changes. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D30618

--HG--
extra : source : d9c8971de6ad11a2f5c4331775c2d17c98a12b7e
extra : intermediate-source : b0fc3130f34b72fe01230ae0b231131111a9a9f1
2019-05-10 22:13:31 +02:00
Noemi Erli 34f9686f88 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-05-09 18:37:16 +03:00
Emilio Cobos Álvarez 38065025d9 Bug 1548691 - Use the owned slice type for basic shape polygon coordinates. r=TYLin,heycam
This enables destructors for tagged unions in cbindgen, implemented in:

 * https://github.com/eqrion/cbindgen/pull/333

Which allow us to properly generate a destructor for the cbindgen-generated
StyleBasicShape (which now contains an OwnedSlice).

For now, we still use the glue code to go from Box<BasicShape> to
UniquePtr<BasicShape>. But that will change in the future when we generate even
more stuff and remove all the glue.

I could add support for copy-constructor generation to cbindgen for tagged
enums, but I'm not sure if it'll end up being needed, and copy-constructing
unions in C++ is always very tricky.

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

--HG--
extra : moz-landing-system : lando
2019-05-09 11:24:57 +00:00
Cameron McCormack d4d63edb8f Bug 1133175 - Remove SVGTests.hasExtension. r=bz,longsonr 2019-05-09 14:39:28 +10:00
Daniel Holbert d4b5b44718 Bug 1548985: Don't let 'contain:size' suppress the intrinsic size of document-root SVG elements. r=TYLin
Differential Revision: https://phabricator.services.mozilla.com/D30259

--HG--
extra : moz-landing-system : lando
2019-05-08 23:05:04 +00:00
Miko Mynttinen 2c5cb1519c Bug 1549751 - Part 2: Add nsPaintedDisplayItem r=mattwoodrow
Move ApplyOpacity(), CanApplyOpacity(), Paint() and PaintWithClip() methods to nsPaintedDisplayItem

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

--HG--
extra : moz-landing-system : lando
2019-05-08 13:49:56 +00:00
Emilio Cobos Álvarez b3863ed908 Bug 1547792 - AspectRatio should be a single ratio, not a size. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29244

--HG--
extra : moz-landing-system : lando
2019-05-02 23:28:21 +00:00
Cameron McCormack dca00b9a3e Bug 1539318 - Prevent getComputedTextLength() from working on non-display SVG text elements. r=jwatt
This adds the same bailing out behavior that was added in bug 1402109 to a number
of other functions implementing SVG DOM text methods.

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

--HG--
extra : moz-landing-system : lando
2019-05-02 01:08:39 +00:00
Cosmin Sabou aaedb26cee Backed out changeset e9ea26dd5b68 (bug 1539318) for crashtest failures on 1539318-1.html. 2019-05-02 03:18:12 +03:00
Cameron McCormack a4fce1514d Bug 1539318 - Prevent getComputedTextLength() from working on non-display SVG text elements. r=jwatt
This adds the same bailing out behavior that was added in bug 1402109 to a number
of other functions implementing SVG DOM text methods.

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

--HG--
extra : moz-landing-system : lando
2019-05-01 22:41:50 +00:00
Sylvestre Ledru e226046cb8 Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan
# ignore-this-changeset

Depends on D28954

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

--HG--
extra : moz-landing-system : lando
2019-05-01 08:47:10 +00:00
Emilio Cobos Álvarez a6845a59a2 Bug 1547619 - Fix :-moz-svg-use-shadow-tree-root pseudo-class. r=violet
Turns out removing the pseudo-class and such ends up not being quite as trivial
as I initially thought, or possible at all, since the fact that the <symbol> is
a <symbol> is observable via selectors, added a test for that.

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

--HG--
extra : moz-landing-system : lando
2019-04-29 08:04:22 +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
Razvan Maries a85880b516 Merge mozilla-inbound to mozilla-central a=merge 2019-04-28 00:39:52 +03: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
Daniel Holbert 842b893fe3 Bug 1544121: Make size-contained replaced elements behave as if they had 0x0 intrinsic size and ratio. r=TYLin
Spec quote from https://drafts.csswg.org/css-contain/#containment-size :
"Replaced elements must be treated as having an intrinsic width and height of 0"

To achieve that, we just need to:
 (a) make all of these frame classes' GetPrefISize and GetMinISize methods return 0 if they're styled with contain:size.
 (b) make all of these frame classes' GetIntrinsicSize() and GetIntrinsicRatio() methods return 0,0.

In some cases, these methods are implemented in terms of common helper methods
(and sometimes member variables). For those cases, this patch adjusts the
helper methods (and variables) rather than the getters themselves.

Also: in one case (nsHTMLCanvasFrame), I needed to update its ComputeSize
method to remove a dependency on the "real" intrinsic size & ratio. I believe
the other classes' ComputeSize implementations do the right thing automatically
by sharing code & data with their intrinsic-size codepaths.

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

--HG--
rename : testing/web-platform/tests/media/white.webm => testing/web-platform/tests/css/css-contain/support/white.webm
extra : moz-landing-system : lando
2019-04-26 00:18:32 +00:00
Razvan Maries 444ee13e14 Merge mozilla-inbound to mozilla-central a=merge 2019-04-26 12:46:15 +03: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
Emilio Cobos Álvarez 11ea945833 Bug 1546697 - Use a consistent style for enum classes in layout. r=dholbert
Per the discussion in:

  https://groups.google.com/d/msg/mozilla.dev.platform/P79pwa9z5m8/iPYPAWPHCAAJ

They should be CamelCase, and that's what most of them already do. This converts
the rest, which are a few.

For the ones that already used `e` or `k` prefixes, I've mostly done:

 for file in $(rg Type::e layout | cut -d : -f 1 | sort | uniq); do sed -i 's#Type::e#Type::#g' $file; done

For the ones that used uppercase, I've removed the prefix if it was already in
the type name, and turn them into CamelCase.

Depends on D28680

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

--HG--
extra : moz-landing-system : lando
2019-04-25 23:03:04 +00:00
Emilio Cobos Álvarez 3e1e7ce302 Bug 1547138 - IntrinsicSize shouldn't use nsStyleCoord. r=dholbert
We have a better type to represent "a coord or nothing", and that's Maybe.

This code is shorter, and I think reads generally better / is less easy to
misuse.

I wrote this on top of bug 1547126 so there shouldn't be conflicts.

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

--HG--
extra : moz-landing-system : lando
2019-04-25 23:48:14 +00:00
Masayuki Nakano 3622509485 Bug 1545342 - part 2: Make some public enum of nsIPresShell move to mozilla namespace and defined as enum class in PresShellForwards.h r=smaug
This patch moves some `enum` in `nsIPresShell` which are in public scope into
`mozilla` namespace and change them as `enum class`es.

Unfortunately, only "where to scroll" enum is just defines constants of
percentages of scroll destination.  Therefore, this patch makes only them
as `static const`.

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

--HG--
extra : moz-landing-system : lando
2019-04-25 05:04: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 60a266004c Bug 1342800 - ComputeSize should not treat iframe as object r=firefox-svg-reviewers,longsonr
We should not treat <iframe> as <object> for SVG, otherwise there will
be unexpected sizing and other webcompat problem (e.g. getScreenCTM).

It behaved correctly before, the change was introduced to solve a double
zooming problem (bug 843480) for <iframe>. Actually the zooming problem
can be solved by avoiding zooming when the window frame is an <iframe>.

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

--HG--
extra : moz-landing-system : lando
2019-04-22 16:32:14 +00:00
Emilio Cobos Álvarez 95d5d947ba Bug 874811 - Outer svg is a replaced box with CSS layout, and CSSOM should reflect that accordingly. r=dholbert,violet
Co-authored-by: violet <violet.bugreport@gmail.com>

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

--HG--
extra : moz-landing-system : lando
2019-04-22 17:01:10 +00:00
Sylvestre Ledru a1dce6440a Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-04-22 16:35:03 +00:00
Narcis Beleuzu 43fbd93234 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-04-27 12:54:35 +03:00
longsonr dcc4813635 Bug 1542646 Part 13 - Make function declaration and definition parameter names match r=dholbert 2019-04-27 08:57:50 +01:00
longsonr b768833e62 Bug 1542646 Part 12 - avoid implicit double to float conversions by using std:: variants of mathematical functions r=dholbert 2019-04-25 22:46:33 +01:00
longsonr ff95be21f8 Bug 1542646 Part 10 - simplify boolean logic r=dholbert 2019-04-20 11:29:32 +01:00
longsonr 5f62f5b014 Bug 1542646 Part 9 - Fix else after return r=dholbert 2019-04-20 11:26:19 +01: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
Andreea Pavel e5b695eefd Merge mozilla-inbound to mozilla-central. a=merge 2019-04-19 00:36:23 +03:00
Brian Grinstead 381332c51e Bug 1544051 - Part 3 - Scripted change to remove references to AddTask.js r=ahal
This was generated with the script at https://bug1544051.bmoattachments.org/attachment.cgi?id=9058672

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

--HG--
extra : moz-landing-system : lando
2019-04-18 16:51:01 +00:00
Dan Glastonbury d361d6bc8e Bug 1526972 - P1: Compress bool state into bit flags. r=miko
Also move to first cache-line (64-bytes) of nsDisplayItem to improve D-cache hit
when accessing mFrame, mItemFlags, etc.

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

--HG--
extra : moz-landing-system : lando
2019-04-18 02:38:13 +00:00
longsonr 0ae6e3c251 Bug 1542646 Part 7 - use default keyword where possible r=dholbert 2019-04-17 23:38:02 +01:00
Brian Grinstead ede8c44ef2 Bug 1544322 - Part 2.1 - Remove the [type] attribute for one-liner <script> tags loading files in /tests/SimpleTest/ in everything except for dom/ r=bzbarsky
This excludes dom/, otherwise the file size is too large for phabricator to handle.

This is an autogenerated commit to handle scripts loading mochitest harness files, in
the simple case where the script src is on the same line as the tag.

This was generated with https://bug1544322.bmoattachments.org/attachment.cgi?id=9058170
using the `--part 2` argument.

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

--HG--
extra : moz-landing-system : lando
2019-04-16 03:50:44 +00:00
Brian Grinstead 6515f97bcb Bug 1544322 - Part 1 - Remove the [type] attribute for one-liner <script> tags loading files in chrome://mochikit/content/ r=bzbarsky
This is an autogenerated commit to handle scripts loading mochitest harness files, in
the simple case where the script src is on the same line as the tag.

This was generated with https://bug1544322.bmoattachments.org/attachment.cgi?id=9058170
using the `--part 1` argument.

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

--HG--
extra : moz-landing-system : lando
2019-04-15 20:56:58 +00:00
Masayuki Nakano f5737567dd Bug 1544343 - part 3: Make layout use mozilla::PresShell instead of nsIPresShell as far as possible r=emilio
This patch changes remaining things under `layout/`.  However, there are some
places which still need to use `nsIPresShell`.  That will be fixed in a
follow up bug.

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

--HG--
extra : moz-landing-system : lando
2019-04-16 07:25:10 +00:00
Masayuki Nakano 2f9688c14e Bug 1544343 - part 2: Make factory methods take mozilla::PresShell instead of nsIPresShell r=emilio
Additionally, this patch makes `nsFrame.h` stop including `nsIPresShell.h`
and makes each users include `mozilla/PresShell.h` instead.  So, this improves
rebuild performance of `nsIPresShell.h` (and `mozilla/PresShell.h` in the
future).

Note that due to `nsIFrame::PresShell()`, `mozilla::` prefix is necessary for
`PresShell` in a lot of classes which are derived from `nsIFrame` even in
`.cpp` files.

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

--HG--
extra : moz-landing-system : lando
2019-04-16 07:24:49 +00:00
Kartikaya Gupta 25f7a03029 Bug 1543482 - Extract a helper to identify clip paths WR can handle without masks. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D27454

--HG--
extra : moz-landing-system : lando
2019-04-15 11:24:53 +00:00
Csoregi Natalia 612325227f Backed out 8 changesets (bug 1526972) for causing crashes (bug 1544406). a=backout
Backed out changeset 815543d81a1d (bug 1526972)
Backed out changeset a895c9028b31 (bug 1526972)
Backed out changeset 2ea2f8533078 (bug 1526972)
Backed out changeset 2fb940b13971 (bug 1526972)
Backed out changeset 8543b9d46521 (bug 1526972)
Backed out changeset ddd57e437228 (bug 1526972)
Backed out changeset 54b14df56e6f (bug 1526972)
Backed out changeset a59f06022a95 (bug 1526972)
2019-04-15 18:15:49 +03:00
Dan Glastonbury a9319e3ae3 Bug 1526972 - P1: Compress bool state into bit flags. r=miko
Also move to first cache-line (64-bytes) of nsDisplayItem to improve D-cache hit
when accessing mFrame, mItemFlags, etc.

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

--HG--
extra : moz-landing-system : lando
2019-04-15 00:23:07 +00:00
violet fa3b85a4da Bug 1544270 - Change 1.f * something to float(something) r=longsonr
Change 1.f * something to float(something)

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

--HG--
extra : moz-landing-system : lando
2019-04-14 09:32:19 +00:00
violet 1ce98d921c Bug 1544209 - Should not scale mFontSizeScaleFactor for user space r=longsonr
We already get the user space metrics, mFontSizeScaleFactor is irrelevant
and the scaling should not be applied in the first place.

Otherwise we will get very wrong bounding box when <text> has SVG transform
or the font has extreme size.

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

--HG--
extra : moz-landing-system : lando
2019-04-14 07:41:42 +00:00
Masayuki Nakano 414509fe00 Bug 1543315 - part 9: Mark nsIPresShell::FlushPendingNotifications() as MOZ_CAN_RUN_SCRIPT r=smaug
So, this patch makes all caller of it safe including its arguments unless
they come from other methods.

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

--HG--
extra : moz-landing-system : lando
2019-04-13 12:43:57 +00:00
longsonr eff829f752 Bug 1542646 Part 6 - pass by reference when it's more efficient r=dholbert 2019-04-12 17:29:32 +01:00
longsonr 07bf678276 Bug 1542646 Part 5 - don't use instance variables to access static methods r=dholbert 2019-04-12 17:28:13 +01:00
Ting-Yu Lin f49d08722a Bug 1543571 Part 1 - Replace "reflow state" with "reflow input". r=dholbert
This patch is generated by the following script on Linux:

function rename() {
    find .\
         -type f\
         ! -path "./obj*"\
         ! -path "./.git"\
         ! -path "./.hg"\
         \( -name "*.cpp" -or\
            -name "*.h" \)\
            -exec sed -i -e "s/$1/$2/g" "{}" \;
}
rename "reflow state" "reflow input"

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

--HG--
extra : moz-landing-system : lando
2019-04-11 20:27:37 +00:00
longsonr 866f2126b4 Bug 1540408 Part 3 - Rename SVGViewBoxRect to SVGViewBox r=dholbert 2019-04-10 05:08:14 +01:00
longsonr 4c4cabe851 Bug 1540408 Part 2 - Move nsSVGLength2 and nsSVGNumber2 to the mozilla namespace renaming them to be SVGAnimatedLength and SVGAnimatedNumber. r=dholbert
--HG--
rename : dom/svg/nsSVGLength2.cpp => dom/svg/SVGAnimatedLength.cpp
rename : dom/svg/nsSVGLength2.h => dom/svg/SVGAnimatedLength.h
rename : dom/svg/nsSVGNumber2.cpp => dom/svg/SVGAnimatedNumber.cpp
rename : dom/svg/nsSVGNumber2.h => dom/svg/SVGAnimatedNumber.h
2019-04-09 21:04:33 +01:00
violet 5c289d7a54 Bug 1542714 - Remove nsSVGUtils::GetUserToCanvasTM r=longsonr
nsSVGUtils::GetUserToCanvasTM becomes dead code and no longer useful,
since it doesn't take CSS transform into account. Let's remove it.

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

--HG--
extra : moz-landing-system : lando
2019-04-08 17:20:07 +00:00
violet c0ca7d5cac Bug 1541021 - Should take CSS transform into account when calculating getBoundingClientRect() r=longsonr
We should use nsLayoutUtils::GetTransformToAncestor instead of
nsSVGUtils::GetUserToCanvasTM to get the transform matrix. Because the former
will also take CSS transform into account while the latter won't.

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

--HG--
extra : moz-landing-system : lando
2019-04-08 04:39:23 +00:00
Narcis Beleuzu 8d78f21970 Backed out changeset 253e90f0ccf3 (bug 1541021) for mochitest failures on test_bounds.html 2019-04-07 19:50:14 +03:00
violet ea72deb0be Bug 1541021 - Should take CSS transform into account when calculating getBoundingClientRect() r=longsonr
We should use nsLayoutUtils::GetTransformToAncestor instead of
nsSVGUtils::GetUserToCanvasTM to get the transform matrix. Because the former
will also take CSS transform into account while the latter won't.

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

--HG--
extra : moz-landing-system : lando
2019-04-07 14:11:39 +00:00
Emilio Cobos Álvarez 7980a72d0a Bug 760345 - Remove the last usage of lossy currentcolor. r=heycam
We don't have lossy currentcolor in the style system anymore, except for a
single property -moz-font-smoothing-background-color.

I could've converted it into a proper StyleColor and thread down all the
necessary information to the font metrics code.

But it doesn't really seem worth it given it's not exposed to the web, so I just
did the simplest thing, which is making currentcolor compute to transparent to
that specific property.

This patch also removes the stores_complex_colors_lossily code and related,
since now we always can cache computed colors.

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

--HG--
extra : moz-landing-system : lando
2019-04-06 17:47:58 +00:00
Masayuki Nakano e8446480e1 Bug 1542407 - Make nsIFrame use mozilla::PresShell directly rather than via nsIPresShell r=emilio
Except retrieving from weak reference, `nsIFrame` should treat
`mozilla::PresShell` directly rather than via `nsIPresShell`.

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

--HG--
extra : moz-landing-system : lando
2019-04-06 06:02:28 +00:00
Kartikaya Gupta 4d9ac753d2 Bug 1541113 - Avoid crashing content process with giant drawtarget. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D25931

--HG--
extra : moz-landing-system : lando
2019-04-05 16:26:59 +00:00
Coroiu Cristina 749dbdc496 Merge mozilla-central to inbound a=merge 2019-04-05 06:23:29 +03:00
Miko Mynttinen 5463d7f522 Bug 1536423 - Remove SVGCharClipDisplayItem r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D26191

--HG--
extra : moz-landing-system : lando
2019-04-04 18:04:49 +00:00
Alex Henrie c8349295db Bug 1529182 - Include stroke in SVG <text> bounding box. r=longsonr,heycam
I think I found another mistake in the SVG text code that could explain the regression: If the text is drawn with a stroke, shouldn't the stroke be included in the bounding box?

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

--HG--
extra : moz-landing-system : lando
2019-04-04 06:38:40 +00:00
Masayuki Nakano 9165a150a1 Bug 1540930 - Make nsPresContext use mozilla::PresShell directly rather than via nsIPresShell r=emilio
`nsPresContext` should use `mozilla::PresShell` directly instead of
`nsIPresShell`.  This patch makes it.

Unfortunately, `nsPresContext` and `nsIFrame` have `PresShell()`.  Therefore,
we cannot use `PresShell*` in its methods so that this patch uses `mozilla::`
namespace prefix.

It might be better to rename them as `PresShellPtr()` in another bug.

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

--HG--
extra : moz-landing-system : lando
2019-04-03 12:40:26 +00:00
violet 6db1bbd9b8 Bug 1370646 - Honor the maxTextRunSize if it's within reasonable range r=heycam
If the maximal and minimal font-size in a SVGTextFrame have a huge difference,
previously we chose mFontSizeScaleFactor to satisfy the minimal one. That's
problematic, because the maximal one might be a reasonable size, while the minimal
one is extremely small. We should honor the maximal one if this is the case.

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

--HG--
extra : moz-landing-system : lando
2019-04-03 01:00:38 +00:00
Matt Woodrow d99a15fae2 Bug 1539673 - Support fallible display item construction. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D25167

--HG--
extra : moz-landing-system : lando
2019-04-01 16:53:11 +00:00
violet fa6e04c666 Bug 1540703 - Should also reflow SVGTextFrame for non-display active child of switch element r=longsonr
When <switch> happens to have an active child that is non-display, we should still reflow all its descendant SVGTextFrame for consistency.

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

--HG--
extra : moz-landing-system : lando
2019-04-02 06:08:23 +00:00
Jonathan Kew f5e8791f61 Bug 1533428 - patch 4 - Include chromium-config.mozbuild in the moz.build for a bunch more directories, so that IPC-related headers are available. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D22922

--HG--
extra : moz-landing-system : lando
2019-04-01 14:32:44 +00:00
Daniel Varga bd12eaff99 Backed out changeset 005d447749ec (bug 1370646) mochitest failure at layout/style/test/test_font_loading_api.html. On a CLOSED TREE 2019-03-29 10:38:13 +02:00
violet e93691e85b Bug 1370646 - Honor the maxTextRunSize if it's within reasonable range r=heycam
If the maximal and minimal font-size in a SVGTextFrame have a huge difference,
previously we chose mFontSizeScaleFactor to satisfy the minimal one. That's
problematic, because the maximal one might be a reasonable size, while the minimal
one is extremely small. We should honor the maximal one if this is the case.

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

--HG--
extra : moz-landing-system : lando
2019-03-29 07:01:10 +00:00
longsonr bff06425af Bug 1540408 Part 1 - Move most internal attribute representation classes to be of the form SVGAnimated. r=dholbert
--HG--
rename : dom/svg/SVGBoolean.cpp => dom/svg/SVGAnimatedBoolean.cpp
rename : dom/svg/SVGBoolean.h => dom/svg/SVGAnimatedBoolean.h
rename : dom/svg/SVGClass.cpp => dom/svg/SVGAnimatedClass.cpp
rename : dom/svg/SVGClass.h => dom/svg/SVGAnimatedClass.h
rename : dom/svg/SVGEnum.cpp => dom/svg/SVGAnimatedEnumeration.cpp
rename : dom/svg/SVGEnum.h => dom/svg/SVGAnimatedEnumeration.h
rename : dom/svg/SVGInteger.cpp => dom/svg/SVGAnimatedInteger.cpp
rename : dom/svg/SVGInteger.h => dom/svg/SVGAnimatedInteger.h
rename : dom/svg/SVGIntegerPair.cpp => dom/svg/SVGAnimatedIntegerPair.cpp
rename : dom/svg/SVGIntegerPair.h => dom/svg/SVGAnimatedIntegerPair.h
rename : dom/svg/SVGNumberPair.cpp => dom/svg/SVGAnimatedNumberPair.cpp
rename : dom/svg/SVGNumberPair.h => dom/svg/SVGAnimatedNumberPair.h
rename : dom/svg/SVGOrient.cpp => dom/svg/SVGAnimatedOrient.cpp
rename : dom/svg/SVGOrient.h => dom/svg/SVGAnimatedOrient.h
rename : dom/svg/SVGString.cpp => dom/svg/SVGAnimatedString.cpp
rename : dom/svg/SVGString.h => dom/svg/SVGAnimatedString.h
rename : dom/svg/SVGViewBox.cpp => dom/svg/SVGAnimatedViewBox.cpp
rename : dom/svg/SVGViewBox.h => dom/svg/SVGAnimatedViewBox.h
2019-04-04 18:40:56 +01:00
Emilio Cobos Álvarez 2dd6a71b3e Bug 1531333 - Fix <svg:use> cycle detection. r=longsonr
With the current code we'll eventually detect the cycle, but will take much
more, creating many shadow trees unnecessarily. Take for example the following:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="133" height="232774">
    <style>
      symbol { display: block }
    </style>
    <symbol id="svg-sprite" viewBox="0 0 133 230866">
        <title>svg-sprite</title>
        <symbol id="svg-sprite" viewBox="0 0 133 230866">
            <title>svg-sprite</title>
            <use xlink:href="#svg-sprite" width="500" height="500" />
        </symbol>
        <use xlink:href="#svg-sprite" y="1601" width="133" height="228958" />
    </symbol>
    <use xlink:href="#svg-sprite" y="1601" width="133" height="230866" />
</svg>

Before this patch, we'd create an svg use element subtree for #svg-sprite. That
subtree will contain two other <use> elements, one under the <symbol>, one not
under it.

Both point to #svg-sprite, but we fail to detect we're an ancestor since the
element #svg-sprite we're looking at is the clone of the #svg-sprite element.

Thus we need to take a look at mOriginal instead (which is the <use> element
under #svg-sprite) rather than at the clone.

Yeah, I had to draw the trees, it's messy :)

Blink and WebKit do something slightly different (they check the element id
directly[1]). That's not 100% correct, since you can have multiple elements with
the same ID.

[1]: https://cs.chromium.org/chromium/src/third_party/blink/renderer/core/svg/svg_use_element.cc?l=560&rcl=861855dcb8c39ba8d42497247d433277858df79b

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

--HG--
extra : moz-landing-system : lando
2019-03-22 22:26:53 +00:00
violet 76cd3244f4 Bug 951904 - SVGTextFrame should always be reflowed even if it is inside a nonactive child of switch element r=longsonr
SVGTextFrame is special, it should always be reflowed to get the correct metrics.

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

--HG--
extra : moz-landing-system : lando
2019-03-21 21:17:18 +00:00
violet 0a0bd52597 Bug 1537708 - Clean up NS_STATE_IS_OUTER_SVG flag in favor of IsSVGOuterSVGFrame r=longsonr
NS_STATE_IS_OUTER_SVG is redundant, we clean it up and use
nsIFrame::IsSVGOuterSVGFrame() instead.

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

--HG--
extra : moz-landing-system : lando
2019-03-22 02:23:35 +00:00
violet 2c538f0dfe Bug 1536892 - Check a frame does maintain overflow before adding to OverflowChangedTracker. r=longsonr CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D24305

--HG--
extra : rebase_source : 90f906520cd20d22276dfa14c51d8f45fa1549c0
extra : amend_source : 84015fc7ebe2db6d8d30d65468deca469ae9bc8f
2019-03-19 20:33:36 +01:00
Cameron McCormack 187b9a230c Bug 1535517 - Don't schedule SVG text reflow in response to bidi resolution. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D23615

--HG--
extra : moz-landing-system : lando
2019-03-15 15:29:33 +00:00
Cameron McCormack 9cd8ebef9b Bug 1531890 - Take objectBoundingBox into account when a clipPath's child has its own clip-path. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D23612

--HG--
extra : moz-landing-system : lando
2019-03-19 01:18:21 +00:00
Matt Woodrow 756b5124bc Bug 1525372 - Add background-clip:text rendering observer so that we get notified of changes to the clipped contents. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D20110

--HG--
extra : moz-landing-system : lando
2019-03-18 16:24:20 +00:00
violet 68968a150f Bug 1504072 - non-display outer SVG also doesn't maintain overflow r=longsonr
There is some inconsistency between nsIFrame::FrameMaintainsOverflow() and
nsSVGContainerFrame::ComputeCustomOverflow(). If an element is a nondisplay
outer SVG, the latter gives false while the former returns true. We make them
consistent since nondisplay element doesn't need to maintain overflow.

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

--HG--
extra : moz-landing-system : lando
2019-03-17 11:00:48 +00:00
violet d307082a12 Bug 1072758 - ScheduleReflowSVGNonDisplayText when changing style to display none r=emilio
DidSetComputedStyle won't be called if the style changes to "display:none".
To ensure the reflow is properly scheduled, we need to also hook DestroyFrom.

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

--HG--
extra : moz-landing-system : lando
2019-03-16 02:36:09 +00:00
Dorel Luca 0e9ffb4c4f Merge mozilla-inbound to mozilla-central. a=merge 2019-03-14 18:25:40 +02:00
Emilio Cobos Álvarez 5aa8533517 Bug 1533963 - Use a single RestyleHint representation. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D22828

--HG--
extra : moz-landing-system : lando
2019-03-14 11:47:50 +00:00
Sylvestre Ledru 4aa92e3091 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D22514
2019-03-13 10:19:06 +01:00
Andrew Osmond bc278165ae Bug 1534188 - Use high quality downscaling for raster images embedded in SVGs. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D23374
2019-03-14 07:16:29 -04:00
longsonr 65caeb2944 Bug 1532444 - Go back to doing synchronous invalidation in ReflowSVGNonDisplayText as its invoked by ScheduleReflowSVGNonDisplayText so is already asynchronous r=dholbert 2019-03-09 14:14:33 +00:00
violet 7d525e84a8 Bug 1508028 - Change stroke-miterlimit restriction from GreaterThanOrEqualToOneNumber to NonNegativeNumber. r=longsonr,emilio 2019-03-09 13:05:56 +00:00
Kris Maglione f93c2909dd Bug 1573254: Part 2 - Update tests to await snapshotWindow when necessary. r=mccr8
This fixes several tests which snapshot remote windows under Fission. It also
changes some other arbitrary tests that don't use remote windows, which I
changed before I gave up on having an always-async API.

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

--HG--
extra : rebase_source : 6203b7065f7651e6ed4a2695ff2bd92daec70634
2019-08-12 12:56:25 -07:00
Chris Peterson 9b04fe7446 Bug 1532128 - layout: Make some global functions static. r=dholbert
clang's -Wmissing-prototypes option identifies global functions that can be made static (because they're only called from one compilation unit) or removed (if they're never called).

layout/painting/FrameLayerBuilder.cpp:2593:6 [-Wmissing-prototypes] no previous prototype for function 'ReleaseLayerUserData'
layout/painting/RetainedDisplayListBuilder.cpp:1084:6 [-Wmissing-prototypes] no previous prototype for function 'FindContainingBlocks'
layout/style/FontFaceSet.cpp:423:6 [-Wmissing-prototypes] no previous prototype for function 'IsPdfJs'
layout/svg/SVGObserverUtils.cpp:969:6 [-Wmissing-prototypes] no previous prototype for function 'DestroyFilterProperty'

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

--HG--
extra : rebase_source : 7b876a976087eef710ff70ca0ae42abb3c505e49
extra : histedit_source : 4254fd49e36bef38bbb6197861a4a22e040d17e0
2019-02-22 20:33:01 -08:00
Jeff Muizelaar 4febae72fc Bug 1495170. Use CreateClippedDrawTarget more. r=mstange
This lets us restrict the size of the mask surface that we allocate
to the destination tile size. This gives a large performance
improvement.

It also includes some miscelanous fixes to the CreateClippedDrawTarget
code path.

Differential Revision: https://phabricator.services.mozilla.com/D21750
2019-03-04 22:30:09 -05:00
violet 3f63d086cd Bug 1528635 - Check urlExtraReferrer not null before dereference to avoid crash r=longsonr
urlExtraReferrer could be null, we should check before dereference.  Otherwise
it will cause crash when webrender is enabled by gfx.webrender.enabled=true
and gfx.webrender.all=true,

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

--HG--
extra : moz-landing-system : lando
2019-03-03 19:35:42 +00:00
Emilio Cobos Álvarez f02f6a3545 Bug 1218257 - Use rust lengths for the SVG lengths. r=boris
As it turns out we need this to avoid losing precision both during painting and
during serialization.

This patch also changes to serialize `context-value` if it's the computed value.

I could keep the previous behavior, but it makes no sense to serialize the
initial value. We're the only ones to support this value anyway, and I couldn't
find a definition or spec for this.

Also update tests and expectations for:

 * New unexpected passes.
 * Always serializing the unit in getComputedStyle.
 * Calc and interpolation support.

Chrome also always serializes the unit in getComputedStyle, so I'm pretty sure
this is compatible with them. Chrome is inconsistent and keeps numbers in
specified style, but that's inconsistent with itself and with other quirky
lengths, so I updated the tests instead.

Differential Revision: https://phabricator.services.mozilla.com/D21819
2019-03-03 00:16:24 +01:00
Emilio Cobos Álvarez 7e10c7b612 Bug 1218257 - Cleanup and fix interpolation of SVG lengths. r=boris
Instead of storing them as LengthPercentage | Number, always store as
LengthPercentage, and use the unitless length quirk to parse numbers instead.

Further cleanups to use the rust representation can happen as a followup, which
will also get rid of the boolean argument (since we can poke at the rust length
itself). That's why I didn't bother to convert it to an enum class yet.

Differential Revision: https://phabricator.services.mozilla.com/D21804
2019-03-03 00:16:13 +01:00
Ryan Hunt b936c00a65 Bug 1523969 part 14 - Move method definition inline comments to new line in 'layout/'. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D21115

--HG--
extra : rebase_source : 4d65c07d8822f3a54ac881b5d0f55468ce884554
2019-02-25 16:09:24 -06:00
Timothy Nikkel 4a54583c19 Bug 1505871. C++ code to get component transfer filter data into webrender. r=jrmuizel
Have to use a pointer/size pair to transfer the value list to rust.

We use a "filter holder" that contains an nsTArray that owns the values.
2019-02-26 00:16:36 -06:00
Timothy Nikkel b2695b4b73 Backed out changeset 2bf33f573505 2019-02-25 22:48:35 -06:00
Timothy Nikkel b9d0354d8a Bug 1505871. C++ code to get component transfer filter data into webrender. r=jrmuizel
Have to use a pointer/size pair to transfer the value list to rust.

We use a "filter holder" that contains an nsTArray that owns the values.
2019-02-25 22:45:15 -06:00
Noemi Erli a50bfca7a3 Backed out 10 changesets (bug 1505871) for wrench bustages CLOSED TREE
Backed out changeset 045ab0ec3613 (bug 1505871)
Backed out changeset 6486435a048d (bug 1505871)
Backed out changeset 9be871042749 (bug 1505871)
Backed out changeset 0007feaf988d (bug 1505871)
Backed out changeset 3cb8fb01e77e (bug 1505871)
Backed out changeset 2fff213d97e3 (bug 1505871)
Backed out changeset 1ad20d485eca (bug 1505871)
Backed out changeset 0fd8742fa662 (bug 1505871)
Backed out changeset 1899600a7985 (bug 1505871)
Backed out changeset f9578d20e54e (bug 1505871)
2019-02-26 03:43:12 +02:00
Timothy Nikkel 17f5b2d751 Bug 1505871. C++ code to get component transfer filter data into webrender. r=jrmuizel
Have to use a pointer/size pair to transfer the value list to rust.

We use a "filter holder" that contains an nsTArray that owns the values.
2019-02-25 19:20:26 -06:00
Alex Henrie 9d83a1b171 Bug 1529182 - Correctly apply scale factor when clamping SVG text size. r=longsonr
--HG--
extra : amend_source : 63508a69c60363cac314ae6d1278df728c3fa0a6
2019-02-24 15:14:32 -07:00
Razvan Maries d7a2f49ed8 Merge mozilla-inbound to mozilla-central a=merge 2019-02-23 06:15:14 +02:00
Razvan Maries 5173412ca4 Backed out changeset 27284783216c (bug 1529182) for reftest fails on text-stroke-scaling-02a.html after fix. a=backout 2019-02-23 02:21:08 +02:00
Samuel Thibault 3ec9cb5130 Bug 919508 - nsTextFrame::GetTrimmedOffsets: Rework flag parameters r=jfkthame
--HG--
extra : histedit_source : 5c59e716d7a94030b6146bc471bc8dbbd92c7122
2019-02-22 22:12:27 +01:00
Alex Henrie 6dbf36393c Bug 1529182 - Recalculate context scale when inflating mRect of SVG text. r=longsonr
--HG--
extra : histedit_source : 532cfc0bb9c8ae23a9d2d8ab31452d8a3bdb7525
2019-02-21 09:06:28 -07:00
Boris Chiou b332718138 Bug 1505225 - Part 1: Make sure we also check the existence of individual transform animations. r=hiro
nsIFrame::BuildDisplayListForStackingContext() will check the existence
of transform animations, so we need to update
nsLayoutUtils::HasAnimationsOfPoperty(). However, checking only
eCSSProperty_transform is not enough. We have to check all the transform-like
properties. Therefore, we update these functions to accept a property
set as the argument, and pass a collection of transform-like properties
into them.

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

--HG--
extra : moz-landing-system : lando
2019-02-20 02:14:39 +00:00
scharing 87df459a63 Bug 1528464 - Convert NS_STYLE_MASK_MODE_* to enum class r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D20063

--HG--
extra : moz-landing-system : lando
2019-02-19 16:54:52 +00:00
Alex Henrie 7afb5aaf34 Bug 1521425 - Round up when inflating mRect of SVG text. r=longsonr 2019-02-17 22:27:56 -07:00
Razvan Maries 2fb9019d41 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-02-15 11:59:08 +02:00
Emilio Cobos Álvarez e9ae3b0907 Bug 1527410 - Use Rust sizes for flex-basis, width, height, and their min/max properties. r=jwatt
Really sorry for the size of the patch :(

Only intentional behavior change is in the uses of HasLengthAndPercentage(),
where it's easier to do the right thing. The checks that used to check for
(IsCalcUnit() && CalcHasPercentage()) are wrong since bug 957915.

Differential Revision: https://phabricator.services.mozilla.com/D19553
2019-02-15 03:59:31 +01:00
Ting-Yu Lin 8c62035164 Bug 1527519 Part 3 - Replace remaining nsLayoutUtils::GetAsBlock() with do_QueryFrame(), and delete nsLayoutUtils::GetAsBlock(). r=mats
Depends on D19861

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

--HG--
extra : moz-landing-system : lando
2019-02-15 01:38:05 +00:00
Jeff Muizelaar ce64d00a94 Bug 1524661. Include perspective items as container items. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D19562

--HG--
extra : moz-landing-system : lando
2019-02-12 20:47:36 +00:00
Emilio Cobos Álvarez 12867b1a3f Bug 1525371 - Kill ComputedStyle::mPresContext, move the pointer to the frame instead. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D18734
2019-02-07 11:15:36 +01:00
Andrew Swan ee2283d446 Bug 1523980 Revoke special testpilot permissions r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D18768

--HG--
extra : moz-landing-system : lando
2019-02-06 22:21:01 +00:00
Emilio Cobos Álvarez e38aff2db7 Bug 1525134 - Move image loads out of the style struct accessors. r=heycam
After this I can pass the document from the caller to ResolveSameStructsAs, and
get rid of the pres context pointer.

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

--HG--
extra : moz-landing-system : lando
2019-02-05 19:47:29 +00:00
Razvan Maries de782903b2 Backed out changeset 919de32d4905 (bug 1525134) for build bustages. CLOSED TREE 2019-02-05 19:36:46 +02:00
Emilio Cobos Álvarez 3fe47839c0 Bug 1525134 - Move image loads out of the style struct accessors. r=heycam
After this I can pass the document from the caller to ResolveSameStructsAs, and
get rid of the pres context pointer.

Differential Revision: https://phabricator.services.mozilla.com/D18600
2019-02-05 18:07:18 +01:00
Razvan Maries 0b09448bc6 Backed out changeset 992f27cfecac (bug 1525134) for build bustages. CLOSED TREE 2019-02-05 18:54:14 +02:00
Emilio Cobos Álvarez 0996652d1a Bug 1525134 - Move image loads out of the style struct accessors. r=heycam
After this I can pass the document from the caller to
ResolveSameStructsAs, and get rid of the pres context pointer.

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

--HG--
extra : moz-landing-system : lando
2019-02-05 13:45:04 +00:00
Emilio Cobos Álvarez 4ac08cd28e Bug 1524328 - Pass a document instead of a pres context to FinishStyle. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D18491
2019-02-03 03:00:27 +01:00
Kris Maglione e930b89c34 Bug 1514594: Part 3 - Change ChromeUtils.import API.
***
Bug 1514594: Part 3a - Change ChromeUtils.import to return an exports object; not pollute global. r=mccr8

This changes the behavior of ChromeUtils.import() to return an exports object,
rather than a module global, in all cases except when `null` is passed as a
second argument, and changes the default behavior not to pollute the global
scope with the module's exports. Thus, the following code written for the old
model:

  ChromeUtils.import("resource://gre/modules/Services.jsm");

is approximately the same as the following, in the new model:

  var {Services} = ChromeUtils.import("resource://gre/modules/Services.jsm");

Since the two behaviors are mutually incompatible, this patch will land with a
scripted rewrite to update all existing callers to use the new model rather
than the old.
***
Bug 1514594: Part 3b - Mass rewrite all JS code to use the new ChromeUtils.import API. rs=Gijs

This was done using the followng script:

https://bitbucket.org/kmaglione/m-c-rewrites/src/tip/processors/cu-import-exports.jsm
***
Bug 1514594: Part 3c - Update ESLint plugin for ChromeUtils.import API changes. r=Standard8

Differential Revision: https://phabricator.services.mozilla.com/D16747
***
Bug 1514594: Part 3d - Remove/fix hundreds of duplicate imports from sync tests. r=Gijs

Differential Revision: https://phabricator.services.mozilla.com/D16748
***
Bug 1514594: Part 3e - Remove no-op ChromeUtils.import() calls. r=Gijs

Differential Revision: https://phabricator.services.mozilla.com/D16749
***
Bug 1514594: Part 3f.1 - Cleanup various test corner cases after mass rewrite. r=Gijs
***
Bug 1514594: Part 3f.2 - Cleanup various non-test corner cases after mass rewrite. r=Gijs

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

--HG--
extra : rebase_source : 359574ee3064c90f33bf36c2ebe3159a24cc8895
extra : histedit_source : b93c8f42808b1599f9122d7842d2c0b3e656a594%2C64a3a4e3359dc889e2ab2b49461bab9e27fc10a7
2019-01-17 10:18:31 -08:00
Jeff Muizelaar 0c609e94c7 Bug 1522021. Propagate input size to CreateSimilarDrawTarget for filters. r=mstange
This lets us avoid drawing the complete input for ever tile when
drawing filters into a tile.

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

--HG--
extra : moz-landing-system : lando
2019-01-27 23:36:04 +00:00
longsonr e1582e28d1 Bug 1523069 - Move nsSVGMark to the mozilla namespace. r=jwatt
--HG--
rename : dom/svg/SVGAngle.cpp => dom/svg/SVGOrient.cpp
rename : dom/svg/SVGAngle.h => dom/svg/SVGOrient.h
2019-01-26 13:01:31 +00:00
Matt Woodrow d4ecd598da Bug 1520682 - Limit the amount of filter ops per stacking context in WebRender. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D17415

--HG--
extra : moz-landing-system : lando
2019-01-24 03:02:17 +00:00
Matt Woodrow 2cc9e9df9e Bug 1477366 - Handle color space conversion for drop shadow filters with WebRender. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D17089

--HG--
extra : moz-landing-system : lando
2019-01-21 20:01:02 +00:00
Matt Woodrow b6afde59b9 Bug 1477366 - Only support SVG filters with a single input with WebRender. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D17088

--HG--
extra : moz-landing-system : lando
2019-01-21 20:00:57 +00:00
Cosmin Sabou 12149d8542 Merge mozilla-central to autoland. a=merge 2019-01-19 12:10:17 +02:00
Matt Woodrow a79e573d49 Bug 1520652 - Clip SVG filters to the PrimitiveSubregion when using WebRender. r=mstange
This patch changes a few things:
* Restores clipping to the computed clip, but just for SVG filters.
* Computes the clip just from the primitive subregion, not the bounds of the filtered content.
* Unconditionally clips all SVG filters using the primitive subregion
* Allows clips to be combined, if they will be sharing a coordinate space
* Fixes coordinate space of the clip region.

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

--HG--
extra : moz-landing-system : lando
2019-01-19 06:35:16 +00:00
Andreea Pavel bdea6eafb0 Backed out 2 changesets (bug 1520652) for build bustages on a CLOSED TREE
Backed out changeset b9ca6790fee1 (bug 1520652)
Backed out changeset ebdc9e3d72c4 (bug 1520652)
2019-01-19 05:36:54 +02:00
Matt Woodrow 20b4793c83 Bug 1520652 - Clip SVG filters to the PrimitiveSubregion when using WebRender. r=mstange
This patch changes a few things:
* Restores clipping to the computed clip, but just for SVG filters.
* Computes the clip just from the primitive subregion, not the bounds of the filtered content.
* Unconditionally clips all SVG filters using the primitive subregion
* Allows clips to be combined, if they will be sharing a coordinate space
* Fixes coordinate space of the clip region.

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

--HG--
extra : moz-landing-system : lando
2019-01-19 03:21:53 +00:00
Alex Henrie f6a935e57c Bug 1519144 - Apply context scale when inflating mRect of SVG text. r=longsonr 2019-01-16 19:55:24 -07:00
Jonathan Watt 83bd72be0b Bug 1517197. Fix SVG masking and clipping regression. r=mattwoodrow
This Make nsSVGIntegrationUtils::AdjustInvalidAreaForSVGEffects return the
original area if there are no filter effects (instead of using some bogus
fallback code).

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

--HG--
extra : rebase_source : 16de5f99068e5c219f4f366af848ae3cc6c83417
extra : amend_source : 62f0d870192421a58bbf6f7f083c6614c936ac3b
2019-01-15 00:20:52 +00:00
Jeff Muizelaar 17b5ec3dd2 Bug 1509182. Switch from using WrFilterOp to using FilterOp directly. r=nical
This avoids code duplication and simplifies push_stacking_context

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

--HG--
extra : moz-landing-system : lando
2019-01-10 19:41:08 +00:00
Cosmin Sabou 88993e172c Backed out changeset 10dedfde1015 (bug 1509182) for causing build bustages.
--HG--
extra : rebase_source : 4389819cbb88af16724480f571b0abcd027015ba
2019-01-10 20:52:49 +02:00
Jeff Muizelaar ef9bb810f0 Bug 1509182. Switch from using WrFilterOp to using FilterOp directly. r=nical
This avoids code duplication and simplifies push_stacking_context

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

--HG--
extra : moz-landing-system : lando
2019-01-10 18:40:56 +00:00
Csoregi Natalia ae6fde5883 Backed out changeset 8e078c86db82 (bug 1509182) for bustage on WebRenderTypes.h:789. CLOSED TREE 2019-01-10 18:15:42 +02:00
Jeff Muizelaar a0468b94c6 Bug 1509182. Switch from using WrFilterOp to using FilterOp directly. r=nical
This avoids code duplication and simplifies push_stacking_context

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

--HG--
extra : moz-landing-system : lando
2019-01-10 14:20:21 +00:00
Matt Woodrow b2e6afc9ac Bug 1516702 - Skip building nsDisplaySVGGeometry display items when they have opacity:0. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D15891

--HG--
extra : moz-landing-system : lando
2019-01-09 23:06:28 +00:00
Brindusan Cristian d8250d1175 Backed out changeset b66f64e5709d (bug 1516702) for mochitest failures on test_pointer-events-1a.xhtml. 2019-01-10 00:31:36 +02:00
Matt Woodrow 784e839e49 Bug 1516702 - Skip building nsDisplaySVGGeometry display items when they have opacity:0. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D15891

--HG--
extra : moz-landing-system : lando
2019-01-09 19:51:20 +00:00
longsonr 6c649bdee4 Bug 1518000 - Move nsSVGString and nsSVGViewBox to the mozilla namespace r=jwatt
--HG--
rename : dom/svg/nsSVGString.cpp => dom/svg/SVGString.cpp
rename : dom/svg/nsSVGString.h => dom/svg/SVGString.h
rename : dom/svg/nsSVGViewBox.cpp => dom/svg/SVGViewBox.cpp
rename : dom/svg/nsSVGViewBox.h => dom/svg/SVGViewBox.h
2019-01-06 17:52:55 +00:00
longsonr 5530126c12 Bug 1517938 - Move nsSVGIntegerPair and nsSVGNumberPair to the mozilla namespace r=jwatt
--HG--
rename : dom/svg/nsSVGIntegerPair.cpp => dom/svg/SVGIntegerPair.cpp
rename : dom/svg/nsSVGIntegerPair.h => dom/svg/SVGIntegerPair.h
rename : dom/svg/nsSVGNumberPair.cpp => dom/svg/SVGNumberPair.cpp
rename : dom/svg/nsSVGNumberPair.h => dom/svg/SVGNumberPair.h
2019-01-06 08:22:55 +00:00
Emilio Cobos Álvarez d2ed260822 Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.

Overall it's not a very interesting patch I think.

nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.

I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.

While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.
2019-01-03 17:48:33 +01:00
longsonr eb0a735bca Bug 1517185 - Move nsSVGEnum to the mozilla namespace and rename it as SVGEnum r=jwatt
--HG--
rename : dom/svg/nsSVGEnum.cpp => dom/svg/SVGEnum.cpp
rename : dom/svg/nsSVGEnum.h => dom/svg/SVGEnum.h
extra : amend_source : faf1423f0eecafceae6ede115759d06fa061faf2
2019-01-02 18:24:11 +00:00
Daniel Holbert 44acfc60f7 Backed out changeset c796403f5a29 since it landed with wrong bug number
--HG--
rename : dom/svg/SVGEnum.cpp => dom/svg/nsSVGEnum.cpp
rename : dom/svg/SVGEnum.h => dom/svg/nsSVGEnum.h
2019-01-02 10:44:12 -08:00
longsonr 69a6be5b17 Bug 1517108 - Move nsSVGEnum to the mozilla namespace and rename it as SVGEnum r=jwatt
--HG--
rename : dom/svg/nsSVGEnum.cpp => dom/svg/SVGEnum.cpp
rename : dom/svg/nsSVGEnum.h => dom/svg/SVGEnum.h
2019-01-02 18:24:11 +00:00
longsonr d03099b507 Bug 1516921 - export things in the mozilla namespace properly r=jwatt 2018-12-31 11:56:52 +00:00
longsonr cd491fca01 Bug 1516076 - Part 3 rename nsSVGAnimatedTransformList to SVGAnimatedTransformList and move it to the mozilla namespace r=dholbert
--HG--
rename : dom/svg/nsSVGAnimatedTransformList.cpp => dom/svg/SVGAnimatedTransformList.cpp
rename : dom/svg/nsSVGAnimatedTransformList.h => dom/svg/SVGAnimatedTransformList.h
2018-12-26 23:46:38 +00:00
longsonr 779726cbdc Bug 1516076 - Part 1 correct one of the include file for SVGGeometryFrame.cpp r=dholbert 2018-12-22 20:06:21 +00:00
Daniel Holbert 9543fab953 Bug 695385 followup: use pixel-valued sizes (not %) for rects in new mochitest. (no review; just tweaking a new test for robustness)
This hopefully will address the test-verify failures that were reported in bug 1516006.

--HG--
extra : rebase_source : d01139f16469c631eb047d21e998dfaf0d58c3a5
extra : amend_source : 8543fd2e10bf485cabaf45dfac156e6b9094ea41
2018-12-21 15:51:44 -08:00
Coroiu Cristina bbc7fc4e7c Merge inbound to mozilla-central a=merge 2018-12-21 23:55:45 +02:00
longsonr 646517ef56 Bug 1515936 - Part 2 Move nsSVGStringInfo to mozilla::dom and rename the nsSVGFilters files to SVGFilters r=dholbert
--HG--
rename : dom/svg/nsSVGFilters.cpp => dom/svg/SVGFilters.cpp
rename : dom/svg/nsSVGFilters.h => dom/svg/SVGFilters.h
2018-12-21 16:24:17 +00:00
longsonr f276e2f01e Bug 1515935 - Add newlines to the end of nsSVGSymbolFrame files r=dholbert 2018-12-21 16:16:50 +00:00
longsonr e160f38d5f Bug 1515607 - Move nsSVGFE into the mozilla::dom namespace r=dholbert 2018-12-21 12:32:35 +00:00
Gurzau Raul d939455801 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-12-21 18:39:42 +02:00
Daniel Holbert 234ebbeea8 Bug 695385: Add a mochitest to validate that cross-origin svg filters are blocked. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D13844

--HG--
rename : layout/reftests/filters.svg => layout/svg/tests/filters.svg
extra : moz-landing-system : lando
2018-12-21 06:46:19 +00:00
Cameron McCormack 59475d7fc5 Bug 1512597 - Resolve currentcolor in fill and stroke against visited-dependent color r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D14706

--HG--
extra : moz-landing-system : lando
2018-12-18 09:39:07 +00:00
Daniel Holbert a70be0a92e Bug 1513393 part 4: In "retrieve-or-initialize" dances in SVGObserverUtils.cpp, use 'found' outparam and AddProperty. r=mattwoodrow
As in the previous commit, this avoids a redundant walk through the list of
frame properties, when we already know the property is not there.

Depends on D14223

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

--HG--
extra : moz-landing-system : lando
2018-12-12 01:43:58 +00:00
Daniel Holbert fa80837513 Bug 1513387: Add braces & newlines to re-wrap some return statements that clang-format unwrapped, in layout/svg. r=heycam
This patch shouldn't affect behavior; it's just making the existing control
flow clearer and more debuggable.

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

--HG--
extra : moz-landing-system : lando
2018-12-12 06:32:44 +00:00
Mark Banner 8c00ef3f30 Bug 1512052 - Add more .eslintrc.js files for test directories. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D13746

--HG--
extra : moz-landing-system : lando
2018-12-11 13:15:08 +00:00
Emilio Cobos Álvarez 4591031b65 Bug 1513012 - Move overflow to use cbindgen. r=heycam
It's one of the most annoying / hacky mako bits we have.

Differential Revision: https://phabricator.services.mozilla.com/D14084
2018-12-11 03:07:08 +01:00
Cameron McCormack 1db3f9da78 Bug 1512716 - Re-indent NS_QUERYFRAME macros after clang-format. r=TYLin
Differential Revision: https://phabricator.services.mozilla.com/D13995

--HG--
extra : moz-landing-system : lando
2018-12-07 20:00:18 +00:00
Miko Mynttinen aafa85ee9d Bug 1512251 - Remove unused render only selection code r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D13829

--HG--
extra : moz-landing-system : lando
2018-12-06 19:40:50 +00:00
Daniel Holbert 7c3b31a25d Bug 1512112: Remove redundant includes from source files in layout. r=TYLin
All of the removed includes are redundant (i.e. they're #included elsewhere in
the same file).

In most cases, I'm removing the second (redundant) copy of the
#include, except when that copy makes more sense (i.e. if it's in better sorted
order, or if it's paired alongside a closely-associated header while the
earlier copy is not).

Here's the script that I used to generate candidates here -- I ran this in
every subdirectory of layout, on my linux machine (warning, this writes two
files to your /tmp directory):

for FILE in *.h *.cpp; do
  nonunique=$(grep \#include $FILE | grep -v List\.h | cut -f2 -d'"'  | cut -f2- -d'/'| cut -f2- -d'/' | sort | wc -l)
  unique=$(   grep \#include $FILE | grep -v List\.h | cut -f2 -d'"'  | cut -f2- -d'/'| cut -f2- -d'/' | sort | uniq | wc -l)
  if [[ "$unique" != "$nonunique" ]]; then
    echo "$FILE: $nonunique / $unique"
    grep \#include $FILE | cut -f2 -d'"'  | grep -v List\.h | cut -f2- -d'/'| cut -f2- -d'/' | sort  > /tmp/nonunique.txt
    grep \#include $FILE | cut -f2 -d'"'  | grep -v List\.h | cut -f2- -d'/'| cut -f2- -d'/' | sort | uniq  > /tmp/unique.txt
    diff /tmp/nonunique.txt /tmp/unique.txt
    echo
  fi
done

Depends on D13773

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

--HG--
extra : moz-landing-system : lando
2018-12-05 18:55:59 +00:00
Daniel Holbert e590a79e70 Bug 1512054 part 2: Fix alphabetical sorting of SVGObserverUtils.cpp's includes. r=TYLin
(Also, include the full export path when including 'ImageLoader.h', for
consistency with how we include it everywhere else outside of its own
directory.)

Depends on D13743

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

--HG--
extra : moz-landing-system : lando
2018-12-05 15:20:58 +00:00
Daniel Holbert a708b9e3d6 Bug 1512054 part 1: Add some needed "Inlines" includes to .cpp files in layout, to address some -Wundefined-inline build warnings in non-unified builds. r=TYLin
I'm also adding the non-"inlines" version of the added "inlines" includes, too,
since it's nice to have them included as a pair. (It's not strictly necessary,
since in these cases we were already indirectly including the non-"inlines"
header, but it seems like a good practice.)

This patch fixes build warnings in non-unified builds for the following calls:
- The call to IsColumnSpan() in layout/generic/ColumnSetWrapperFrame.cpp
- The call to Type() in layout/style/MappedDeclarations.cpp
- The call to IsInAnonymousSubtree() in layout/svg/SVGObserverUtils.cpp

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

--HG--
extra : moz-landing-system : lando
2018-12-05 02:03:04 +00:00
Cameron McCormack 1ea7c3efc9 Bug 1511854 - Part 2: Fix some more formatting oddities in layout/ after the clang-format. r=TYLin
Depends on D13686

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

--HG--
extra : moz-landing-system : lando
2018-12-05 18:44:05 +00:00
Cameron McCormack a9c935c355 Bug 1511854 - Part 1: Fix some formatting oddities in layout/ after the clang-format. r=TYLin
Differential Revision: https://phabricator.services.mozilla.com/D13686

--HG--
extra : moz-landing-system : lando
2018-12-05 18:44:03 +00:00
Ciure Andrei ed617be144 Backed out 2 changesets (bug 1512052)for causing build bustages CLOSED TREE
Backed out changeset 4773a3f46c22 (bug 1512052)
Backed out changeset 2f48c5afbe57 (bug 1512052)

--HG--
rename : browser/components/attribution/test/xpcshell/.eslintrc.js => browser/components/attribution/test/.eslintrc.js
2018-12-05 05:47:39 +02:00
Mark Banner 8256078237 Bug 1512052 - Add more .eslintrc.js files for test directories. r=mossop
Depends on D13745

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

--HG--
extra : moz-landing-system : lando
2018-12-04 22:27:35 +00:00
longsonr 3d04ba9c9e Bug 1515187 - Part 4 Rename nsSVGElement to SVGElement and put it in the mozilla:dom namespace r=dholbert
--HG--
rename : dom/svg/nsSVGElement.cpp => dom/svg/SVGElement.cpp
rename : dom/svg/nsSVGElement.h => dom/svg/SVGElement.h
2018-12-21 08:58:14 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Shubham Kumaram b87c4f4c0c Bug 1509664 - Change Text Rendering constants to enum classes in nsStyleConsts.h. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D12839

--HG--
extra : moz-landing-system : lando
2018-11-30 05:08:46 +00:00
Jonathan Watt 5b2fef1b25 Bug 1510295. Stop SVGRenderingObserver subclasses observing reflow, except for -moz-element. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D13080

--HG--
extra : rebase_source : 692e0a777cfda1e74bb316083d5e44f70f322653
extra : amend_source : 97c8d78924c0951d6da008cafcb06cdfe2222b6d
2018-11-14 10:39:12 +00:00
Jonathan Watt e1daf3de62 Bug 1504918. Prevent TextNodeCorrespondenceRecorder::TraverseAndRecord crash. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D11107

--HG--
extra : rebase_source : 37402fd613be1ae8916434c7600252b391a45fbf
2018-11-13 16:49:21 +00:00
Jonathan Watt 4c1b207664 Bug 1510116. Fix some unified build issues in layout code. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D13039

--HG--
extra : rebase_source : f0b6516484ed97ed52b92e04617f89e4ee8189ff
2018-11-12 22:20:52 +00:00
Daniel Varga ef4c0efcc4 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-11-27 07:36:22 +02:00
Coroiu Cristina a2f107533b Merge mozilla-central to autoland a=merge on a CLOSED TREE 2018-11-27 01:03:16 +02:00
Kartikaya Gupta 573d3aec36 Bug 1508822 - Guard against trying to create an oversized DrawTargetRecording with WebRender. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D12950

--HG--
extra : moz-landing-system : lando
2018-11-26 18:14:59 +00:00
Jeff Muizelaar 5624b1e36e Bug 1507021. Use SnappedRectangle in more places. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D11840

--HG--
extra : moz-landing-system : lando
2018-11-19 23:03:32 +00:00
Timothy Guan-tin Chien 2b5881e46b Bug 1503019 - Part I, Remove dom.webcomponents.shadowdom.enabled r=smaug
This patch removes the dom.webcomponents.shadowdom.enabled pref and all its
references, including the following functions:

* nsContentUtils::IsShadowDOMEnabled()
* nsIDocument::IsShadowDOMEnabled()
* nsDocument::IsShadowDOMEnabled(JSContext* aCx, JSObject* aGlobal)
* nsDocument::IsShadowDOMEnabled(const nsINode* aNode)
* nsTextNode::IsShadowDOMEnabled(JSContext* aCx, JSObject* aObject)

This function is renamed and updated to nsDocument::IsCallerChromeOrAddon():

* nsDocument::IsShadowDOMEnabledAndCallerIsChromeOrAddon(JSContext* aCx, JSObject* aObject)

I didn't change the tests that load Shadow DOM tests in an iframe, in the interest of keeping hg annotation history.

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

--HG--
extra : moz-landing-system : lando
2018-11-15 06:51:07 +00:00
Andreea Pavel 6a58f5fcea Backed out 2 changesets (bug 1507021) for android build bustages on a CLOSED TREE
Backed out changeset 026f135a667f (bug 1507021)
Backed out changeset 1b87eb56e462 (bug 1507021)

--HG--
extra : amend_source : 4d51378a27f24f3d87d9b7a206c78ff962e3b663
2018-11-15 06:35:54 +02:00
Jeff Muizelaar 1d2422df54 Bug 1507021. Use SnappedRectangle in more places. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D11840

--HG--
extra : moz-landing-system : lando
2018-11-14 22:47:35 +00:00
Jonathan Watt 469a9f409b Bug 1508358. Avoid clang-format messing up Doxygen comments in SVG code. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D12336

--HG--
extra : rebase_source : fcda515ec3fe76f38aa9b18d618f02b877aeabef
2018-11-05 07:03:55 +00:00
Andreea Pavel d51566f085 Backed out 2 changesets (bug 1503019) for failing crashtests at dom/base/crashtests/1505811.html on a CLOSED TREE
Backed out changeset 06b12fd41ff1 (bug 1503019)
Backed out changeset 7b845eac9dd7 (bug 1503019)
2018-11-15 01:52:30 +02:00
Timothy Guan-tin Chien c0cc4f74e7 Bug 1503019 - Part I, Remove dom.webcomponents.shadowdom.enabled r=smaug
This patch removes the dom.webcomponents.shadowdom.enabled pref and all its
references, including the following functions:

* nsContentUtils::IsShadowDOMEnabled()
* nsIDocument::IsShadowDOMEnabled()
* nsDocument::IsShadowDOMEnabled(JSContext* aCx, JSObject* aGlobal)
* nsDocument::IsShadowDOMEnabled(const nsINode* aNode)
* nsTextNode::IsShadowDOMEnabled(JSContext* aCx, JSObject* aObject)

This function is renamed and updated to nsDocument::IsCallerChromeOrAddon():

* nsDocument::IsShadowDOMEnabledAndCallerIsChromeOrAddon(JSContext* aCx, JSObject* aObject)

I didn't change the tests that load Shadow DOM tests in an iframe, in the interest of keeping hg annotation history.

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

--HG--
extra : moz-landing-system : lando
2018-11-14 19:34:52 +00:00
Nicolas Silva 9c33903470 Bug 1468183 - Support a subset of SVG color matrix filters in WebRender. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D10057

--HG--
extra : source : 3cf0ebaa5e9585c5edcd8d69cef4031245d9d0d9
extra : intermediate-source : 892a9ebfd75ec7200cec879b43f7834f3f509d36
2018-11-02 19:30:47 +01:00
Nicolas Silva 1b186dddd4 Bug 1485512 - Try to express SVG filters as CSS filters when possible. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D8085

--HG--
extra : source : 28104a88b5855f21395f60192ab3f86325931915
extra : intermediate-source : 4a9ee25e545696b17ba09e2b7c9f702ab3d0efc1
2018-11-02 19:01:14 +01:00
Jonathan Watt 42169bf3aa Bug 1509394. Fix pointer events regression for SVG clipPath clipped content. r=longsonr
References to a clipPath that is non-existent or invalid should be ignored,
not cause the referencing element to ignore pointer events.

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

--HG--
extra : rebase_source : 1cbe01a0fbb6b6dc8144427b45ec9af374055e32
2018-11-12 14:59:31 +00:00
Jonathan Watt 705aa1c0d7 Bug 1505498. Rename IDTracker::Reset to something more descriptive. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D11199

--HG--
extra : rebase_source : 0cf198a1eacb23a533b2f93eb80c33476018acda
extra : amend_source : 2245208957d917cb3e9524b573169059f5ce9e16
2018-10-29 10:42:14 +00:00
Ting-Yu Lin 1d9848a22a Bug 916972 - Eliminate nsIFrame::GetSplittableType() completely. r=mats,dholbert
Currently, GetSplittableType() is called only in
nsCSSFrameConstructor::CreateContinuingFrame(). The splittable concrete frames
should inherit from nsSplittableFrame, and must explicitly create continuing
frame in CreateContinuingFrame(). Thus, no need to maintain GetSplittableType().

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

--HG--
extra : moz-landing-system : lando
2018-11-05 19:11:12 +00:00
Emilio Cobos Álvarez c52a218234 Bug 1504078 - Use references in the shapes code. r=bradwerth,TYLin
It doesn't make much sense to return const UniquePtr<Foo>& for something that
can't be null, it's just confusing.

Also make more stuff actually const.

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

--HG--
extra : moz-landing-system : lando
2018-11-02 18:19:06 +00:00
Emilio Cobos Álvarez 622bf3097d Bug 1502936 - Fix SVGUseElement::GetFrame to not get confused. r=heycam
Should've noticed in bug 1502658 that GetFrame() was dead, to verify its
assumptions... Oh well.

Differential Revision: https://phabricator.services.mozilla.com/D10109
2018-10-29 23:27:10 +01:00
Emilio Cobos Álvarez d4ae853741 Bug 1502658 - Remove SVG use attribute change handling code from nsSVGUseFrame to SVGUseElement. r=longsonr
Most of those shouldn't rely on a frame to run.

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

--HG--
extra : moz-landing-system : lando
2018-10-28 23:20:43 +00:00
longsonr 34f04a3465 Bug 1501057 - Trivial clipPaths should respect visibility=hidden r=dholbert 2018-10-24 06:01:57 +01:00
Emilio Cobos Álvarez d62a793992 Bug 1500575 - Map inset clip paths to WR complex clip regions. r=kats
Differential Revision: https://phabricator.services.mozilla.com/D9412

--HG--
extra : moz-landing-system : lando
2018-10-23 00:10:00 +00:00
Cameron McCormack a7510da8d0 Bug 1499408 - Part 2: Have css::URLValue get URLExtraData from its CssUrlData. r=emilio
MozReview-Commit-ID: IqZGzkHlSZD

Depends on D8874

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

--HG--
extra : moz-landing-system : lando
2018-10-17 09:43:32 +00:00