Commit Graph

3490 Commits

Author SHA1 Message Date
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
Andrew Osmond
4590e9df52 Bug 1466707 - Ensure that animated images always honour the animated image mode. r=tnikkel
Animated images inside of SVGs and used in XUL frames did not get the
configured animation image mode from the pres context.

Differential Revision: https://phabricator.services.mozilla.com/D8586
2018-10-16 08:50:44 -04:00
Cameron McCormack
eeb8da104f Bug 1495994 - Part 4: Merge css::{URLValueData, ImageValue} into css::URLValue r=emilio
Depends on D7595

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

--HG--
extra : moz-landing-system : lando
2018-10-10 02:58:20 +00:00
Jonathan Watt
5933668f75 Bug 1495877. Standardize the GetAndObserve* naming for SVGObserverUtils methods. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7538

--HG--
extra : rebase_source : c042fc33cc12ca59b55cdaaf59914ab91baa8b05
2018-09-25 21:16:49 +01:00
Jonathan Watt
1afc0b4ff4 Bug 1495851. Comment why StopObserving is called in SVGRenderingObserver base class dtors. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7525

--HG--
extra : rebase_source : 136b2757f572b42b89af23554da3d93822b140f8
2018-09-25 10:40:12 +01:00
Jonathan Watt
d42f097af8 Bug 1495562. Rename SVGRenderingObserverList to SVGRenderingObserverSet. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7330

--HG--
extra : rebase_source : a8f71572d103c6ad5a84d5ad14a8d83bf2af5d5c
extra : source : ec5d3c12ad4c9b8d3c2eea2b0f71f5dc3c15f15f
2018-09-24 11:45:17 +01:00
Narcis Beleuzu
010feac062 Backed out 2 changesets (bug 1495562, bug 1495554) for crashes on [@ CrashReporter::TerminateHandler()] . CLOSED TREE
Backed out changeset ec5d3c12ad4c (bug 1495562)
Backed out changeset 28792d9adea2 (bug 1495554)
2018-10-02 02:58:09 +03:00
Jonathan Watt
219a2f9e91 Bug 1495562. Rename SVGRenderingObserverList to SVGRenderingObserverSet. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7330

--HG--
extra : rebase_source : 6c843092611056972c991175fa18f37cfad57402
2018-09-24 11:45:17 +01:00
Jonathan Watt
930cf1de0f Bug 1495554. Call StopObserving in SVGRenderingObserver's dtor instead of individual subclasses' dtors. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7328

--HG--
extra : rebase_source : 8cf78efc46d4e94d0328742e836fefab3c977060
2018-09-21 21:16:49 +01:00
Jonathan Watt
da5346d105 Bug 1495438. Move most code from SVGObserverUtils.h to its source file. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7293

--HG--
extra : rebase_source : 975eac166d25864e998a01d0f353aab353a115d6
2018-09-21 19:09:41 +01:00
Jonathan Watt
c928198204 Bug 1495390. Inline some SVGObserverUtils code. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7269

--HG--
extra : rebase_source : a7739af3656295de179b4166ddc163b394ba1513
2018-09-21 12:46:18 +01:00
Jonathan Watt
163d5851d1 Bug 1495330. Hide SVGObserverUtils implementation details from nsImageRenderer. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7257

--HG--
extra : rebase_source : 040f99a33f43de3a92591bc47def2b129d0da3f6
2018-09-20 13:50:23 +01:00
Jonathan Watt
6d7998277a Bug 1495215. Separate out the SVGObserverUtils mask handling from EffectProperties. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7242

--HG--
extra : rebase_source : 00c2c87e8fc6fc3ae874139b9a9b8b6b1cb4d877
2018-09-19 15:54:27 +01:00
Jonathan Watt
0c92d1efeb Bug 1495249. Make ComputePostEffectsVisualOverflowRect use the first continuation/block-in-inline sibling for SVG. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7245

--HG--
extra : rebase_source : fc013437e171b905f1664af2ac08582eec814a4b
2018-09-18 10:40:12 +01:00
Jonathan Watt
85d30e0f2c Bug 1495034. Separate out the SVGObserverUtils clip path handling from EffectProperties. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7194

