Commit Graph

68924 Commits

Author SHA1 Message Date
Mats Palmgren
a697823fed Bug 1471758 - [css-grid-2][css-contain] Make 'contain:paint' and 'contain:layout' inhibit a grid container from being a subgrid. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29793

--HG--
extra : rebase_source : 8a709b9a0c58fe0ff1f21e1da07905470810bedd
2019-05-03 05:35:18 +02:00
Mats Palmgren
de3b35d86d Bug 1548421 - [css-grid-2] Ensure subgrids are never reflow roots. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29609

--HG--
extra : rebase_source : 95e98daf2806f1bd77e61c2dffc22096577387f6
2019-05-02 03:37:51 +02:00
Mats Palmgren
7457010aa7 Bug 1466358 part 11 - [css-grid-2] Update the frame's subgrid state when the style changes. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29578

--HG--
extra : rebase_source : 49ffcf3927761705680522750306fabfaa126cb9
2019-05-01 23:53:47 +02:00
Mats Palmgren
19cf10b503 Bug 1466358 part 10 - [css-grid-2] Intrinsic sizing tweaks for subgrid. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29242

--HG--
extra : rebase_source : 1b4209cc82f415607225d37b66351d8f9b26257e
2018-11-29 18:05:54 +01:00
Mats Palmgren
1a90f87c73 Bug 1466358 part 9 - [css-grid-2] Percentage basis calculation for subgrid items. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29241

--HG--
extra : rebase_source : 6c59d4cfd2ac7951d94289a5e31ab47194b138a2
2018-11-29 18:05:54 +01:00
Mats Palmgren
7a16a53445 Bug 1466358 part 8 - [css-grid-2] Implement subgrid track sizing. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29767

--HG--
extra : rebase_source : daacd5e49d25ff6791233aa2bf448141c0f565e0
2018-11-29 18:05:53 +01:00
Mats Palmgren
cb74a2be21 Bug 1466358 part 7 - [css-grid-2] Report the right number of tracks for subgrids in ComputedGridTrackInfo. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29150

--HG--
extra : rebase_source : 31dfde3b701c636c884e686ecf6ebc336c9eb6af
2018-11-29 18:05:54 +01:00
Mats Palmgren
db19782fb2 Bug 1466358 part 6 - [css-grid-2] Always normalize child lists before a child list iterator is used. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D29149

--HG--
extra : rebase_source : 33c08ebd2ff810429bee2a7a1e3a3eb624b1c92d
2018-11-29 18:05:54 +01:00
Mats Palmgren
89a0e0ff36 Bug 1466358 part 5 - [css-grid-2] Add the accumulated margin+border+padding of subgrid ancestors to a subgrid item's content contribution if it spans the relevant edge track(s). r=dholbert
--HG--
extra : rebase_source : c5df2b3d291b7ed361f5a4ee3c3bd0089419022a
2018-11-29 18:05:53 +01:00
Mats Palmgren
06a57d5591 Bug 1466358 part 4 - [css-grid-2] Make a subgrid contribute its accumulated margin+border+padding to its edge tracks for intrinsically sized tracks. r=dholbert
--HG--
extra : rebase_source : 83b74a75ff146fbaca8f9db6e8a66e09b50967b8
2018-11-29 18:05:53 +01:00
Mats Palmgren
dfe59e9674 Bug 1466358 part 3 - [css-grid-2] Add methods to calculate a subgrid's margin+border+padding. r=dholbert
--HG--
extra : rebase_source : d4b436d37d85922f1469b7a264e1438ca1d0d270
2018-11-29 18:05:40 +01:00
Mats Palmgren
72368fabf1 Bug 1466358 part 2 - [css-grid-2] Add a method to recursively collect relevant items for track sizing from subgrids with their lines and state translated into the caller's coordinates (idempotent patch). r=dholbert
--HG--
extra : rebase_source : abdc194a8ae862327c95170582d37b6fe039584d
2018-11-29 00:18:10 +01:00
Mats Palmgren
88e099b7c3 Bug 1466358 part 1 - [css-grid-2] Add grid item state bits for subgrids and items in a subgrid and set them when the item occupies the corresponding edge track (idempotent patch). r=dholbert
--HG--
extra : rebase_source : 0f5ac0554b5c72691eee760562a5189f549ce1cd
2018-11-29 00:18:10 +01:00
Mats Palmgren
8b3af96735 Bug 1465296 part 5 - [css-grid-2] Implement nested area name lookups for subgrids. r=dholbert
--HG--
extra : rebase_source : cd705c3332ab995348be12a06ff26f3099df26eb
2018-11-29 00:18:09 +01:00
Mats Palmgren
01f4698389 Bug 1465296 part 4 - [css-grid-2] Implement nested line name lookups for subgrids. r=dholbert
This adds a pointer to the parent grid's LineNameMap in
the relevant axis and traverses that recursively when
looking up line names.

