Commit Graph

3240 Commits

Author SHA1 Message Date
dvarga
87db76ae1a Merge mozilla-central to mozilla-inbound on a CLOSED TREE
--HG--
extra : rebase_source : c9e6b9edae9ecf064d1318fa15d5d57ea42c102a
2018-08-16 01:22:36 +03:00
Daniel Holbert
0878eb4d7e Bug 1483394: Remove unneeded #includes of nsContentUtils.h in /layout. r=TYLin
For each file touched in this patch, the file had an #include for nsContentUtils.h, but no other mentions of the string "nsContentUtils", nor any mention of its "ScriptBlocker"-related types. So these files likely don't need their nsContentUtils.h include anymore, and we can remove it to get a marginal win on build time/complexity.

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

--HG--
extra : moz-landing-system : lando
2018-08-15 07:04:43 +00:00
Emilio Cobos Álvarez
d3a88bafc5 Bug 1480224: It's not needed to explicitly exclude <use> trees from XBL scopes anymore. r=smaug
Now that the content is not anonymous we don't need to exclude them explicitly.

This happens because anonymous content inside the shadow tree does report to be
inside the shadow tree, which is true but at the same time slightly footgunny.

In any case the other uses of the use shadow tree stuff are base-uri related,
and changing anon content's base uri in that case sounds like the right thing,
even though anon content shouldn't rely on those anyway.

Differential Revision: https://phabricator.services.mozilla.com/D3409
2018-08-15 15:26:23 +02:00
Margareta Eliza Balazs
9575863d77 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-08-14 12:35:25 +03:00
Xidorn Quan
33b8a6dacd Bug 1483090 - Rename StyleUserInterface to StyleUI. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D3276

--HG--
extra : moz-landing-system : lando
2018-08-14 08:37:37 +00:00
Ting-Yu Lin
48d02834a5 Bug 1482665 Part 2 - Remove nsPresContext::AppUnitsPerCSSPixel() and replace it with mozilla::AppUnitsPerCSSPixel(). r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D3155
2018-08-13 14:29:28 -07:00
L. David Baron
aad8d26078 Bug 1479859 patch 3 - Add an nsIFrame::IsFrameOfType bit to say whether frames support contain:layout and contain:paint. r=dholbert
This is needed for patch 4.

This is based both on the wording in the spec and the discussion in
https://github.com/w3c/csswg-drafts/issues/2987, and also doesn't
support them for nsMathMLContainerFrame, which is similar to inlines and
ruby.

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

--HG--
extra : rebase_source : b7e23fb248fa34957ca2d539134e872f5a03f5a8
2018-08-07 15:02:07 -07:00
Emilio Cobos Álvarez
68f214df2a Bug 1450250: Make svg:use use an actual shadow tree. r=heycam
Summary:
This fixes a couple fuzz bugs and prevents special-casing <svg:use> even more in
bug 1431255.

Unfortunately not as many hacks went away as I'd have hoped, since we still need
to match document rules, see the linked SVGWG issues.

But blocks_ancestor_combinators goes away, which is nice since it's on a very
hot path.

Test Plan: WPT for style invalidation, covered by existing tests otherwise.

Reviewers: heycam

Tags: #secure-revision

Bug #: 1450250

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

MozReview-Commit-ID: C4mthjoSNFh
2018-07-20 14:44:51 +02:00
Bas Schouten
db16820b25 Bug 1473937 - Part 3: Use Moz2D Opacity filter inside Gecko filter code. r=mstange 2018-07-17 21:11:14 +02:00
Dan Glastonbury
c9c954a337 Bug 1467622 - P1: nsStyleSVGPaint - Change nscolor to StyleComplexColor. r=xidorn
MozReview-Commit-ID: 1bbQzOoOuBe

--HG--
extra : rebase_source : 1631a71a78b0e6fbc4842ee14e11e946a5063afa
2018-06-27 17:07:37 +10:00
Matt Woodrow
9171c79a67 Bug 1372458 - Fold opacity into filter drawing rather than using a temporary surface. r=bas,mstange
MozReview-Commit-ID: GOBTUhN7fcC