--HG--
extra : rebase_source : d8137eb0f1b91fe926d04bfb3d7197c11d6402e7
extra : amend_source : c0faf32401c08471c6acb52b5eb36571ceaeb951
2018-09-05 18:12:44 +01:00
Jonathan Watt
c506a0013f Bug 1494953 p2. Make nsFrame::DidSetComputedStyle initiate external filter loads. r=longsonr
In bug 1488300 xidorn make us kick off loading of masks/filters/clipPaths in
resource documents when the style context is set so that the 'load' event
will be blocked until they load.  I missed that in 5177bb8cb2ce (bug 1494355)
where we stopped creating the SVGFilterObserverList in
SVGObserverUtils::GetEffectProperties since I missed that creating that object
looks up the target element (without observing it), which triggers loading of
external resources as necessary.

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

--HG--
extra : rebase_source : 698fe4b437660761e457ecf54d8d604a098229db
extra : amend_source : 3ae9f25761372ee6a33bd4043c7bf6183361ca58
2018-09-04 13:50:22 +01:00
Jonathan Watt
7b3a3b2d10 Bug 1494953 p1. Rename lots of SVGObserverUtils functions. r=longsonr
The lack of clarity over which functions initiate observing and which don't
is a headache since it makes it hard to reason about what's going on. This
rename makes it explicit in the function names.

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

--HG--
extra : rebase_source : 1f2f86423a9bee7843533c09b3ea78416b233bcd
extra : amend_source : a89125d6a3b7b75a4056c4d600de74a5386ac4ff
2018-09-04 10:04:07 +01:00
Jonathan Watt
73f875346b Bug 1494830. Stop leaking SVGFilterObserverList details into nsSVGIntegrationUtils. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7150

--HG--
extra : rebase_source : d4c1b44f851b01a1060cf8567f2eb4ec7bd7859c
2018-09-03 18:09:41 +01:00
Jonathan Watt
61bcaa65a9 Bug 1494820. Stop leaking SVGObserverUtils implementation details into CanvasRenderingContext2D. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7148

--HG--
extra : rebase_source : 95ff24bd2a5656fc4d6708a515f9a869370bd338
2018-09-03 11:24:27 +01:00
Jonathan Watt
8b400ea6ce Bug 1494695. Remove SVGFilterElement::Invalidate. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7095

--HG--
extra : rebase_source : 951c95ceef8ce6682ed867aa96c88283c64ccbd1
extra : __touch-noise__ : 4288727139
extra : amend_source : ad0a1fcb56b4c1ad08f54142cac64c1ab7d7300b
2018-08-31 16:30:03 +01:00
Jonathan Watt
64d88eee9b Bug 1494604. Remove nsSVGUtils::NotifyAncestorsOfFilterRegionChange. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D7072

--HG--
extra : rebase_source : 846bccfd360b0468047445459eb51b33a7cf507d
extra : amend_source : 0f7283efd3ea538de00573b9b5896f2f43ba0212
2018-08-31 13:53:25 +01:00
Jonathan Watt
0d889dc646 Bug 1494355. Separate out the SVGObserverUtils filter handling from EffectProperties. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D6930

--HG--
extra : rebase_source : cb3c301ae0fee233ae881c384499340c678e1874
2018-08-29 19:11:43 +01:00
Jonathan Watt
8c224bc9d8 Bug 1494321 p2. Stop doing wasteful pre/post-effects work for frames with just a clip-path or mask applied. r=miko
Differential Revision: https://phabricator.services.mozilla.com/D6924

--HG--
extra : rebase_source : 426e4b6d854644db1524d235651667e23d9c4908
2018-08-28 21:51:23 +01:00
Jonathan Watt
c818957c6f Bug 1494321 p1. Fix bug in PreEffectsVisualOverflowCollector::GetPreEffectsVisualOverflowRect. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D6987

--HG--
extra : rebase_source : eb0248f653adbd1c57c4b61d02ffdea615464069
2018-08-28 13:05:37 +01:00
Jonathan Watt
b389c507af Bug 1494092. Remove SVGFilterObserverList::IsInObserverLists and related code. r=mattwoodrow
This code is no longer necessary since we now invalidate using Display List
Based Invalidation instead of using recursive calls up the frame tree.