--HG--
extra : rebase_source : fb088178209238f7a9e7d6dd2458940779d011fe
2018-11-29 00:18:09 +01:00
Mats Palmgren
94606c0340 Bug 1465296 part 3 - [css-grid-2] Add a convenience method to get the parent GridContainerFrame for a subgrid. r=dholbert
--HG--
extra : rebase_source : fc657580b7a0f3aff9b925942995cb0956f71233
2018-11-29 00:18:09 +01:00
Mats Palmgren
4732ab3c6e Bug 1465296 part 2 - [css-grid-2] Clamp lines in a subgrid to its extent. r=dholbert
Per https://drafts.csswg.org/css-grid-2/#subgrid-implicit

--HG--
extra : rebase_source : feda495fc1e9d17fcdb2283eb3bbec198eec3b1b
2018-11-29 00:18:09 +01:00
Mats Palmgren
3d75f50167 Bug 1465296 part 1 - [css-grid-2] Implement subgrid item placement. r=dholbert
--HG--
extra : rebase_source : d69ac36a02178a7ecb340a28caac3f2c8b7bfc39
2018-11-29 00:18:09 +01:00
Jonathan Watt
a7b3640083 Bug 1553081. Set nsPrintJob::mDisallowSelectionPrint during Initialize(). r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D31975

--HG--
extra : rebase_source : 57b72312d1c25b62b3c5ebd6818f2010eddfefec
extra : amend_source : 9f8a0f0e30fefccd3a9296b6d91e74f7b6589676
2019-05-10 16:01:33 +01:00
Jonathan Watt
e8b9c5bc5d Bug 1553080. Have nsPrintJob record modality and mozPrintCallback presence during initialization. r=bobowen
Differential Revision: https://phabricator.services.mozilla.com/D31974

--HG--
extra : rebase_source : 4e5319b1f6b3b7a70dd79d8c9538300ca1ccd581
extra : amend_source : a4510ba02336f5464463fec3ccd320296d74df92
2019-05-10 14:52:25 +01:00
Jonathan Watt
e0e310caed Bug 1552969. Pass the document to print through to nsPrintJob::Print. r=bobowen
...and have nsPrintJob::Print use that instead of mOriginalDoc, which we want
to get rid of.

When nsPrintJob::Print is called and mPrtPreview is nullptr, we know that we
have been called to print a page directly without print preview.  In that case
we know that we're printing the nsPrintJob's docViewer's document.  I.e. the
document of the caller of nsPrintJob::Print.  So in this case mOriginalDoc and
the passed doc are always the same thing.

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

--HG--
extra : rebase_source : 54f3afd8dc51d02ccd19436d39b570f66fa242d7
extra : amend_source : 49fa445dff1d19eb4faee868ddacda76916af778
2019-05-10 09:38:11 +01:00
Emilio Cobos Álvarez
78aebf4d00 Bug 1552719 - Bump an assertion count in the XBL + lists test, since we run the code that asserts more often now. r=bustage
CLOSED TREE
2019-05-21 20:42:58 +02:00
Emilio Cobos Álvarez
6759592377 Bug 1552719 - Make nsBulletFrame::Ordinal() O(1) again. r=mats
I did this instead of just (ab)using the fact that every list item has at least
one counter-increment node because:

 * I don't have the bullet frame around by the time we initially compute the
   counter increment, which means that I'd need to grow nsBlockFrame / add a
   frame property for the list item ordinal, which I think would be unfortunate.

 * It feels more consistent with the way regular CSS counters work and with the
   way we want ::marker to eventually work.

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