--HG--
extra : rebase_source : 8355d2001dcc8fba5e43d4ace6483896a9d9cd31
2018-07-14 15:25:49 +12:00
Ting-Yu Lin
5f1b665033 Bug 1286882 - Make SVG basic shape elements unselectable. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D2038

--HG--
extra : moz-landing-system : lando
2018-07-13 18:01:48 +00:00
Bogdan Tara
ccc435c216 Backed out changeset 2de43bdd92a8 (bug 1286882) for failures on test_text_selection.html CLOSED TREE 2018-07-12 05:23:44 +03:00
Ting-Yu Lin
5cb4683f78 Bug 1286882 - Make SVG basic shape elements unselectable. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D2038

--HG--
extra : moz-landing-system : lando
2018-07-12 00:42:51 +00:00
Brindusan Cristian
232d35f4b9 Backed out 5 changesets (bug 1467622) for reftest failures on layout/reftests/svg/smil/style/anim-css-fill-1-from-by-curcol-hex.svg. CLOSED TREE
Backed out changeset 8694fe928b04 (bug 1467622)
Backed out changeset 74533cad9479 (bug 1467622)
Backed out changeset e1dbee410e98 (bug 1467622)
Backed out changeset 56142038cc7f (bug 1467622)
Backed out changeset 90cede21bad1 (bug 1467622)
2018-07-11 09:37:26 +03:00
Dan Glastonbury
0a83cfb70f Bug 1467622 - P1: nsStyleSVGPaint - Change nscolor to StyleComplexColor. r=xidorn
MozReview-Commit-ID: 1bbQzOoOuBe

--HG--
extra : rebase_source : 879e7d644f1dc3873cdfb352fce21e3d085db55a
2018-06-27 17:07:37 +10:00
Kartikaya Gupta
78dba184db Bug 1461313 - Handle invalid clip-path URIs with WebRender. r=mstange
In the case of an invalid clip-path, the browser is supposed to discard the
mask entirely. In the non-webrender codepath this would happen
implicitly because the computed MaskUsage would have no flags set, and
so no actions would be taken on the gfxContext which contained the
display items rasterized so far. In the WebRender codepath, though, we
invoke the code on a A8 drawtarget that's zero-filled, so if PaintMask
fails to rasterize anything into it, it gets treated as a "mask everything
out" mask. Instead, this patch makes it so that we detect the scenario
where the computed MaskUsage is a no-op, and ensure that we don't apply
the mask in that case.

An alternative approach considered was to initialize the A8 drawtarget to
white instead of black but in cases where there is an actual mask, the
rest of the code assumes it is zero-filled and so that doesn't work.

MozReview-Commit-ID: Hw7nCiUXVJl

--HG--
extra : rebase_source : 241d550fa0ed1b3bd088c73d9565b166acbcece8
2018-07-05 08:05:34 -04:00
Dorel Luca
88782acd58 Backed out changeset 01837d6c41b6 (bug 1372458) for Reftest failures on layout/reftests/svg/filters-and-group-opacity-01.svg 2018-07-05 03:01:56 +03:00
Matt Woodrow
406499dd53 Bug 1372458 - Fold opacity into filter drawing rather than using a temporary surface. r=mstange
MozReview-Commit-ID: 6ByhxshY3uO

--HG--
extra : rebase_source : 7c0add57b0de49ede96ddb46f5dfd0b9f2cadb3c
2018-06-22 11:35:49 +12:00
Jeff Gilbert
5b753da289 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07:00
Chris Peterson
2afd829d0f Bug 1469769 - Part 6: Replace non-failing NS_NOTREACHED with MOZ_ASSERT_UNREACHABLE. r=froydnj
This patch is an automatic replacement of s/NS_NOTREACHED/MOZ_ASSERT_UNREACHABLE/. Reindenting long lines and whitespace fixups follow in patch 6b.