The tests that are marked as failing have only been passing due to a bug in the
code that's being removed from nsSVGIntegrationUtils.cpp which coincidentally
hides the fact that we are actually invalidating in those tests given their
particular structure (which the tests are supposed to be checking we're not
doing).

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

--HG--
extra : rebase_source : cb95359d694dafeca915a22b3c48f580a69679ef
extra : amend_source : 7074f5837170ce0a9243811291782f689666e122
2018-08-27 17:05:37 +01:00
Jonathan Watt
a5a808ee8e Bug 1493406. Hide the implementation details of SVG rendering observers for template elements. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D6569

--HG--
extra : rebase_source : 3ee7f77ec68f2735a24d44955d6bfca2fbdc3f47
2018-08-21 14:54:26 +01:00
Robert Longson
1b9177a3e6 Bug 1474982 - Fix asertion failure when lengthAdjust value is empty r=heycam 2018-09-23 15:53:03 +01:00
Jeff Muizelaar
90fbfc8d8a Bug 1447880. Paint nsDisplayMasks directly instead of using a BasicLayerManager. r=mstange
This allows us to invalidate individual items inside of the mask instead of
treating the mask and it's children as a single item.

Differential Revision: https://phabricator.services.mozilla.com/D6224
2018-09-21 18:50:23 -04:00
Jeff Muizelaar
f2485f9b16 Bug 1447880. Allow PaintMaskAndClipPath to support different ways of painting its children. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D6223
2018-09-21 18:50:08 -04:00
Jonathan Watt
1cf9fbd0c7 Bug 1493049 - Stop using nsSVGPaintingProperty for observing SVG "template" elements. r=longsonr
Using nsSVGPaintingProperty to observe SVG "template" elements means that we
unnecessarily call InvalidateFrameSubtree(), and unnecessarily call
InvalidateRenderingObservers instead of just calling
InvalidateDirectRenderingObservers.  Besides that it's confusing to anyone
trying to understand the code why href-to-template is a "painting" property.
Creating a new type solves all these issues.

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

--HG--
extra : rebase_source : cd3e731cf08d008096bf5ff20592a28fdfaf4a1b
2018-08-17 16:57:30 +01:00
Jonathan Watt
7f62854eb1 Bug 1492883 p2. Hide the implementation details of SVG rendering observers for markers. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D6411

--HG--
extra : rebase_source : d4f1b8ce33809c4664ea2ebe593462bae31db58d
2018-08-16 18:08:21 +01:00
Jonathan Watt
b03fed78da Bug 1492883 p1. Rationalize the SVG marker frame property names. r=longsonr
This is necessary to keep the GET_MARKER macro in the next patch clean.

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

--HG--
extra : rebase_source : 44a6eb861a1fd8d2037eda05c0f99c0bba3f1417
2018-08-16 11:54:27 +01:00
Jonathan Watt
90314b1dd6 Bug 1492573. Make SVGTextFrame ignorant of the implementation details of SVG rendering observers. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D6320

--HG--
extra : rebase_source : fb88b6e2a87dc2e766974cff1ffed1f11a86f5e5
2018-08-15 21:32:04 +01:00
Jonathan Watt
f8e64cb389 Bug 1492432. Remove PaintingPropertyDescriptor parameter from SVGObserverUtils::GetPaintServer. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D6250

--HG--
extra : rebase_source : 3f9c4a0252ba62db90c908f4021072a22097ec55
2018-08-15 11:54:27 +01:00
Jeff Muizelaar
b7ef76c888 Bug 1480160. Add crash test for masked 3d transforms r=mstange
In the grouper code we don't currently support active masks so
this makes sure that we handle 3d transforms that are inactive.

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

--HG--
extra : moz-landing-system : lando
2018-09-21 03:41:43 +00:00
Cameron McCormack
0f4ffbd8c2 Bug 1492694 - Treat invalid in="" attributes as if they weren't specified r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D6355

--HG--
extra : moz-landing-system : lando
2018-09-20 07:07:47 +00:00
Doug Thayer
f0ed0dee36 Bug 1417699 - Remove PrimitiveType enum r=mstange
Ran into a couple of test failures because I was leaving
mAttributes empty for empty things like MergeAttributes, and
only setting mType. Since mType is now redundant though, and
since it's the only use of PrimitiveType, I figured I'd just
remove it entirely.

Depends on D4900

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