--HG--
extra : moz-landing-system : lando
2019-05-21 17:30:42 +00:00
Emilio Cobos Álvarez
07adac9c29 Bug 1552719 - Make nsGenConList::NodeAfter handle correctly nested pseudo-elements. r=mats
When you have a ::after::marker, and you compare one against the other we ended
up with the wrong result because of the pseudotype stuff.

I think this is cleaner now that DoCompareTreePosition handles pseudos properly
(which is really the thing this was working around).

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

--HG--
extra : moz-landing-system : lando
2019-05-21 17:29:26 +00:00
Emilio Cobos Álvarez
f6e2bfc64b Bug 1552719 - Make nsLayoutUtils::DoCompareTreePosition handle pseudos more diligently. r=mats
I'm going to need it to fix the counters code in presence of nested
pseudo-elements.

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

--HG--
extra : moz-landing-system : lando
2019-05-21 17:29:17 +00:00
Emilio Cobos Álvarez
2917763ba5 Bug 1552719 - Do some cleanup in the counter initializer code. r=mats
I thought I was going to need it but turns out I don't. Still this is worth it I
think.

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

--HG--
extra : moz-landing-system : lando
2019-05-21 17:29:06 +00:00
Razvan Maries
366383f783 Merge mozilla-inbound to mozilla-central a=merge 2019-05-21 19:29:01 +03:00
Miko Mynttinen
a89d7cedff Bug 1552789 - Check NS_FRAME_FORCE_DISPLAY_LIST_DESCEND_INTO flag for every line r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D31865

--HG--
extra : moz-landing-system : lando
2019-05-20 22:54:18 +00:00
Razvan Maries
fa4ff6f653 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-05-21 12:37:53 +03:00
Daniel Varga
f7e7132f8f Merge mozilla-central to mozilla-inbound 2019-05-21 07:22:34 +03:00
Daniel Varga
9c4661a44f Merge mozilla-central to mozilla-inbound. a=merge 2019-05-21 01:00:21 +03:00
Bogdan Tara
6150afdc54 Backed out 2 changesets (bug 1359240) for gfxSVGGlyphs.cpp bustages CLOSED TREE
Backed out changeset 02eea6ec83db (bug 1359240)
Backed out changeset a31ec848a1ef (bug 1359240)
2019-05-20 15:21:39 +03:00
Matt Woodrow
42c9b79f0b Bug 1544995 - Always update overflow areas up to the preserve-3d root. r=dbaron
We don't store post-transform overflow areas for frames within preserve-3d, but we do store pre-transform overflow areas.
Rather than just recomputing the changed overflow for the root, we should recompute overflows for all ancestors up to the 3d root.

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

--HG--
extra : moz-landing-system : lando
2019-05-19 22:39:58 +00:00
Matt Woodrow
90ea5fbc78 Bug 1551389 - Compare line pointers directly, since we're ok with it failing if the lines are in different lists. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D31152

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

--HG--
extra : moz-landing-system : lando
2019-05-16 13:21:22 +00:00
violet
4cb90f9c62 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 13:21:22 +00:00
violet
8ebdbe5a90 Bug 1383650 - Notify style system when SMIL animation changes length r=birtles,longsonr
When animating geometry attribute, we need to notify style system about the change of SMIL override style.

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

--HG--
extra : moz-landing-system : lando
2019-05-16 13:21:20 +00:00
violet
cadaa5cf8e 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 13:21:20 +00:00
violet
30fa1da169 Bug 1383650 - Add SVG geometry property support in CSS r=emilio
This patch adds SVG geometry properties to CSS, it doesn't deal with
how SVG handles them.

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

--HG--
extra : moz-landing-system : lando
2019-05-16 13:21:19 +00:00
Jonathan Kew
adff1a5b06 Bug 1359240 - Reftest for SVG-in-OT font using gzip-compressed SVG glyph documents. r=jrmuizel
Depends on D31107

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

--HG--
extra : moz-landing-system : lando
2019-05-15 21:25:54 +00:00
Emilio Cobos Álvarez
f041512168 Bug 1492739 - Unprefix usage of -moz-user-select from UA stylesheets. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D31154