MozReview-Commit-ID: 5UQVHElSpCr

--HG--
extra : rebase_source : 4c1b2fc32b269342f07639266b64941e2270e9c4
extra : source : 907543f6eae716f23a6de52b1ffb1c82908d158a
2018-06-17 22:43:11 -07:00
Chris Peterson
f743d8e9dd Bug 1469769 - Part 4: svg: Replace failing NS_NOTREACHED with NS_ERROR. r=heycam
I'm replacing non-failing calls to NS_NOTREACHED with MOZ_ASSERT_UNREACHABLE, but this NS_NOTREACHED fails when running the dom/svg/crashtests/412104-1.svg test. This assertion failure is bug 903785.

This patch DOES NOT fix the cause of the assertion failure (a missing TextNodeCorrespondenceProperty). It just replaces this failing NS_NOTREACHED with NS_ERROR because I can't replace with a fatal MOZ_ASSERT_UNREACHABLE.

MozReview-Commit-ID: 8ffEdO5W1zU

--HG--
extra : rebase_source : 618008591b516e3b4b51871debcd0cf177a3f5b1
extra : intermediate-source : 099e1bbbc5b43b67ad9324464e4eec2e33d7eaa3
extra : source : f95d808c6f81b656c680d1dd005236571dedee20
2018-05-26 17:11:02 -07:00
Noemi Erli
aaac9a77dd Merge inbound to mozilla-central. a=merge 2018-06-25 22:02:08 +03:00
Emilio Cobos Álvarez
88831b3bc5 Bug 1470163: Move test_disabled to an iframe. r=heycam
MozReview-Commit-ID: Ks4bEVNxs82
2018-06-25 10:55:57 +02:00
Emilio Cobos Álvarez
bd7c1e4e8c Bug 1468133: Remove the optimization to lazily load non-SVG styles since it's not relevant anymore. r=heycam
This was a memory-saving optimization introduced as part of dependencies for bug
686875, but a more general system landed in bug 77999 for Gecko and
https://github.com/servo/servo/pull/18509 for Servo.

So now it's probably even a bit of a pessimization (though probably not huge),
and given this causes bugs like bug 1462742, bug 1157592, and bug 1468145, and
fishiness like the one pointed out in this bug, we may as well remove it.

The performance impact of having to lookup through more rules should be minimal
given the bloom filter and the rule hash optimizations.

This makes me wonder whether we could remove the whole concept of on-demand UA
sheets, since they've caused pain, for example, when the frontend people try
loading <svg>s from NAC (since that triggers sheet loading from frame
construction, which is not good). I'm not concerned about loading mathml.css and
svg.css everywhere, though xul.css may not be as doable since it adds a bunch of
attribute-dependent selectors. Though on the other hand I asserted in the
xul.css code and we don't load it in content with <video> / <input
type="date/time/etc"> and such, afaict, so maybe now that legacy addons are gone
we can remove that sheet from content processes altogether.

MozReview-Commit-ID: 9JCWNZj6BkT
2018-06-22 03:42:46 +02:00
Botond Ballo
f5745eb2a5 Bug 1459696 - Improve const-correctness of nsIFrame methods and functions that accept an nsIFrame* argument. r=mstange
MozReview-Commit-ID: 9IcL8kfMdIH

--HG--
extra : rebase_source : f8f19f528fe42aa119659ed9cb3340a257bb3716
2018-05-28 19:58:25 -04:00
Hiroyuki Ikezoe
afa2fcd95a Bug 1469220 - Backed out changeset 7fc66c715a0f and 39cb4d5f6602. r=mattwoodrow
Those changesets which are related to animations introduced in bug 1462497
seems to cause new crashes.  I think the first two changesets for the bug fixed
the original crash cases but the last two (i.e. these changesets) introduced
other crashes unfortunately.

MozReview-Commit-ID: 9LD2hIIXA2y