--HG--
extra : moz-landing-system : lando
2018-09-19 17:18:44 +00:00
Doug Thayer
e79792a58a Bug 1417699 - Replace hash map with tagged union r=mstange
This replaces the hash map of attributes with a tagged union. In
this case, all filter attributes will be stored in line, with the
exception of some more complex attributes which have an internal
nsTArray of floats. This should help avoid all the hashing and
extra heap allocations.

Depends on D4899

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

--HG--
extra : moz-landing-system : lando
2018-09-19 17:18:16 +00:00
Doug Thayer
39b28dbb28 Bug 1417699 - Avoid copies of filter attributes when possible r=mstange
This is a more conservative optimization for bug 1417699. There's no
reason we need to be copying these everywhere, so let's just go ahead
and implement moves.

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

--HG--
extra : moz-landing-system : lando
2018-09-19 17:17:43 +00:00
Robert Longson
dad3e866c1 Bug 1396642 - support smaller viewBox coordinates at the expense of larger ones r=dholbert 2018-09-18 19:43:53 +01:00
Thomas Nguyen
7f029744d5 Bug 1330487 - Part 7: Send correct Referrer header when referencing SVG from CSS r=heycam
MozReview-Commit-ID: DAkZ1wjuEe0

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

--HG--
extra : moz-landing-system : lando
2018-09-17 05:37:46 +00:00
Thomas Nguyen
fca5bf4852 Bug 1330487 - Part 6: Passing referrer information to svg style system r=heycam
We create new object URLExtraRefferINfo and pass it to svg system instead of
nsIURI. The object brings referrer and referrer policy so we can send correct
Referer headers.

MozReview-Commit-ID: 2gLnQPEE9t5

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

--HG--
extra : moz-landing-system : lando
2018-09-17 05:37:01 +00:00
Zhang Junzhi
7a64d2f663 Bug 1490611 - physical to logical name refactor: DISPLAY_*_WIDTH to DISPLAY_*_INLINE_SIZE(as well as the relevant struct in the macro contents) r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D5657

--HG--
extra : rebase_source : af0fc623d0b5d5e575bb03b08576709512bac4f3
2018-09-12 12:35:47 +00:00
Gurzau Raul
ee20d3cd7c Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-09-12 14:43:11 +03:00
Jeff Muizelaar
d43f067572 Bug 1486198. Be more accepting of empty blob images r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D5614

--HG--
extra : moz-landing-system : lando
2018-09-11 23:14:42 +00:00
Jonathan Watt
6fa9db3449 Bug 1488700 p12. Rename nsSVGMaskProperty to SVGMaskObserverList. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D5625

--HG--
extra : rebase_source : c2e1c5db2a817c0dbc6ffb9bc362b92924de0e5f
2018-08-13 16:27:59 +02:00
Jonathan Watt
d580509f71 Bug 1488700 p11. Rename nsSVGTextPathProperty to SVGTextPathObserver. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D5624

--HG--
extra : rebase_source : c991e7eb377f97e994ad990b1e8cdfb1300bc9f6
2018-08-13 14:47:19 +02:00
Jonathan Watt
8d531dea08 Bug 1488700 p10. Rename nsSVGMarkerProperty to SVGMarkerObserver. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D5623

--HG--
extra : rebase_source : 6409581ab4c559fda1fa7888b2ebf33030055dec
2018-08-13 14:03:35 +02:00
Jonathan Watt
9b010a0e34 Bug 1488700 p9. Rename nsSVGFilterProperty to SVGFilterObserverListForCSSProp. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D5622

--HG--
extra : rebase_source : 1018e7125d0d5477701a448a52507d29b924b068
2018-08-13 12:49:21 +02:00
Jonathan Watt
0d7aef1b78 Bug 1488700 p7. Rename nsSVGFilterChainObserver to SVGFilterObserverList. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D5619

--HG--
extra : rebase_source : 57f4bf14b801b4d723969843e7d54a86f97917ab
2018-08-13 11:38:11 +02:00
Jonathan Watt
e729179571 Bug 1488700 p6. Rename nsSVGFilterReference to SVGFilterObserver. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D5617