--HG--
extra : moz-landing-system : lando
2019-05-17 13:16:35 +00:00
Emilio Cobos Álvarez
c1954c0d3a Bug 1492739 - Unprefix user-select. r=mats
The CSSWG decided that our behavior regarding inheritance is what we want,
see [1].

[1]: https://github.com/w3c/csswg-drafts/issues/3344

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

--HG--
extra : moz-landing-system : lando
2019-05-17 02:43:59 +00:00
Brian Birtles
65f06d35fe Bug 1253476 - Implement Animation.commitStyles; r=boris,emilio,bzbarsky,smaug
Differential Revision: https://phabricator.services.mozilla.com/D30327

--HG--
extra : moz-landing-system : lando
2019-05-20 06:04:23 +00:00
Brian Birtles
050372ea8e Bug 1253476 - Don't composite removed animations; r=boris
Differential Revision: https://phabricator.services.mozilla.com/D30324

--HG--
extra : moz-landing-system : lando
2019-05-20 05:55:52 +00:00
Brian Birtles
5b145a6de4 Bug 1253476 - Add remove events; r=boris,bzbarsky
This patch introduces the machinery for dispatching remove events but does not
actually cause removing to do anything to the output of the animation beyond
updating its replaceState member.

The expected behavior is defined in:

  https://drafts.csswg.org/web-animations-1/#removing-replaced-animations

And the corresponding IDL members are defined in:

  https://drafts.csswg.org/web-animations-1/#animation
  https://drafts.csswg.org/web-animations-1/#enumdef-animationreplacestate

Tests for these events are added in the next patch in this series.

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

--HG--
extra : moz-landing-system : lando
2019-05-20 05:48:29 +00:00
Brian Birtles
25c05a66db Bug 1253476 - Run microtask checkpoint for updating timing after updating all timelines; r=hiro
According to the procedure to update animations and send events[1] the UA should
update all timelines first and _then_ run a microtask checkpoint.

As a result, when we run callbacks for the finished promise on an Animation they
should see the fully up-to-date state of all animations, regardless of which
timeline they are attached to.

However, that is currently not the case since we run a microtask checkpoint
after updating each individual timeline.

This difference will become more significant later in this patch series when we
introduce another step--removing replaced animations--that _also_ should happen
before we run the microtask checkpoint (so that the promise callbacks always see
a fully-up-to-date state).

This patch makes our handling a little more in line with the spec. It's not
quite the same because it's possible there may be other refresh driver observers
that trigger a microtask checkpoint in between ticking the different timelines
but that case is expected to be rare and fixing it would require maintaining
a separate queue for timeline observers that we run after all other observers--
so it is probably not necessary to fix that case at this stage.

The test added in this patch fails without the code changes in this patch.

[1] https://drafts.csswg.org/web-animations-1/#update-animations-and-send-events

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

--HG--
extra : moz-landing-system : lando
2019-05-20 05:22:03 +00:00
Boris Chiou
6f268e4980 Bug 1429299 - Part 4: Make offset-distance animatable. r=hiro
Use ComputedValue to animate offset-distance.

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

--HG--
extra : moz-landing-system : lando
2019-05-20 23:42:56 +00:00
Boris Chiou
1842658992 Bug 1429299 - Part 3: Layout update for offset-distance. r=birtles
Just need to take offset-distance into account to get the final matrix.

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

--HG--
extra : moz-landing-system : lando
2019-05-20 23:42:54 +00:00
Boris Chiou
ce15d305e2 Bug 1429299 - Part 2: Implement offset-distance. r=emilio
Define the offset-distance property in style system.

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

--HG--
extra : moz-landing-system : lando
2019-05-20 23:42:52 +00:00
Boris Chiou
718aaf17f9 Bug 1429299 - Part 1: Unpack StyleMotion and use cbindgen for OffsetPath. r=emilio
Unpack StyleMotion and move its members into nsStyleDisplay, use
cbindgen to generate StyleOffsetPath.

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

--HG--
extra : moz-landing-system : lando
2019-05-20 23:42:50 +00:00