--HG--
extra : rebase_source : 102c5532128039dcf8274c214e17d58d9a1aa483
2018-06-18 06:16:07 +09:00
Andi-Bogdan Postelnicu
09ec36a025 Bug 1453795 - SVG - Initialize member fields in classes/ structures. r=jwatt
--HG--
extra : rebase_source : 244f0513af145c53fbc0177d2652cf68e20b64af
2018-06-16 13:54:44 +03:00
Emilio Cobos Álvarez
0c6c2df7a2 Bug 1468582: Remove using namespace statements from layout headers. r=mats
MozReview-Commit-ID: WF23cUiHFH
2018-06-14 09:08:20 -07:00
Lee Salzman
d273b4ddcc Bug 1467552 - make VectorImage::Show force OP_OVER. r=bas 2018-06-08 12:38:13 -04:00
Dan Glastonbury
68881da7dd Bug 1457353 - P1: Change nscolor to StyleComplexColor. r=xidorn
Change mStopColor, mFloodColor, and mLightingColor in nsStyleSVGReset.

MozReview-Commit-ID: KMRMtHk1jNK

--HG--
extra : rebase_source : c0c12fa811d17ab6fe0a5ceb31ff32ec585314e0
2018-04-27 12:07:20 +10:00
Botond Ballo
b505ad3dec Bug 1443092 - Crashtest. r=jwatt
--HG--
extra : rebase_source : a5e5a41ba9a8d763497499a73d6737b4999667f7
2018-03-09 17:32:50 -05:00
Dorel Luca
dc6d856805 Merge mozilla-inbound to mozilla-central. a=merge 2018-05-23 12:51:22 +03:00
Markus Stange
84a6ade868 Bug 1458968 - Create the nsDisplaySVGWrapper item in nsSVGOuterSVGAnonChildFrame, not in nsSVGOuterSVGFrame. r=mattwoodrow
This ensures that the nsDisplaySVGWrapper's mFrame and its reference frame are the same frame: the nsSVGOuterSVGAnonChildFrame.
It'll also cause the nsDisplaySVGWrapper to be *inside* the nsDisplayTransform for the <svg> element's viewbox transform.