--HG--
extra : rebase_source : 32075c4e95fbedb102e94584330bcb0315d43fab
2018-08-13 10:39:12 +02:00
Jonathan Watt
ac6f67ef4f Bug 1488700 p5. Get rid of nsISVGFilterReference. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D5079

--HG--
extra : rebase_source : 3ad29efa0666b870cb3683b854919cc2d8514ad0
2018-08-09 20:15:48 +02:00
Jonathan Watt
886e2b8ae4 Bug 1488700 p4. Rename nsSVGIDRenderingObserver to SVGIDRenderingObserver. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D5026

--HG--
extra : rebase_source : b9a11dbf110f99820e0538368305ad3d3230b85a
2018-08-09 14:16:49 +02:00
Jonathan Watt
3023d05065 Bug 1488700 p3. Rename nsSVGRenderingObserversList to SVGRenderingObserversList. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D5024

--HG--
extra : rebase_source : 5cd20ef1df1fe40a331e284362672df988046fc3
2018-08-09 12:54:26 +02:00
Jonathan Watt
b5333d12ac Bug 1488700 p2. Rename nsSVGRenderingObservers to SVGRenderingObservers. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D5023

--HG--
extra : rebase_source : 97181ea49b14c2d478a20828ef3c5974e04e526c
2018-08-09 11:29:01 +02:00
Jonathan Watt
2d7cf8e7ba Bug 1488700 p1. Put the SVG rendering observer code in the mozilla namespace. r=longsonr
Differential Revision: https://phabricator.services.mozilla.com/D5022

--HG--
extra : rebase_source : b6ba9ea7d984d07c7aa42a30828bf9072d10e02d
2018-08-09 11:04:36 +02:00
Jeff Muizelaar
07e9250f5d Bug 1449634. Handle foreignobject better with blob invalidation. r=mstange
Turn off grouping and switch to regular WebRender building when
we encounter a foreignobject.

MozReview-Commit-ID: 6fHc4Ioi22N
2018-09-06 16:10:51 -04:00
Gerald Squelart
b099eab802 Bug 1488684 - Made nsIFrame-derived classes and some others 'final' where possible - r=dbaron
All classes deriving from nsIFrame that did not have any subclasses themselves
(at the time of writing this patch) have been marked with `final`.
Some other Layout classes have also been made final, but this was opportunistic
while working on nsIFrame subclasses, and is definitely not exhaustive, further
patches welcome; refer to bug 1332680.

Advantages of marking a class final include:
- Allowing the compiler to devirtualize some method calls (i.e., calling
  virtual functions directly instead of going through the vtable),
- Indicating that the class is not currently subclassed,
- Preventing subclassing without being aware that this would remove the
  finalization benefits of the parent class.
`final` does not signify that these classes should *never* be subclassed, this
is left for developers to decide.

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

--HG--
extra : moz-landing-system : lando
2018-09-06 01:23:14 +00:00
Emilio Cobos Álvarez
f105c67c35 Bug 1471583. Add a new ImgDrawResult variant to distinguish INCOMPLETE and 'fully drew an image which wasn't really complete'. r=tnikkel 2018-08-29 00:53:08 -05:00
Boris Chiou
63d06d8017 Bug 1246764 - Part 4: Rename mask flag and function name of xxxBasicShape to xxxBasicShapeOrPath. r=jwatt
This flag and function name are used for both basic shapes and path function,
so rename it. For now, we treat path() and other basic-shapes as the
different object (i.e. StyleSVGPath and StyleBasicShape), so I rename
these functions and mask flag.

Differential Revision: https://phabricator.services.mozilla.com/D3636
2018-08-24 11:37:57 -07:00
Boris Chiou
7ba34b6df6 Bug 1246764 - Part 3: Layout part for |clip-path: path()|. r=jwatt
Create clip-path for the path function and reuse some APIs in
nsCSSClipPathInstance, so we don't have to update the code flow.

Differential Revision: https://phabricator.services.mozilla.com/D3635
2018-08-24 11:37:55 -07:00
Emilio Cobos Álvarez
c1a9351458 Bug 1480275: Handle nested use shadow trees properly when the ID target changes. r=heycam
We end up with three <svg:use> elements to update (lol), because the target (#c)
changes, since we create another element with that ID in the document via
outerHTML.

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

--HG--
extra : moz-landing-system : lando
2018-08-20 00:32:56 +00:00