This patch reverts nsSVGOuterSVGFrame::BuildDisplayList to its pre-bug 1407938 form.
(That's the bug that introduced nsDisplaySVGWrapper.)

MozReview-Commit-ID: 3jCyP6Sj8x9
2018-05-22 21:41:32 -04:00
Markus Stange
1c9281028a Bug 1458968 - Make the nsSVGOuterSVGAnonChildFrame a reference frame by always returning true from IsSVGTransformed. r=mattwoodrow
This causes transforms of the <svg> contents to be unaffected by scrolling / offset changes of the <svg> element.

MozReview-Commit-ID: JtDmwppqBis
2018-05-22 21:41:30 -04:00
Matt Woodrow
6eda39ebfb Bug 1462497 - Part 4: Only use the MayHaveAnimation variants when computing useOpacity in case the more accurate version changes results between paints. r=hiro
I don't think this part is necessary, but putting the patch up in case we decide we want to take it.

MozReview-Commit-ID: G0JTNddvZma

--HG--
extra : rebase_source : 442a6a563044c2c510f332f881d9fab55c4455be
2018-05-23 11:03:54 +12:00
Botond Ballo
d3215239ec Bug 1459890 - Do not clip mask for clip path to bbox of clipped content. r=mstange
MozReview-Commit-ID: 9yZ1ziiDAKa

--HG--
extra : rebase_source : 945b2048b31843c27cd21c19374cb7f61ea62be5
2018-05-11 18:55:30 -04:00
Ciure Andrei
3b611bc04f Backed out changeset 51cd668c0e87 (bug 1459890) dev request a=backout CLOSED TREE 2018-05-17 01:29:54 +03:00
Botond Ballo
c44bf295e5 Bug 1459890 - Do not clip mask for clip path to bbox of clipped content. r=mstange
MozReview-Commit-ID: 9yZ1ziiDAKa

--HG--
extra : rebase_source : 59ef1bc77e869a1b157f2ddb79a3c3bf674bb9a9
2018-05-11 18:55:30 -04:00
Matt Woodrow
0d65266918 Bug 1460491 - Part 1: Split nsDisplayItem::mVisibleRect into two members, one for each stated purpose. Gets rid of the save/restore since we no longer modify the building rect. r=jnicol
MozReview-Commit-ID: 5wcsSoZRN44

--HG--
extra : rebase_source : 1bf7d655b048a972e392514542aee171e20afe82
2018-05-16 15:56:32 +12:00
Robert Longson
1baf4cf80c Bug 1422226 - Don't build display lists for NONDISPLAY content. r=jwatt 2018-05-13 19:16:26 +01:00
Boris Zbarsky
f7d68d6078 Bug 1387143 part 21. Remove nsISelection getters for anchor and focus points. r=mats
Instead of copying spec-duplicating comments from nsISelection.idl to
Selection.webidl, this just points the latter to the right spec.
2018-05-08 13:52:38 -04:00
Chris Peterson
71422dcaa9 Bug 1457813 - Part 2: Replace non-asserting NS_PRECONDITIONs with MOZ_ASSERTs. r=froydnj
s/NS_PRECONDITION/MOZ_ASSERT/ and reindent

MozReview-Commit-ID: KuUsnVe2h8L

--HG--
extra : source : c14655ab3df2c9b1465dd8102b9d25683359a37b
2018-04-28 12:50:58 -07:00
Boris Zbarsky
93af0eea13 Bug 1455674 part 14. Remove use of nsIDOMElement in layout. r=qdot 2018-04-26 23:37:33 -04:00
Emilio Cobos Álvarez
0faef276ec Bug 1455885: Make the SVG context paint not use a node property, but a member in SVGDocument. r=jwatt
MozReview-Commit-ID: H6SRTsDL5Rh
2018-04-26 17:07:39 +02:00
Robert Longson
b0d2ba05a0 Bug 1455763 - Remove SVGViewElement.viewTarget r=heycam r=mystor 2018-04-25 22:44:31 +01:00
Emilio Cobos Álvarez
543a797d15 Bug 1421807: Wallpaper SVG text code which makes too many assumptions about the DOM. r=heycam
Second test-case is because I initially made this code work with
display: contents. But then realised that display: contents meant allowing
Shadow DOM in there, which I don't really want to deal with right now.

MozReview-Commit-ID: HSjFbWEbPAb

--HG--
extra : rebase_source : 51b950d5e74e17b0200112a7d447b3e3b9414602
2018-04-23 21:23:50 +02:00
Dan Glastonbury
334258d77f Bug 1467621 - P1: nsCSSShadowItem - Change nscolor to StyleComplexColor. r=xidorn
MozReview-Commit-ID: moE2CI7fT8

--HG--
extra : rebase_source : 7b64beccbd4c499d93567d62b913257dfa53c9fe
2018-06-19 14:18:33 +10:00
Kris Maglione
219ed0cc06 Bug 1454813: Part 2b - Rename SpawnTask.js to AddTask.js. r=florian
The old name no longer makes sense, since it no longer exports an spawn_task
symbol, and add_task is what we really care about.

MozReview-Commit-ID: IE7B8Czv8DH

--HG--
rename : testing/mochitest/tests/SimpleTest/SpawnTask.js => testing/mochitest/tests/SimpleTest/AddTask.js
extra : rebase_source : 03bca5aa69a7625a49b4455a6c96ce4c59de3a5a
2018-04-18 11:43:45 -07:00
Jeff Muizelaar
5153b29720 Bug 1454507. Avoid asserting that we don't end up with an empty result. r=mstange
This adds a crash test that would previously trigger the assert.

--HG--
extra : rebase_source : f167a85bf219cf3eac1192be05c297fc5e383072
2018-04-16 18:00:35 -04:00