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

13252 Коммитов

Автор SHA1 Сообщение Дата
Cameron McCormack ad66f7561b Bug 1607667 - Change initial value of image-orientation to from-image. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D62826

--HG--
extra : moz-landing-system : lando
2020-02-14 11:11:27 +00:00
Emilio Cobos Álvarez e02bf215b7 Bug 1615876 - Minor gradient parsing cleanup. r=ntim
I suggested the compat_mode bit in D62923 but it was somehow only applied to one
of the branches.

Also rustfmt the code for consistency, and add a local alias.

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

--HG--
extra : moz-landing-system : lando
2020-02-16 11:00:45 +00:00
Tim Nguyen c15714cbeb Bug 1615489 - Refactor GenericGradient for conic-gradient support. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D62923

--HG--
extra : moz-landing-system : lando
2020-02-15 22:04:35 +00:00
Arthur Iakab 8fc81437b1 Backed out changeset 0721d0777474 (bug 1615489) for multiple build bustages.
DONTBUILD
CLOSED TREE
2020-02-15 21:50:33 +02:00
Tim Nguyen cc1ec3b906 Bug 1615489 - Refactor GenericGradient for conic-gradient support. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D62923

--HG--
extra : moz-landing-system : lando
2020-02-15 19:07:54 +00:00
shindli ef9b6edae2 Backed out changeset 07fc980b7ed8 (bug 1615489) for causing linux build bustages 2020-02-15 15:41:45 +02:00
Tim Nguyen dc4ed94109 Bug 1615489 - Refactor GenericGradient for conic-gradient support. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D62923

--HG--
extra : moz-landing-system : lando
2020-02-15 13:16:36 +00:00
Tim Nguyen a2e4d99a50 Bug 1610597 - Re-introduce display: -moz-stack; as <legacy-stack>. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D62758

--HG--
extra : moz-landing-system : lando
2020-02-14 16:32:38 +00:00
Martin McNickle 30c6161dca Bug 1615380 - Part 2 - Use the cbindgen output for GridAutoFlow directly in gecko. r=emilio
Depends on D62787

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

--HG--
extra : moz-landing-system : lando
2020-02-14 15:48:10 +00:00
Martin McNickle 338ba52025 Bug 1615380 - Part 1 - Replace existing GridAutoFlow struct with a `bitflags!` backed one. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D62787

--HG--
extra : moz-landing-system : lando
2020-02-14 15:48:01 +00:00
Tim Nguyen 5f5b496d2d Bug 1614648 - Make GradientItem and ColorStop support angular color stops. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D62544

--HG--
extra : moz-landing-system : lando
2020-02-12 18:22:51 +00:00
Dorel Luca 5e422ce68b Backed out changeset 7e16a18f0f94 (bug 1614648) for build bustages in layout/painting/nsCSSRenderingGradients. CLOSED TREE 2020-02-12 14:33:04 +02:00
Tim Nguyen b4bc3c844a Bug 1614648 - Make GradientItem and ColorStop support angular color stops. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D62544

--HG--
extra : moz-landing-system : lando
2020-02-12 11:47:42 +00:00
Emilio Cobos Álvarez daccffdb9f Bug 1614348 - Make font-family serialization algorithm a bit more conservative. r=xidorn
So as to avoid serializing as identifiers font-families with spaces as part of
the identifier. This avoids serializing confusing escaped sequences if the
beginning of the stuff after the space happens to not be a valid ident start.

This is an slightly more restrictive version of the existing logic, which
happens to also match other browsers in my testing.

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

--HG--
extra : moz-landing-system : lando
2020-02-12 11:32:47 +00:00
Boris Chiou 9198a9a26e Bug 1614407 - Drop fallback attribute from animate and distance. r=emilio
Still keep the discriminant checks to avoid generating terrible code.

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

--HG--
extra : moz-landing-system : lando
2020-02-11 01:12:00 +00:00
Emilio Cobos Álvarez bfcb8d06e9 Bug 1614510 - Split clip-path and shape-outside values. r=boris
We don't actually share _that_ much code across them. This makes callers clearer
and code less confusing, IMHO.

This also has the benefit of not autocompleting path from devtools for
shape-outside.

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

--HG--
extra : moz-landing-system : lando
2020-02-11 23:34:53 +00:00
Emilio Cobos Álvarez 628f21dc90 Bug 1614510 - Use cbindgen for shape-outside and clip-path. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D62372

--HG--
extra : moz-landing-system : lando
2020-02-11 22:03:53 +00:00
Emilio Cobos Álvarez 006e5cca66 Bug 1614198 - Use cbindgen instead of nsStyleImage. r=aosmond
The trickier part is that we represent -moz-image-rect as a Rect() type instead
of image with non-null clip-rect. So we need to add a bit of code to
distinguish "image request types" from other types of images.

But it's not too annoying, and we need to do the same for fancier images like
image-set and such whenever we implement it, so seems nice to get rid of
most explicit usages of nsStyleImage::GetType().

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

--HG--
extra : moz-landing-system : lando
2020-02-11 20:56:20 +00:00
Emilio Cobos Álvarez 21f524eca1 Bug 1614198 - Some preparation to start using cbindgen for shape-outside and clip-path. r=boris
Tweak the ShapeSourceRepresentation so that it doesn't store Option<>s.

Some renames so that GeometryBox doesn't conflict with the Gecko type, and some
other usual bits / re-exports to deal with cbindgen and generics.

Also, drive-by derive parsing of GeometryBox as it's trivial.

Doing this unfortunately is not possible without removing nsStyleImage first, so
let's do that before.

This makes us serialize in the shortest form for shape-outside, but that's what
we should do anyway.

(aside: the shapes code is a bit too generic, maybe we should unify
ClippingShape and FloatAreaShape...)

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

--HG--
extra : moz-landing-system : lando
2020-02-11 20:56:13 +00:00
Emilio Cobos Álvarez d7841a5f17 Bug 1614208 - Remove some include dependencies in nsStyleConsts.h. r=jfkthame,jgilbert
We include it everywhere because it's included from gfxTypes.h.

This should avoid including all the generated bindings _everywhere_.

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

--HG--
extra : moz-landing-system : lando
2020-02-11 01:23:37 +00:00
Emilio Cobos Álvarez 52d630ef26 Bug 1614198 - Remove trait bound and comment that snuck from a previous patch accidentally in a CLOSED TREE
MANUAL PUSH: Fixing accidental Lando-relanding of previous version of the patch.
2020-02-10 21:17:59 +01:00
Emilio Cobos Álvarez d6aacafdfd Bug 1614198 - Merge ImageLayer and Image. r=heycam
ImageLayer is almost the only usage of Image, so keeping them in the same enum
makes the resulting C++ struct smaller, and makes it map more cleanly to
nsStyleImage.

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

--HG--
extra : moz-landing-system : lando
2020-02-10 20:02:31 +00:00
Mihai Alexandru Michis a53731fa59 Backed out changeset a3695dec8b66 (bug 1614198) for causing bustages in ImageLayer
CLOSED TREE
2020-02-10 21:48:26 +02:00
Emilio Cobos Álvarez 0ca6f95831 Bug 1614198 - Merge ImageLayer and Image. r=heycam
ImageLayer is almost the only usage of Image, so keeping them in the same enum
makes the resulting C++ struct smaller, and makes it map more cleanly to
nsStyleImage.

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

--HG--
extra : moz-landing-system : lando
2020-02-10 19:25:40 +00:00
Emilio Cobos Álvarez ec32f37af9 Bug 1614394 - Cherry-pick some more formatting changes.
Differential Revision: https://phabricator.services.mozilla.com/D62317

--HG--
extra : moz-landing-system : lando
2020-02-10 18:18:27 +00:00
Emilio Cobos Álvarez 888338d969 Bug 1614394 - Cherry-pick a selectors version bump.
Differential Revision: https://phabricator.services.mozilla.com/D62309

--HG--
extra : moz-landing-system : lando
2020-02-10 17:32:37 +00:00
Emilio Cobos Álvarez 89edad17e0 Bug 1614394 - Remove now unused dependency from the style system.
Differential Revision: https://phabricator.services.mozilla.com/D62308

--HG--
extra : moz-landing-system : lando
2020-02-10 17:32:35 +00:00
Emilio Cobos Álvarez 93611990a4 Bug 1614394 - Rustfmt recent changes.
Differential Revision: https://phabricator.services.mozilla.com/D62307

--HG--
extra : moz-landing-system : lando
2020-02-10 17:32:27 +00:00
Emilio Cobos Álvarez f811ee2f3b Bug 1614394 - Fix Servo build.
Differential Revision: https://phabricator.services.mozilla.com/D62306

--HG--
extra : moz-landing-system : lando
2020-02-10 17:32:25 +00:00
Emilio Cobos Álvarez 217f3f86df Bug 1614394 - Cherry-pick some servo-2020 changes to the style system.
Differential Revision: https://phabricator.services.mozilla.com/D62305

--HG--
extra : moz-landing-system : lando
2020-02-10 17:32:18 +00:00
Patrick Shaughnessy 00d66a376a Bug 1614394 - Cherry-pick Servo changes for :defined support.
Differential Revision: https://phabricator.services.mozilla.com/D62304

--HG--
extra : moz-landing-system : lando
2020-02-10 17:32:15 +00:00
Emilio Cobos Álvarez 9ec744b313 Bug 1614394 - Implement num_traits::Zero for CSSPixelLength.
Differential Revision: https://phabricator.services.mozilla.com/D62303

--HG--
extra : moz-landing-system : lando
2020-02-10 17:32:13 +00:00
Simon Sapin 583c7b9d38 Bug 1614394 - Move `OpaqueNode` to `style_traits`.
Differential Revision: https://phabricator.services.mozilla.com/D62302

--HG--
extra : moz-landing-system : lando
2020-02-10 17:32:11 +00:00
Emilio Cobos Álvarez 741ec04a23 Bug 1614394 - Cherry-pick some servo-only changes to malloc_size_of.
Differential Revision: https://phabricator.services.mozilla.com/D62301

--HG--
extra : moz-landing-system : lando
2020-02-10 17:32:09 +00:00
Simon Sapin dd3ef574ef Bug 1614394 - Parse `-moz-image-rect()` and `-moz-element()` only in Gecko.
Differential Revision: https://phabricator.services.mozilla.com/D62300

--HG--
extra : moz-landing-system : lando
2020-02-10 17:32:07 +00:00
Emilio Cobos Álvarez 44abf87d9d Bug 1612301 - Fix LengthPercentage on big-endian machines. r=jfkthame
Always store the pointer in little-endian order so that the tag trick works.

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

--HG--
extra : moz-landing-system : lando
2020-02-10 17:12:44 +00:00
Emilio Cobos Álvarez 4103cf7f51 Bug 1613491 - Make rust generate better code for some of the functions introduced here. r=heycam
See https://github.com/rust-lang/rust/issues/68867.

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

--HG--
extra : moz-landing-system : lando
2020-02-10 14:09:38 +00:00
Emilio Cobos Álvarez 7e238a47ba Bug 1613491 - Add some calc infrastructure to deal with simplification / sorting / etc. r=heycam
For now, we still bail out at the stage of getting the calc node into a
CalcLengthPercentage if we couldn't simplify the min() / max() / clamps()
involved.

After this plan is to use just CalcNode everywhere instead of
specified::CalcLengthPercentage, and then modify the computed
CalcLengthPercentage, which would look slightly different as we know all the sum
terms for those are a struct like { Length, Percentage, bool has_percentage } or
such, so all the simplification code for that becomes much simpler, ideally.

Or we could turn CalcNode generic otherwise, if it's too much code... We'll see.

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

--HG--
extra : moz-landing-system : lando
2020-02-10 14:09:27 +00:00
Emilio Cobos Álvarez f98a6411b1 Bug 1613517 - Make rust generate better code for derive(Animate) and derive(ComputeSquaredDistance). r=heycam
See https://github.com/rust-lang/rust/issues/68867.

This technically changes the semantics of #[animate(fallback)] and such when
combined with #[animate(error)]. But no such combination exists and the new
semantics are perfectly reasonable as well, IMHO.

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

--HG--
extra : moz-landing-system : lando
2020-02-10 13:51:49 +00:00
Emilio Cobos Álvarez 451b254453 Bug 1612291 - Fix two issues with themed widgets in high contrast mode. r=heycam
There were two issues with the existing code that we use to determine whether a
widget is styled or not.

First, it was using `color == Color::transparent()` instead of
`color.is_transparent()` to check for transparent backgrounds. That is not sound
as `Color::transparent()` is the literal value `rgba(0, 0, 0, 0)`, not the
`transparent` keyword, so the equality check would fail.

The other issue is that this function was early-returning false if that check
was returning false. It is a bug for this function to early-return false, as it
makes the result of the function dependent of the order of the declarations.

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

--HG--
extra : moz-landing-system : lando
2020-02-10 00:37:36 +00:00
Tim Nguyen 3459492b2f Bug 1614160 - Add AngleOrPercentage to style system. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D62158

--HG--
extra : moz-landing-system : lando
2020-02-09 15:11:43 +00:00
Emilio Cobos Álvarez 374cabd6e7 Bug 1606628 - Remove nsStyleImageRequest. r=tnikkel,heycam
This removes nsStyleImageRequest by moving the load state to LoadData instead
(where other lazy state like the resolved URL and load id lives).

That way we can use cbindgen for more stuff (there's no blocker for using it for
all images now), and we can undo the image tracking shenanigans that I had to do
in bug 1605803 in nsImageFrame.

This removes the mDocGroup member because well, there's no real upside of that
now that quantum DOM is not a thing.

It also removes the static clones of the image requests, and the need for each
computed value instance to have its own request. These were needed because we
needed the image loader for the particular document to observe the image
changes. But we were also tracking the request -> loader for other purposes.
Instead, Now all the images get loaded with GlobalImageObserver as a listener,
which looks in the image map and forwards the notification to all the interested
loaders instead dynamically.

The style value is only responsible to load the image, and no longer tracks /
locks it. Instead, the loader does so, via the image tracker.

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

--HG--
extra : moz-landing-system : lando
2020-02-07 20:36:34 +00:00
Thomas Dolezal 062c15357a Bug 1611733 - Bug 1611633 - convert ns style position defines to enum class. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D61958

--HG--
extra : moz-landing-system : lando
2020-02-07 12:35:30 +00:00
Emilio Cobos Álvarez af73640f4e Bug 1613010 - Don't use a binary tree representation for calc() sums / products. r=heycam
Keep a flat list of sum members. Simpify product and division ASAP.

I want to preserve the tree for a bit longer to implement min / max / clamp.
This doesn't do anything for it that we weren't doing already, but it helps to
eventually keep this specified representation and the equivalent computed
representation for <length-percentage> values.

Enable the tests for the comparison functions too, to prevent regressions.

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

--HG--
extra : moz-landing-system : lando
2020-02-07 00:40:55 +00:00
Mihai Alexandru Michis 823e8c21f1 Backed out changeset c9f4dd3ed78b (bug 1606628) for causing failures in ImageLoader.cpp
CLOSED TREE
2020-02-06 23:19:55 +02:00
Emilio Cobos Álvarez 77c6b3e983 Bug 1606628 - Remove nsStyleImageRequest. r=tnikkel,heycam
This removes nsStyleImageRequest by moving the load state to LoadData instead
(where other lazy state like the resolved URL and load id lives).

That way we can use cbindgen for more stuff (there's no blocker for using it for
all images now), and we can undo the image tracking shenanigans that I had to do
in bug 1605803 in nsImageFrame.

This removes the mDocGroup member because well, there's no real upside of that
now that quantum DOM is not a thing.

It also removes the static clones of the image requests, and the need for each
computed value instance to have its own request. These were needed because we
needed the image loader for the particular document to observe the image
changes. But we were also tracking the request -> loader for other purposes.
Instead, Now all the images get loaded with GlobalImageObserver as a listener,
which looks in the image map and forwards the notification to all the interested
loaders instead dynamically.

The style value is only responsible to load the image, and no longer tracks /
locks it. Instead, the loader does so, via the image tracker.

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

--HG--
extra : moz-landing-system : lando
2020-02-06 20:32:59 +00:00
Emilio Cobos Álvarez 836a705c56 Bug 1607553 - Try to collect some more crash information so that we can diagnose this better. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D59704

--HG--
extra : moz-landing-system : lando
2020-01-22 00:06:35 +00:00
Jonathan Kew 4a153d86a2 Bug 1607308 - Move the from-font value from text-underline-offset to text-underline-position, as per recent spec changes, and fix interaction between position and offset. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D59778

--HG--
extra : moz-landing-system : lando
2020-02-03 14:38:28 +00:00
Jonathan Kew aa8ee28de1 Bug 1607534 - Support percentage values for the CSS text-decoration-thickness and text-underline-offset properties. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D59777

--HG--
extra : moz-landing-system : lando
2020-02-03 14:21:32 +00:00
Ciure Andrei 141db422c6 Backed out 2 changesets (bug 1607308, bug 1607534) for causing text-decoration-underline-position-vertical-ja.html to permafail CLOSED TREE
Backed out changeset e55052ed4064 (bug 1607308)
Backed out changeset 280bd106d48a (bug 1607534)
2020-02-03 16:17:02 +02:00
Emilio Cobos Álvarez ca641d574f Bug 1612114 - Invalidate shadow root style data on insertion if needed. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D61293

--HG--
extra : moz-landing-system : lando
2020-02-03 12:40:36 +00:00
Jonathan Kew 8b019300fc Bug 1607308 - Move the from-font value from text-underline-offset to text-underline-position, as per recent spec changes, and fix interaction between position and offset. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D59778

--HG--
extra : moz-landing-system : lando
2020-02-03 11:12:16 +00:00
Jonathan Kew 1ee6b76d7d Bug 1607534 - Support percentage values for the CSS text-decoration-thickness and text-underline-offset properties. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D59777

--HG--
extra : moz-landing-system : lando
2020-02-03 11:11:52 +00:00
Tim Nguyen 3b6875eeb1 Bug 1610404 - Remove nsGroupBoxFrame (display: -moz-groupbox). r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D61422

--HG--
extra : moz-landing-system : lando
2020-02-03 09:55:51 +00:00
Thomas Dolezal bfd4477a13 Bug 1612146 - Converting empty-cells defines into enum class. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D61398

--HG--
extra : moz-landing-system : lando
2020-02-01 21:43:31 +00:00
Thomas Dolezal 2770364f87 Bug 1612148 - Replace transform style defines to an enum class. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D61388

--HG--
extra : moz-landing-system : lando
2020-02-01 20:23:26 +00:00
Narcis Beleuzu 585bab844e Backed out 2 changesets (bug 1612148) for reftest failures. CLOSED TREE
Backed out changeset e1432ef26779 (bug 1612148)
Backed out changeset 0c1831f15450 (bug 1612148)
2020-02-01 19:23:06 +02:00
Emilio Cobos Álvarez c84fe1b982 Bug 1612148 - followup: Remove unused include.
MANUAL PUSH: Patch from contributor was missing this, causing bustage.

CLOSED TREE

--HG--
extra : amend_source : ebf9505656921c452d3b2abac2f5a88f1b99db15
2020-02-01 17:08:09 +01:00
Thomas Dolezal 523017b0f6 Bug 1612148 - Replace transform style defines to an enum class. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D61388

--HG--
extra : moz-landing-system : lando
2020-02-01 15:50:04 +00:00
Emilio Cobos Álvarez 1fdf0e61d3 Bug 1611912 - Add a style flag for the root element style. r=heycam
This is needed to make the root element not a containing block in presence of
filters or what not.

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

--HG--
extra : moz-landing-system : lando
2020-01-31 14:51:06 +00:00
Jonathan Kew fe46c531b3 Bug 1612399 - Don't apply text-combine-upright in sideways-* writing modes. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D61326

--HG--
extra : moz-landing-system : lando
2020-01-31 10:11:19 +00:00
Thomas Dolezal 28e6a65cfb Bug 1612143 - Replacing table-layout defines with an enum r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D61260

--HG--
extra : moz-landing-system : lando
2020-01-31 01:23:23 +00:00
Emilio Cobos Álvarez 4812f9408a Bug 1611583 - Use cbindgen for css-align types. r=dholbert
This provides stronger typing and removes a bunch of subtle constants matching.

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

--HG--
extra : moz-landing-system : lando
2020-01-31 00:56:49 +00:00
Thomas Dolezal a63c10f0de Bug 1611041 - Convert image-rendering #defines to an enum class. r=emilio
MANUAL PUSH: Contributor didn't use Phabricator and I don't want patch to rot
2020-01-30 04:50:24 +01:00
Martin McNickle 9f727fc9c5 Bug 1611829 - Convert scroll-behavior #defines to an enum class. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D61164

--HG--
extra : moz-landing-system : lando
2020-01-28 09:12:29 +00:00
Martin McNickle 0c665c265e Bug 1611043 - Convert mask-type #defines to an enum class. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D60987

--HG--
extra : moz-landing-system : lando
2020-01-27 14:59:41 +00:00
Emilio Cobos Álvarez f97d7df528 Bug 1610085 - Tweak background-color and color handling in ignored-colors mode. r=jwatt
We're resetting `color` to the default color when there's a declaration that
applies in order to make stuff like this:

<div style="color: transparent">
  <div style="color: red">
    Red
  </div>
</div>

To not show transparent. But the behavior we want is more like "override with
default color iff there's no other declaration that would set the color from an
user or UA sheet".

This implements that behavior, plus avoids it if we're not inheriting
from transparent, so that stuff like this preserves the behavior from before bug
844349:

<a href="foo">
  <span style="color: red">Should be the red color</span>
</a>

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

--HG--
extra : moz-landing-system : lando
2020-01-26 22:57:21 +00:00
Csoregi Natalia 3a270b7de3 Backed out changeset 239f7622187e (bug 1610085) for background color failures on test_dont_use_document_colors.html. CLOSED TREE 2020-01-26 23:14:39 +02:00
Emilio Cobos Álvarez 6bfbf10f25 Bug 1611711 - Remove kCursorKTable. r=jwatt
(And while at it, format the end of the other keyword tables so that
cleanup_ktables.py works).

It seems `Window.setCursor` is only used once in our code, maybe
we should remove it...

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

--HG--
extra : moz-landing-system : lando
2020-01-26 20:17:41 +00:00
Emilio Cobos Álvarez 64099dcf90 Bug 1610085 - Tweak background-color and color handling in ignored-colors mode. r=jwatt
We're resetting `color` to the default color when there's a declaration that
applies in order to make stuff like this:

<div style="color: transparent">
  <div style="color: red">
    Red
  </div>
</div>

To not show transparent. But the behavior we want is more like "override with
default color iff there's no other declaration that would set the color from an
user or UA sheet".

This implements that behavior, plus avoids it if we're not inheriting
from transparent, so that stuff like this preserves the behavior from before bug
844349:

<a href="foo">
  <span style="color: red">Should be the red color</span>
</a>

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

--HG--
extra : moz-landing-system : lando
2020-01-26 20:16:47 +00:00
Sakura Mochizuki edc2287d2f Bug 1611040 - Convert dominant-baseline #defines to an enum class. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D61046

--HG--
extra : moz-landing-system : lando
2020-01-25 10:51:24 +00:00
Boris Chiou cad48f3f6a Bug 1609786 - Make the empty svg path valid. r=emilio
Per SVG2 spec, the EBNF allows the path data string to be empty.
An empty path data string disables rendering of the path.
Therefore, we should make path('') a valid path string.

The related spec issue: https://github.com/w3c/fxtf-drafts/issues/392.
Now we serialize `path("")` as `path("")` for offset-path and clip-path.

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

--HG--
extra : moz-landing-system : lando
2020-01-24 18:59:03 +00:00
Emilio Cobos Álvarez a25126cd0d Bug 1611181 - Make direction use an enum class. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D60857

--HG--
extra : moz-landing-system : lando
2020-01-24 11:46:14 +00:00
Martin McNickle 56f3626ca9 Bug 1611044 - Convert stroke-linejoin #defines to an enum class. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D60865

--HG--
extra : moz-landing-system : lando
2020-01-23 17:19:27 +00:00
Emilio Cobos Álvarez fd83f48756 Bug 1609737 - Simplify calc expressions earlier. r=boris
This simplifies a bit the code, and guarantees that all calc()s have percentages
and lengths.

I also wanted to remove unclamped_length() / specified_percentage() (for the
same reason as the above patch), but they're needed for animations for now. When
I implement min() / max() for <length-percentage> they'll be fixed.

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

--HG--
extra : moz-landing-system : lando
2020-01-23 09:18:39 +00:00
Emilio Cobos Álvarez caa966f9de Bug 1609737 - Forbid accessing the length and percentage parts of a LengthPercentage separately. r=boris
This is just not a thing you can do if you have min() / max() / etc, as the min
/ max value may depend on the percentage basis.

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

--HG--
extra : moz-landing-system : lando
2020-01-23 09:18:39 +00:00
Cosmin Sabou 39c82e1497 Backed out 2 changesets (bug 1609737) for causing build bustages on nsCSSRenderingGradients after backing out Bug 1609711. CLOSED TREE
Backed out changeset d12980bbc425 (bug 1609737)
Backed out changeset 51f3f1a1efb8 (bug 1609737)
2020-01-23 07:39:48 +02:00
Emilio Cobos Álvarez 9b78285fd3 Bug 1609737 - Simplify calc expressions earlier. r=boris
This simplifies a bit the code, and guarantees that all calc()s have percentages
and lengths.

I also wanted to remove unclamped_length() / specified_percentage() (for the
same reason as the above patch), but they're needed for animations for now. When
I implement min() / max() for <length-percentage> they'll be fixed.

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

--HG--
extra : moz-landing-system : lando
2020-01-23 00:36:34 +00:00
Emilio Cobos Álvarez b06718c3dc Bug 1609737 - Forbid accessing the length and percentage parts of a LengthPercentage separately. r=boris
This is just not a thing you can do if you have min() / max() / etc, as the min
/ max value may depend on the percentage basis.

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

--HG--
extra : moz-landing-system : lando
2020-01-23 00:36:27 +00:00
Emilio Cobos Álvarez 031b6afee0 Bug 1610801 - Remove font-size calc() hack to propagate keyword information. r=manishearth
It does not make any sense with min() / max() / clamp. So just forget the
keyword info when calc() is used. This also removes a bit of complex / hacky
code.

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

--HG--
extra : moz-landing-system : lando
2020-01-22 23:46:24 +00:00
Boris Chiou 98e40ec294 Bug 1592822 - Replace StyleVecU8 with ipc::ByteBuf. r=emilio
We generate ByteBuf by rust bindgen, so we can drop StyleVecU8.
One potential follow-up is that we can merge this together with WrVecU8.

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

--HG--
rename : ipc/glue/ByteBuf.h => ipc/glue/ByteBufUtils.h
extra : moz-landing-system : lando
2020-01-22 20:18:40 +00:00
Boris Chiou ffa1ebad7b Bug 1592822 - Use Serde for OffsetRotate and PositionOrAuto. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D60088

--HG--
extra : moz-landing-system : lando
2020-01-22 20:18:38 +00:00
Boris Chiou 14387265a7 Bug 1592822 - Use Serde for SVGOffsetPath. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D60087

--HG--
extra : moz-landing-system : lando
2020-01-22 20:18:35 +00:00
Boris Chiou 38cc52c091 Bug 1592822 - Use Serde for Transform. r=emilio
Though this may make us use more space when serializing
StyleTransform, but we don't have to do extra conversion on the compostior
side, and this makes us easier to maintain the Rust type.

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

--HG--
extra : moz-landing-system : lando
2020-01-22 20:20:38 +00:00
Boris Chiou 7b90a66fcb Bug 1592822 - Use Serde for rotate, scale, and translate properties. r=emilio
The only drawback is: we resolve LengthPercentage value before passing
translate property through IPC, so its percentage part is redundant.
However, this makes us easier to maintain the Rust type.

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

--HG--
extra : moz-landing-system : lando
2020-01-22 20:18:31 +00:00
Bogdan Tara 958c34b738 Backed out 6 changesets (bug 1592822) for bustages complaining about layout/painting/nsDisplayList.cpp CLOSED TREE
Backed out changeset 90d0f2ebd310 (bug 1592822)
Backed out changeset 9890bad86a0e (bug 1592822)
Backed out changeset 43870cc90433 (bug 1592822)
Backed out changeset d80e0e3f5b87 (bug 1592822)
Backed out changeset 99be49183325 (bug 1592822)
Backed out changeset 9ce641556acc (bug 1592822)

--HG--
extra : histedit_source : fa4e4b2c899510f1d39ee3baa0374e2ce16d2815
2020-01-22 21:17:39 +02:00
Boris Chiou 4f3076794c Bug 1592822 - Replace StyleVecU8 with ipc::ByteBuf. r=emilio
We generate ByteBuf by rust bindgen, so we can drop StyleVecU8.
One potential follow-up is that we can merge this together with WrVecU8.

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

--HG--
rename : ipc/glue/ByteBuf.h => ipc/glue/ByteBufUtils.h
extra : moz-landing-system : lando
2020-01-22 18:42:54 +00:00
Boris Chiou e10013895e Bug 1592822 - Use Serde for OffsetRotate and PositionOrAuto. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D60088

--HG--
extra : moz-landing-system : lando
2020-01-22 18:40:19 +00:00
Boris Chiou 40f3cb3d65 Bug 1592822 - Use Serde for SVGOffsetPath. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D60087

--HG--
extra : moz-landing-system : lando
2020-01-22 18:40:11 +00:00
Boris Chiou 9735c2e972 Bug 1592822 - Use Serde for Transform. r=emilio
Though this may make us use more space when serializing
StyleTransform, but we don't have to do extra conversion on the compostior
side, and this makes us easier to maintain the Rust type.

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

--HG--
extra : moz-landing-system : lando
2020-01-22 18:40:09 +00:00
Boris Chiou 73f0ae66a9 Bug 1592822 - Use Serde for rotate, scale, and translate properties. r=emilio
The only drawback is: we resolve LengthPercentage value before passing
translate property through IPC, so its percentage part is redundant.
However, this makes us easier to maintain the Rust type.

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

--HG--
extra : moz-landing-system : lando
2020-01-22 18:40:07 +00:00
Ting-Yu Lin ab534fe8d2 Bug 1308636 Part 3 - Remove moz-prefixed aliases for column-gap and CSS multi-column properties. r=dbaron
Introduce a new pref "layout.css.prefixes.columns" to guard the prefixed
aliases.

The modification to `properties-db.js` was generated by
`./mach devtools-css-db`.

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

--HG--
extra : moz-landing-system : lando
2020-01-16 21:45:19 +00:00
Emilio Cobos Álvarez 6110aba7be Bug 1609489 - Remove lazy_static usage from custom_properties.rs. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D60039

--HG--
extra : moz-landing-system : lando
2020-01-16 05:41:16 +00:00
Emilio Cobos Álvarez 595faf4731 Bug 1609428 - Implement min() / max() / clamp() for simple css types behind a pref. r=boris
So for everything but <length> and <length-percentage>, which have more complex
mechanics.

The pref is off for now of course.

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

--HG--
extra : moz-landing-system : lando
2020-01-15 19:43:08 +00:00
Emilio Cobos Álvarez 28f1dbebc9 Bug 1609256 - Centralize calc function parsing. r=boris
So that extending it to support other math functions like min / max / etc is
simpler.

There should be no behavior change with this patch, though I added a comment to
some places where we don't do calc() clamping correctly (though other browsers
don't either so...).

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

--HG--
extra : moz-landing-system : lando
2020-01-15 00:46:01 +00:00
nordzilla 5465ed1ec0 Bug 1607268 - Implement replaceSync() Functionality r=emilio,bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D58881

--HG--
extra : moz-landing-system : lando
2020-01-14 22:34:40 +00:00
Emilio Cobos Álvarez fff6c9e1ac Bug 981248 - Rewrite <input type=number> to avoid an anonymous input. r=masayuki,surkov,jwatt,ntim,jfkthame,smaug
Instead, subclass nsTextControlFrame. This simplifies the code and avoids
correctness issues.

I kept the localization functionality though it is not spec compliant. But I
filed a bug to remove it in a followup.

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

--HG--
extra : moz-landing-system : lando
2020-01-14 19:01:05 +00:00
Emilio Cobos Álvarez a543b6df2f Bug 844349 - Do not ignore color: transparent in high contrast mode. r=jwatt
PDFJS uses it, for example to allow text selection. It's not great if it shows
on top of the actual PDF :-)

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

--HG--
extra : moz-landing-system : lando
2020-01-14 20:25:03 +00:00
Mihai Alexandru Michis 0d01c60c37 Backed out 2 changesets (bug 981248) for causing multiple failures.
CLOSED TREE

Backed out changeset 7a96708cc8b7 (bug 981248)
Backed out changeset 1eace7bd28d9 (bug 981248)
2020-01-14 19:28:17 +02:00
Emilio Cobos Álvarez da2e4ef888 Bug 981248 - Rewrite <input type=number> to avoid an anonymous input. r=masayuki,surkov,jwatt,ntim,jfkthame,smaug
Instead, subclass nsTextControlFrame. This simplifies the code and avoids
correctness issues.

I kept the localization functionality though it is not spec compliant. But I
filed a bug to remove it in a followup.

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

--HG--
extra : moz-landing-system : lando
2020-01-14 15:05:22 +00:00
Makoto Kato 29c7b3f5dd Bug 1503656 - Part 3. Don't use hardcoded value for safearea. r=emilio
To implement safe area support on Gecko, we should get safe area from Device.

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

--HG--
extra : moz-landing-system : lando
2020-01-08 11:56:25 +00:00
Makoto Kato c2e7d5dc85 Bug 1503656 - Part 2. Use Device for parameter instead of CssEnvironment. r=emilio
CssEnvironment alwasy is in Device, so use Device as parameter instead of CssEnvironment.

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

--HG--
extra : moz-landing-system : lando
2020-01-08 11:56:25 +00:00
Makoto Kato 7574b8612d Bug 1503656 - Part 1. Always use CssEnvironment from media query's device. r=emilio
Although CssEnvironment is in Device of media query implementation, some code
creates CssEnvironment instance without Device. So I would like always to use it from Device of media query.

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

--HG--
extra : moz-landing-system : lando
2020-01-08 11:55:28 +00:00
Emilio Cobos Álvarez ba0cc69e47 Bug 1607049 - Pack LengthPercentage better. r=jwatt
So that it takes one pointer instead of two, and doesn't make nsStylePosition's
size blow up.

This is not as ugly as I was fearing, thankfully, though it requires a bit of
boilerplate. I think it's acceptable.

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

--HG--
extra : moz-landing-system : lando
2020-01-13 13:23:22 +00:00
Emilio Cobos Álvarez d4c2489000 Bug 1607049 - Move LengthPercentage to its own file. r=jwatt
I'm (sadly) about to make it a bit more complicated to pack it better. So we
may as well do this so it is easier to reason about navigate.

I also reordered things a bit, and removed some From<> implementations and
such.

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

--HG--
rename : servo/components/style/values/computed/length.rs => servo/components/style/values/computed/length_percentage.rs
extra : moz-landing-system : lando
2020-01-13 13:23:44 +00:00
Emilio Cobos Álvarez d10341c0bc Bug 1607049 - Split LengthPercentage again. r=boris
This is needed to support min() / max() / clamp(), etc, as those need to be a
tree of values and thus need heap storage.

This unfortunately grows LengthPercentage to be two pointers, which is bad as
it blows up the size of nsStylePosition enough to trigger the size assertions.

This patch comments out the assertion for now, the follow-up patches will
uncomment them.

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

--HG--
extra : moz-landing-system : lando
2020-01-13 13:21:58 +00:00
Xidorn Quan 87fdc21f61 Bug 1513275 - Ensure nested ruby level container don't escape from line break suppression. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D58351

--HG--
extra : moz-landing-system : lando
2020-01-10 23:47:28 +00:00
Emilio Cobos Álvarez 74eedc7178 No bug - Minor comment fix.
Differential Revision: https://phabricator.services.mozilla.com/D59310

--HG--
extra : moz-landing-system : lando
2020-01-09 11:36:02 +00:00
Emilio Cobos Álvarez 86a70df5d7 Bug 1607006 - Remove utf-16 versions of nsCSSProps::LookupProperty* and ServoCSSParser::ComputeColor. r=bzbarsky
Now that we have UTF8String in the WebIDL, we can remove quite a few of the
conversions. Do that, and lift the remaining string conversions up as needed.

Also deindent Servo_ComputeColor while touching it.

Most of the remaining copies are because either bug 1606994, or because they're
WebIDL attributes that we still need to serialize back as UTF-16 (bug 1606995).

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

--HG--
extra : moz-landing-system : lando
2020-01-08 01:21:30 +00:00
Emilio Cobos Álvarez 65ad59b310 Bug 1607553 - Make an assertion a release assert in nightly. r=heycam
If this can happen legitimately, this will help fuzzers to catch it.

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

--HG--
extra : moz-landing-system : lando
2020-01-08 00:55:18 +00:00
Emilio Cobos Álvarez 547c9db8cd Bug 1606130 - Make display: -moz-box more similar to other display types for block layout. r=jfkthame,surkov
It is unexpected (see bug) that a -moz-box is affected by baseline alignment.
Make -moz-box be block-outside, and -moz-inline-box be inline-outside, instead
of the bespoke thing we have now.

This is more similar to everything else, and fixes the bug.

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

--HG--
extra : moz-landing-system : lando
2020-01-07 21:00:42 +00:00
Bogdan Tara 6571a2a6fb Backed out changeset 23d862866f3a (bug 1606130) for android crashtest complaining about 1547420-1.html 2020-01-07 22:53:10 +02:00
Emilio Cobos Álvarez ff938720a8 Bug 1606130 - Make display: -moz-box more similar to other display types for block layout. r=jfkthame,surkov
It is unexpected (see bug) that a -moz-box is affected by baseline alignment.
Make -moz-box be block-outside, and -moz-inline-box be inline-outside, instead
of the bespoke thing we have now.

This is more similar to everything else, and fixes the bug.

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

--HG--
extra : moz-landing-system : lando
2020-01-07 18:02:05 +00:00
Emilio Cobos Álvarez 8e79d673bb Bug 1607080 - Avoid a silly UTF16 -> UTF8 round-trip in DOMMatrix. r=smaug,boris
Depends on D58710

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

--HG--
extra : moz-landing-system : lando
2020-01-07 09:46:53 +00:00
Emilio Cobos Álvarez 795502e5b8 Bug 1607080 - More minor serialization improvements. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D58710

--HG--
extra : moz-landing-system : lando
2020-01-07 09:47:20 +00:00
Emilio Cobos Álvarez 6d777c8bf9 Bug 1607069 - Simplify some serialization code in glue.rs. r=jwatt
cbindgen understands references, there's no need to use raw pointers here and
then unwrapping or unsafely dereferencing them.

Also remove one unused function while at it.

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

--HG--
extra : moz-landing-system : lando
2020-01-05 14:42:23 +00:00
Emilio Cobos Álvarez ab672d9f29 Bug 1605803 - Use cbindgen for content property. r=xidorn
This cleans up and also allows us to keep the distinction between content: none
and content: normal, which allows us to fix the computed style we return from
getComputedStyle().

Do this last bit from the resolved value instead of StyleAdjuster, because
otherwise we need to tweak every initial struct for ::before / ::after.

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

--HG--
extra : moz-landing-system : lando
2020-01-05 13:10:39 +00:00
Emilio Cobos Álvarez bc36653df5 Bug 1449861 - Use UTF8String for some CSSOM APIs. r=bzbarsky
In particular, the ones where we transcode unconditionally atm (property names
and such).

There are others like cssText getters and setters which are a bit harder,
because I either need to rewrite all our serialization code to work with UTF8
(which is fine, but a lot of work), or teach webidl to have a setter that takes
UTF8String as input but returns DOMString as output (which is at best hacky).

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

--HG--
extra : moz-landing-system : lando
2020-01-04 10:36:49 +00:00
Ting-Yu Lin 9cbd872e72 Bug 1499281 - Remove column-span pref in column.mako.rs. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D58399

--HG--
extra : moz-landing-system : lando
2019-12-31 16:15:12 +00:00
Emilio Cobos Álvarez 233b5958d9 Bug 1604989 - Do not incorrectly share style across elements with different part names. r=nordzilla
Do the same we do for classes for now. We could be more precise and achieve a
bit more sharing with some more effort (left a comment there), but it seems
unlikely to matter in practice (and if we did that, we'd probably want to do the
same for classes).

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

--HG--
extra : moz-landing-system : lando
2019-12-31 18:14:35 +00:00
Emilio Cobos Álvarez 4d1924c9fb Bug 1606019 - Remove unused FFI function to refcount nsIReferrerInfo. r=xidorn
We don't use RefPtr<nsIReferrerInfo> in rust.

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

--HG--
extra : moz-landing-system : lando
2019-12-26 22:17:35 +00:00
Emilio Cobos Álvarez 2c729a4323 Bug 1604023 - Workaround LLVM ABI bug. r=froydnj
All the gory details in https://bugzilla.mozilla.org/show_bug.cgi?id=1600735 and
related LLVM / GCC bugs. Avoid the issue by forcing the relevant enum to be
32-bit wide, so as to not trigger the LLVM bug.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 20:43:06 +00:00
Emilio Cobos Álvarez cae1e55d61 Bug 1581467 - Do not use synthetic display-inside values. r=TYLin
This matches the new servo layout engine too, and thus removes some #[cfg]
gunk.  Just use `flow` since it doesn't simplify the layout code as much.

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

--HG--
extra : moz-landing-system : lando
2019-12-19 01:19:04 +00:00
Sean Voisen 0e463d054a Bug 1453472 - Add support for logical versions of overscroll-behavior. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D57363

--HG--
extra : moz-landing-system : lando
2019-12-17 11:27:41 +00:00
Emilio Cobos Álvarez 8a91625e5c Bug 1604173 - Cherry-pick various servo-layout-2020 changes.
Depends on D57314

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

--HG--
extra : moz-landing-system : lando
2019-12-16 13:34:23 +00:00
Emilio Cobos Álvarez d40bfe4265 Bug 1604173 - Rustfmt recent changes.
Differential Revision: https://phabricator.services.mozilla.com/D57314

--HG--
extra : moz-landing-system : lando
2019-12-16 13:34:20 +00:00
Emilio Cobos Álvarez 1258c314aa Bug 1604160 - Update cbindgen to do proper copy assignment on tagged enums. r=boris
This is needed to support min() / max() / clamp(), as LengthPercentage will have
a potential heap allocation and the current copy-assignment operators just do
bitwise copies.

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

--HG--
extra : moz-landing-system : lando
2019-12-16 13:31:24 +00:00
Emilio Cobos Álvarez 5758ca4f25 Bug 1604062 - Use less Au in font code. r=boris
Font code is the only thing that was using Au in the style system without
interfacing with Gecko, and there was no real reason for it to do so.

This slightly simplifies the code.

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

--HG--
extra : moz-landing-system : lando
2019-12-16 13:22:04 +00:00
Emilio Cobos Álvarez 78dbde3534 Bug 1604063 - Make LengthPercentage not copy. r=boris
This is needed to support min() / max() / clamp(), etc.

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

--HG--
extra : moz-landing-system : lando
2019-12-15 21:33:34 +00:00
Emilio Cobos Álvarez b498defa90 Bug 1603455 - Remove full-screen-api.unprefix.enabled. r=xidorn,smaug
It's been enabled since Firefox 64.

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

--HG--
extra : moz-landing-system : lando
2019-12-13 13:27:27 +00:00
jeffin143 8f714c8f81 Bug 1601856 : convert NS_STYLE_VISIBILITY_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D56140

--HG--
extra : moz-landing-system : lando
2019-12-13 05:34:38 +00:00
Emilio Cobos Álvarez fe173632c7 Bug 1602843 - Preserve CSS input exactly during sanitization. r=hsivonen
This avoids the mutation due to the different serialization in some cases.

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

--HG--
extra : moz-landing-system : lando
2019-12-12 13:57:54 +00:00
Noemi Erli 2b5af87228 Backed out changeset d23f209ada8b (bug 1603455) for causing failures in test_fullscreen-api.html
--HG--
extra : rebase_source : 7b7990746d3884eeced2404ed9bc78590db4b77c
2019-12-12 23:49:35 +02:00
Emilio Cobos Álvarez 8d6730e227 Bug 1603455 - Remove full-screen-api.unprefix.enabled. r=xidorn,smaug
It's been enabled since Firefox 64.

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

--HG--
extra : moz-landing-system : lando
2019-12-12 19:56:10 +00:00
jeffin143 4298d3f098 Bug 1601990 : convert NS_STYLE_POINTER_EVENTS_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D56203

--HG--
extra : moz-landing-system : lando
2019-12-12 10:24:16 +00:00
Emilio Cobos Álvarez 440c6c136b Bug 1599181 - Fix serialization of @namespace rule. r=boris
This code comes from:

https://hg.mozilla.org/mozilla-central/rev/2418cfba72c33c5623f6fb4c243c5203819c8240

I audited other callers of write_str, they seem ok.

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

--HG--
extra : moz-landing-system : lando
2019-11-25 23:21:20 +00:00
Emilio Cobos Álvarez 353b658d5a Bug 1600773 - Invalidate shadow part pseudo-class styles correctly. r=heycam
I was going to send a test for `:focus` via wpt, but then realized it was
probably not spec-compliant with the new rules people want to follow for
:focus, so I filed https://github.com/w3c/csswg-drafts/issues/4555 instead.

Testing `:hover` / `:active` via wpt looked quite a bit of a hassle.

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

--HG--
extra : moz-landing-system : lando
2019-12-09 13:40:16 +00:00
Emilio Cobos Álvarez 85599f3f1b Bug 1602317 - Update cbindgen to 0.11.1. r=jrmuizel
This includes more bitflag operators, which means we can remove some slightly
ugly code.

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

--HG--
extra : moz-landing-system : lando
2019-12-09 03:20:53 +00:00
Emilio Cobos Álvarez 4a3be9604a Bug 1602317 - Switch style system to associated constants-in-body. r=heycam
This is closer to the equivalent Rust code.

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

--HG--
extra : moz-landing-system : lando
2019-12-09 03:32:28 +00:00
Emilio Cobos Álvarez 1dc32f9c0f Bug 1602317 - More reliably workaround some silly windows.h defines. r=nical
I couldn't get some Windows sandbox code to build with the other patch in this
bug.

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

--HG--
extra : moz-landing-system : lando
2019-12-09 12:14:16 +00:00
Cameron McCormack 80142a59ab Bug 1571285 - Correctly style dark scrollbars in tree components. r=emilio
We need to ensure the rules that override all properties for scrollbar
part elements only apply to those that are NAC (and so will be eligible
for NAC style sharing).  We have some uses of non-NAC <scrollbar>
elements that should continue to inherit properties from their parents.

To avoid any changes in rule matching order that come with changing specificity,
we add a new :-moz-native-anonymous-no-specificity pseudo-class.

While we're here, we note :-moz-native-anonymous-no-specificity (and the
regular :-moz-native-anonymous pseudo-class) as not needing style
sharing cache revalidation, as we never share NAC styles.

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

--HG--
extra : moz-landing-system : lando
2019-12-09 03:16:03 +00:00
jeffin143 0393375a39 Bug 1600481 : convert NS_STYLE_ISOLATION_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D55378

--HG--
extra : moz-landing-system : lando
2019-12-06 04:42:18 +00:00
Emilio Cobos Álvarez 4695746608 Bug 1601732 - Update in-tree dependencies to smallvec 1.0. r=glandium
We're vendoring it already so no reason not to. Only a couple dependencies left
after these to get rid of 0.6.

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

--HG--
extra : moz-landing-system : lando
2019-12-05 23:30:59 +00:00
Emilio Cobos Álvarez 31291d2cdd Bug 1587468 - Update derive_more. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D56043

--HG--
extra : moz-landing-system : lando
2019-12-05 22:46:59 +00:00
Christian Holler 9a94d4cfc6 Bug 1601597 - Avoid writing into the empty array header. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D55949

--HG--
extra : moz-landing-system : lando
2019-12-05 12:29:56 +00:00
Emilio Cobos Álvarez 7a80801b12 Bug 1600998 - Remove layout.css.xul-box-display-values.survive-blockification.enabled. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D55898

--HG--
extra : moz-landing-system : lando
2019-12-05 06:12:47 +00:00
enordin d3412ea23d Bug 1598600 - Refactor InvalidationMap flags to bitflags r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D55862

--HG--
extra : moz-landing-system : lando
2019-12-05 00:13:49 +00:00
Emilio Cobos Álvarez 5d2dcb5b73 Bug 1600443 - Update cssparser and phf. r=heycam
This aligns us with Servo. It pulls a new `rand` crate version, but I'm removing
one in https://phabricator.services.mozilla.com/D55351, so hopefully adds up :)

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

--HG--
rename : third_party/rust/cssparser-macros/Cargo.toml => third_party/rust/phf_macros/Cargo.toml
rename : third_party/rust/cssparser-macros/Cargo.toml => third_party/rust/proc-macro-hack/Cargo.toml
rename : third_party/rust/rand/.cargo-checksum.json => third_party/rust/rand-0.6.5/.cargo-checksum.json
rename : third_party/rust/rand/CHANGELOG.md => third_party/rust/rand-0.6.5/CHANGELOG.md
rename : third_party/rust/rand/Cargo.toml => third_party/rust/rand-0.6.5/Cargo.toml
rename : third_party/rust/rand/README.md => third_party/rust/rand-0.6.5/README.md
rename : third_party/rust/rand/benches/distributions.rs => third_party/rust/rand-0.6.5/benches/distributions.rs
rename : third_party/rust/rand/benches/generators.rs => third_party/rust/rand-0.6.5/benches/generators.rs
rename : third_party/rust/rand/benches/misc.rs => third_party/rust/rand-0.6.5/benches/misc.rs
rename : third_party/rust/rand/benches/seq.rs => third_party/rust/rand-0.6.5/benches/seq.rs
rename : third_party/rust/rand/build.rs => third_party/rust/rand-0.6.5/build.rs
rename : third_party/rust/rand/examples/monte-carlo.rs => third_party/rust/rand-0.6.5/examples/monte-carlo.rs
rename : third_party/rust/rand/examples/monty-hall.rs => third_party/rust/rand-0.6.5/examples/monty-hall.rs
rename : third_party/rust/rand/src/deprecated.rs => third_party/rust/rand-0.6.5/src/deprecated.rs
rename : third_party/rust/rand/src/distributions/bernoulli.rs => third_party/rust/rand-0.6.5/src/distributions/bernoulli.rs
rename : third_party/rust/rand/src/distributions/binomial.rs => third_party/rust/rand-0.6.5/src/distributions/binomial.rs
rename : third_party/rust/rand/src/distributions/cauchy.rs => third_party/rust/rand-0.6.5/src/distributions/cauchy.rs
rename : third_party/rust/rand/src/distributions/dirichlet.rs => third_party/rust/rand-0.6.5/src/distributions/dirichlet.rs
rename : third_party/rust/rand/src/distributions/exponential.rs => third_party/rust/rand-0.6.5/src/distributions/exponential.rs
rename : third_party/rust/rand/src/distributions/float.rs => third_party/rust/rand-0.6.5/src/distributions/float.rs
rename : third_party/rust/rand/src/distributions/gamma.rs => third_party/rust/rand-0.6.5/src/distributions/gamma.rs
rename : third_party/rust/rand/src/distributions/integer.rs => third_party/rust/rand-0.6.5/src/distributions/integer.rs
rename : third_party/rust/rand/src/distributions/mod.rs => third_party/rust/rand-0.6.5/src/distributions/mod.rs
rename : third_party/rust/rand/src/distributions/normal.rs => third_party/rust/rand-0.6.5/src/distributions/normal.rs
rename : third_party/rust/rand/src/distributions/other.rs => third_party/rust/rand-0.6.5/src/distributions/other.rs
rename : third_party/rust/rand/src/distributions/pareto.rs => third_party/rust/rand-0.6.5/src/distributions/pareto.rs
rename : third_party/rust/rand/src/distributions/poisson.rs => third_party/rust/rand-0.6.5/src/distributions/poisson.rs
rename : third_party/rust/rand/src/distributions/triangular.rs => third_party/rust/rand-0.6.5/src/distributions/triangular.rs
rename : third_party/rust/rand/src/distributions/uniform.rs => third_party/rust/rand-0.6.5/src/distributions/uniform.rs
rename : third_party/rust/rand/src/distributions/unit_circle.rs => third_party/rust/rand-0.6.5/src/distributions/unit_circle.rs
rename : third_party/rust/rand/src/distributions/unit_sphere.rs => third_party/rust/rand-0.6.5/src/distributions/unit_sphere.rs
rename : third_party/rust/rand/src/distributions/utils.rs => third_party/rust/rand-0.6.5/src/distributions/utils.rs
rename : third_party/rust/rand/src/distributions/weibull.rs => third_party/rust/rand-0.6.5/src/distributions/weibull.rs
rename : third_party/rust/rand/src/distributions/weighted.rs => third_party/rust/rand-0.6.5/src/distributions/weighted.rs
rename : third_party/rust/rand/src/lib.rs => third_party/rust/rand-0.6.5/src/lib.rs
rename : third_party/rust/rand/src/prelude.rs => third_party/rust/rand-0.6.5/src/prelude.rs
rename : third_party/rust/rand/src/prng/mod.rs => third_party/rust/rand-0.6.5/src/prng/mod.rs
rename : third_party/rust/rand/src/rngs/adapter/mod.rs => third_party/rust/rand-0.6.5/src/rngs/adapter/mod.rs
rename : third_party/rust/rand/src/rngs/adapter/read.rs => third_party/rust/rand-0.6.5/src/rngs/adapter/read.rs
rename : third_party/rust/rand/src/rngs/adapter/reseeding.rs => third_party/rust/rand-0.6.5/src/rngs/adapter/reseeding.rs
rename : third_party/rust/rand/src/rngs/entropy.rs => third_party/rust/rand-0.6.5/src/rngs/entropy.rs
rename : third_party/rust/rand/src/rngs/mock.rs => third_party/rust/rand-0.6.5/src/rngs/mock.rs
rename : third_party/rust/rand/src/rngs/mod.rs => third_party/rust/rand-0.6.5/src/rngs/mod.rs
rename : third_party/rust/rand/src/rngs/small.rs => third_party/rust/rand-0.6.5/src/rngs/small.rs
rename : third_party/rust/rand/src/rngs/std.rs => third_party/rust/rand-0.6.5/src/rngs/std.rs
rename : third_party/rust/rand/src/rngs/thread.rs => third_party/rust/rand-0.6.5/src/rngs/thread.rs
rename : third_party/rust/rand/src/seq/index.rs => third_party/rust/rand-0.6.5/src/seq/index.rs
rename : third_party/rust/rand/src/seq/mod.rs => third_party/rust/rand-0.6.5/src/seq/mod.rs
rename : third_party/rust/rand/tests/uniformity.rs => third_party/rust/rand-0.6.5/tests/uniformity.rs
rename : third_party/rust/rand/src/distributions/weighted.rs => third_party/rust/rand/src/distributions/weighted/mod.rs
rename : third_party/rust/rand_chacha/.cargo-checksum.json => third_party/rust/rand_chacha-0.1.1/.cargo-checksum.json
rename : third_party/rust/rand_chacha/CHANGELOG.md => third_party/rust/rand_chacha-0.1.1/CHANGELOG.md
rename : third_party/rust/rand_chacha/Cargo.toml => third_party/rust/rand_chacha-0.1.1/Cargo.toml
rename : third_party/rust/rand_chacha/README.md => third_party/rust/rand_chacha-0.1.1/README.md
rename : third_party/rust/rand_chacha/build.rs => third_party/rust/rand_chacha-0.1.1/build.rs
rename : third_party/rust/rand_chacha/src/chacha.rs => third_party/rust/rand_chacha-0.1.1/src/chacha.rs
rename : third_party/rust/rand_chacha/src/lib.rs => third_party/rust/rand_chacha-0.1.1/src/lib.rs
rename : third_party/rust/rand_core/.cargo-checksum.json => third_party/rust/rand_core-0.4.0/.cargo-checksum.json
rename : third_party/rust/rand_core/CHANGELOG.md => third_party/rust/rand_core-0.4.0/CHANGELOG.md
rename : third_party/rust/rand_core/Cargo.toml => third_party/rust/rand_core-0.4.0/Cargo.toml
rename : third_party/rust/rand_core/README.md => third_party/rust/rand_core-0.4.0/README.md
rename : third_party/rust/rand_core/src/block.rs => third_party/rust/rand_core-0.4.0/src/block.rs
rename : third_party/rust/rand_core/src/error.rs => third_party/rust/rand_core-0.4.0/src/error.rs
rename : third_party/rust/rand_core/src/impls.rs => third_party/rust/rand_core-0.4.0/src/impls.rs
rename : third_party/rust/rand_core/src/lib.rs => third_party/rust/rand_core-0.4.0/src/lib.rs
rename : third_party/rust/rand_hc/.cargo-checksum.json => third_party/rust/rand_hc-0.1.0/.cargo-checksum.json
rename : third_party/rust/rand_hc/CHANGELOG.md => third_party/rust/rand_hc-0.1.0/CHANGELOG.md
rename : third_party/rust/rand_hc/Cargo.toml => third_party/rust/rand_hc-0.1.0/Cargo.toml
rename : third_party/rust/rand_hc/README.md => third_party/rust/rand_hc-0.1.0/README.md
rename : third_party/rust/rand_hc/src/hc128.rs => third_party/rust/rand_hc-0.1.0/src/hc128.rs
rename : third_party/rust/rand_hc/src/lib.rs => third_party/rust/rand_hc-0.1.0/src/lib.rs
rename : third_party/rust/rand_pcg/.cargo-checksum.json => third_party/rust/rand_pcg-0.1.2/.cargo-checksum.json
rename : third_party/rust/rand_pcg/CHANGELOG.md => third_party/rust/rand_pcg-0.1.2/CHANGELOG.md
rename : third_party/rust/rand_pcg/Cargo.toml => third_party/rust/rand_pcg-0.1.2/Cargo.toml
rename : third_party/rust/rand_pcg/README.md => third_party/rust/rand_pcg-0.1.2/README.md
rename : third_party/rust/rand_chacha/build.rs => third_party/rust/rand_pcg-0.1.2/build.rs
rename : third_party/rust/rand_pcg/src/lib.rs => third_party/rust/rand_pcg-0.1.2/src/lib.rs
rename : third_party/rust/rand_pcg/src/pcg128.rs => third_party/rust/rand_pcg-0.1.2/src/pcg128.rs
rename : third_party/rust/rand_pcg/src/pcg64.rs => third_party/rust/rand_pcg-0.1.2/src/pcg64.rs
rename : third_party/rust/rand_pcg/tests/lcg64xsh32.rs => third_party/rust/rand_pcg-0.1.2/tests/lcg64xsh32.rs
rename : third_party/rust/rand_pcg/tests/mcg128xsl64.rs => third_party/rust/rand_pcg-0.1.2/tests/mcg128xsl64.rs
extra : moz-landing-system : lando
2019-12-04 19:54:06 +00:00
Jonathan Kew 3b87f01682 Bug 770780 - Add support for parsing of the CSS text-underline-position property. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D54722

--HG--
extra : moz-landing-system : lando
2019-12-04 11:39:15 +00:00
Emilio Cobos Álvarez 9e67bb0696 Bug 1599921 - Make Rust static atoms able to be used in const contexts. r=boris
I see atom dropping code generated in release builds for stuff like dropping the
"class" atom here:

https://searchfox.org/mozilla-central/rev/4df8821c1b824db5f40f381f48432f219d99ae36/servo/components/style/gecko/wrapper.rs#592

That is silly, and I hope making Atom be able to be used in const context will
help the compiler see that yeah, we're not doing anything interesting and the
atom shouldn't get dropped.

It also allows us to get rid of a few lazy_static!s, so we should do it anyway.

In order to accomplish this, compute the offset into gGkAtoms manually instead
of going through the static_atoms() array and then back to the byte offset.

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

--HG--
extra : moz-landing-system : lando
2019-12-03 21:43:42 +00:00
enordin 34c681cacf Bug 1594241 - Check for border-image-* initial specified values when serializing border shorthand r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D55588

--HG--
extra : moz-landing-system : lando
2019-12-03 18:28:32 +00:00
jeffin143 be122e52af Bug 1600482 : convert NS_STYLE_RUBY_POSITION_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D55379

--HG--
extra : moz-landing-system : lando
2019-12-02 17:22:42 +00:00
jeffin143 0070e7ec58 Bug 1600484 : convert NS_STYLE_TEXT_SIZE_ADJUST_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D55382

--HG--
extra : moz-landing-system : lando
2019-12-02 05:09:33 +00:00
jeffin143 0ed9c7c846 Bug 1600483 : convert NS_STYLE_RUBY_ALIGN_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D55380

--HG--
extra : moz-landing-system : lando
2019-12-01 13:08:49 +00:00
jeffin143 6e53ecda96 Bug 1600476 : convert NS_STYLE_TOP_LAYER_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D55377

--HG--
extra : moz-landing-system : lando
2019-12-01 13:05:55 +00:00
Emilio Cobos Álvarez 1c8bfea810 Bug 1600436 - Fix servo build.
Depends on D55357

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

--HG--
extra : moz-landing-system : lando
2019-11-30 14:06:06 +00:00
Emilio Cobos Álvarez f628d09be6 Bug 1600436 - Rustfmt recent changes.
Differential Revision: https://phabricator.services.mozilla.com/D55357

--HG--
extra : moz-landing-system : lando
2019-11-30 14:13:04 +00:00
Emilio Cobos Álvarez 91bdbdf2ed Bug 1600436 - Update some servo-2020 layout ifdefs.
Differential Revision: https://phabricator.services.mozilla.com/D55356

--HG--
extra : moz-landing-system : lando
2019-11-30 14:05:50 +00:00
Alex Touchet 5ae76bccfa Bug 1600436 - Update some URLs.
Differential Revision: https://phabricator.services.mozilla.com/D55355

--HG--
extra : moz-landing-system : lando
2019-11-30 14:05:43 +00:00
Simon Sapin c8373d6efe Bug 1600436 - Fix some warnings new in Rust Nightly.
Differential Revision: https://phabricator.services.mozilla.com/D55354

--HG--
extra : moz-landing-system : lando
2019-11-30 14:05:41 +00:00
Federico Mena Quintero 4ff8a1dc93 Bug 1600436 - derive_common: Fix example in documentation.
Differential Revision: https://phabricator.services.mozilla.com/D55353

--HG--
extra : moz-landing-system : lando
2019-11-30 14:05:34 +00:00
Emilio Cobos Álvarez 2051e11775 Bug 1600320 - Avoid writing into the empty array header. r=jwatt
The only way for this to happen is calling set_len(0) on an already-empty array.

We should be replacing these bindings by the `ThinVec` crate, but this is easier
for now.

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

--HG--
extra : moz-landing-system : lando
2019-11-30 11:58:18 +00:00
enordin d69bff9bdb Bug 1597642 - Have scale function and scale property accept percentage value. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D55012

--HG--
extra : moz-landing-system : lando
2019-11-29 04:40:03 +00:00
Emilio Cobos Álvarez 8e2d3636d7 Bug 1599876 - Make some string handling in the bindings a bit less terrible. r=boris
cbindgen understands references, so use them rather than pointers when we expect
non-null stuff.

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

--HG--
extra : moz-landing-system : lando
2019-11-27 20:57:51 +00:00
Emilio Cobos Álvarez bcdc101492 Bug 1599324 - Fix Servo_IsCssPropertyRecordedInUseCounter so that we also report disabled properties. r=boris
When zoom is disabled, we still count it, but with the current code the testing
function will throw instead of returning the right value, which means we'd fail
layout/style/test/test_use_counters.html.

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

--HG--
extra : moz-landing-system : lando
2019-11-27 20:51:20 +00:00
jeffin143 e9711f487b Bug 1598528 : convert NS_STYLE_TEXT_ORIENTATION_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D54252

--HG--
extra : moz-landing-system : lando
2019-11-26 04:50:04 +00:00
Emilio Cobos Álvarez 526c7105f0 Bug 1599115 - Simplify some code now that lifetimes are non-lexical. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D54529

--HG--
extra : moz-landing-system : lando
2019-11-25 19:14:37 +00:00
jeffin143 7868d04683 Bug 1597893 : convert NS_STYLE_WINDOW_SHADOW_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D53920

--HG--
extra : moz-landing-system : lando
2019-11-25 16:00:23 +00:00
jeffin143 9b7464720b Bug 1598348 : convert NS_STYLE_OBJECT_FIT_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D54153

--HG--
extra : moz-landing-system : lando
2019-11-25 15:40:50 +00:00
jeffin143 2293551763 Bug 1598539 : convert NS_STYLE_IME_MODE_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D54255

--HG--
extra : moz-landing-system : lando
2019-11-25 15:41:18 +00:00
Mats Palmgren 6bb620e019 Bug 1598234 - [css-grid][cssom] Make 'grid-area'/'grid-column'/'grid-row' shorthands serialize to shortest possible form. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D54386

--HG--
extra : moz-landing-system : lando
2019-11-23 21:24:33 +00:00
Mats Palmgren f96607afa0 Bug 1597884 - [css-grid] Make some grid/grid-template values serialize to a shorter form. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D53913

--HG--
extra : moz-landing-system : lando
2019-11-23 19:58:35 +00:00
Mats Palmgren 774a732b4a Bug 1597639 - [css-grid] Don't accept two trailing <line-names> in the grid/grid-template shorthands. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D53909

--HG--
extra : moz-landing-system : lando
2019-11-23 19:56:34 +00:00
Brindusan Cristian 116ada0728 Backed out changeset f07b485c29ad (bug 1595620) for xpcshell failures at test_css-properties-db.js. CLOSED TREE 2019-11-23 14:48:06 +02:00
Markivo 9dcd8c4485 Bug 1595620 Add support for -webkit-font-feature-settings as an alias of font-feature-settings.r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D54159

--HG--
extra : moz-landing-system : lando
2019-11-23 10:29:58 +00:00
Noemi Erli 92d932148c Backed out changeset 8cdae49ab472 (bug 1598539) for causing build bustages in EditorBase.cpp CLOSED TREE 2019-11-22 22:04:00 +02:00
jeffin143 058d24f2df Bug 1598539 : convert NS_STYLE_IME_MODE_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D54255

--HG--
extra : moz-landing-system : lando
2019-11-22 13:33:59 +00:00
Razvan Maries 8520cc6954 Backed out changeset dce49f743139 (bug 1597893) for build bustages on nsCocoaWindow.mm. CLOSED TREE 2019-11-22 14:50:12 +02:00
jeffin143 6967337237 Bug 1597893 : convert NS_STYLE_WINDOW_SHADOW_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D53920

--HG--
extra : moz-landing-system : lando
2019-11-21 16:52:06 +00:00
Boris Chiou 7a959a5da5 Bug 1582554 - Add a preference for offset-path:ray(). r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D53110

--HG--
extra : moz-landing-system : lando
2019-11-20 22:38:26 +00:00
Bogdan Tara 6aae1c4aaa Backed out changeset 726c8aa10d1a (bug 1597893) for bustages complaining about nsCocoaWindow.h CLOSED TREE 2019-11-21 15:35:09 +02:00
jeffin143 9f50df6c78 Bug 1597893 : convert NS_STYLE_WINDOW_SHADOW_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D53920

--HG--
extra : moz-landing-system : lando
2019-11-21 12:09:03 +00:00
Emilio Cobos Álvarez a46d4afe4b Bug 1559076 - Invalidate parts in nested shadow trees correctly. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D54010

--HG--
extra : moz-landing-system : lando
2019-11-21 10:32:10 +00:00
Emilio Cobos Álvarez 74823e8b90 Bug 1559076 - Implement shadow part forwarding (minus invalidation). r=heycam
Some of the stuff, in particular inside GeckoBindings stuff should be
refactored to be less ugly and duplicate a bit less code, but the rest of the
code should be landable as is.

Some invalidation changes are already needed because we weren't matching with
the right shadow host during invalidation (which made existing ::part() tests
fail).

Pending invalidation work:

 * Making exportparts work right on the snapshots.
 * Invalidating parts from descendant hosts.

They're not very hard but I need to think how to best implement it:

 * Maybe get rid of ShadowRoot::mParts and just walk DOM descendants in the
   Shadow DOM.

 * Maybe implement a ElementHasExportPartsAttr much like HasPartAttr and use
   that to keep the list of elements.

 * Maybe invalidate :host and ::part() together in here[1]

 * Maybe something else.

Opinions?

[1]: https://searchfox.org/mozilla-central/rev/131338e5017bc0283d86fb73844407b9a2155c98/servo/components/style/invalidation/element/invalidator.rs#561

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

--HG--
extra : moz-landing-system : lando
2019-11-21 10:32:32 +00:00
jeffin143 74bcc4abb7 Bug 1597979 : convert NS_STYLE_TEXT_ANCHOR_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D53956

--HG--
extra : moz-landing-system : lando
2019-11-21 08:48:19 +00:00
jeffin143 aa897e8496 Bug 1597881 : convert NS_STYLE_STROKE_LINECAP_* to an enum class in nsStyleConsts.h r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D53908

--HG--
extra : moz-landing-system : lando
2019-11-21 06:07:30 +00:00
Emilio Cobos Álvarez 6ea82affcf Bug 1597588 - Make rust Atom use NonZeroUsize. r=heycam
At first I thought this was going to enable simplifications in the selector
parser (to simplify the attribute selector setup), but I couldn't end up
shrinking the layout enough.

However this should help with bug 1559076, which returns Option<Atom>, and it
was easy to write.

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

--HG--
extra : moz-landing-system : lando
2019-11-20 05:46:56 +00:00
jeffin143 6482a37fc1 Bug 1597741 : use Enum class for NS_STYLE_SHAPE_RENDERING instead of #define r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D53840

--HG--
extra : moz-landing-system : lando
2019-11-20 00:49:19 +00:00
Emilio Cobos Álvarez 1ce127f931 Bug 1559076 - Minor debugging improvements. r=heycam
These were useful when implementing forwarding, and forgot to send them
earlier.

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

--HG--
extra : moz-landing-system : lando
2019-11-19 06:47:12 +00:00
Emilio Cobos Álvarez 8e7c1ccca2 Bug 1597273 - Handle logical shorthand animations with variable references correctly. r=hiro
When we physicalize the declarations for @keyframes, we end up having a physical
declaration with an unparsed value with `from_shorthand` being the logical
shorthand.

Account for this case properly when substituting custom properties, to avoid
panicking.

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

--HG--
extra : moz-landing-system : lando
2019-11-19 00:43:34 +00:00
Boris Chiou d41bf3236a Bug 1506746 - Update the expected direction vector of rotate property in wpt. r=birtles
For interpolations with the primitive rotate3d(), the direction vectors of
the transform functions get normalized first. This should also be applied to
rotate property.

https://drafts.csswg.org/css-transforms-2/#interpolation-of-transform-functions

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

--HG--
extra : moz-landing-system : lando
2019-11-18 20:47:01 +00:00
Emilio Cobos Álvarez ba2ffbed2e Bug 1597123 - Remove NODE_IS_ANONYMOUS_ROOT. r=smaug
We no longer have multiple kinds of anonymous subtrees, so we can get back one
node bit.

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

--HG--
extra : moz-landing-system : lando
2019-11-18 08:49:27 +00:00
Emilio Cobos Álvarez 3bbe26d009 Bug 1596712 - Use only Origin during the cascade, rather than CascadeLevel. r=heycam
The micro-benchmark `style-attr-1.html` regressed slightly with my patch, after
the CascadeLevel size increase.

This benchmark is meant to test for the "changing the style attribute doesn't
cause selector-matching" optimization (which, mind you, keeps working).

But in the process it creates 10k rules which form a perfect path in the rule
tree and that we put into a SmallVec during the cascade, and the benchmark
spends most of the time pushing to that SmallVec and iterating the declarations
(as there's only one property to apply).

So we could argue that the regression is minor and is not what the benchark is
supposed to be testing, but given I did the digging... :)

My patch made CascadeLevel bigger, which means that we create a somewhat bigger
vector in this case. Thankfully it also removed the dependency in the
CascadeLevel, so we can stop using that and use just Origin which is one byte to
revert the perf regression.

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

--HG--
extra : moz-landing-system : lando
2019-11-17 23:28:39 +00:00
Boris Chiou 52546e8558 Bug 1596610 - Set WillChangeBits::TRANSFORM for offset-path and add tests for it. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D53109

--HG--
extra : moz-landing-system : lando
2019-11-16 01:52:32 +00:00
Boris Chiou f918f7fc49 Bug 1594946 - Treat 3d translate/scale as 2d if the value can be expressed as 2d. r=emilio
For the individual transform properties if they spec a value that can be
expressed as 2d we treat as 2d and serialize accordingly.

We drop Translate::Translate and Scale::Scale, and then rename
Translate::Translate3D as Translate::Translate, Scale::Scale3D as
Scale::Scale. So now we use Translate::Translate to represent 2d and 3d
translation, and Scale::Scale to represent 2d and 3d scale. There is no
difference between 2d and 3d translate/scale in Gecko because we always
convert them into 3d format to layers (on the compositor thread), so this
change makes things simpler.

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

--HG--
extra : moz-landing-system : lando
2019-11-15 19:38:24 +00:00
Emilio Cobos Álvarez dbb16b3158 Bug 1596050 - Centralize logic to ignore document colors. r=jfkthame
This was a follow-up from the backplate stuff which I requested but didn't
happen.

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

--HG--
extra : moz-landing-system : lando
2019-11-15 13:39:08 +00:00
Emilio Cobos Álvarez 760ba894bf Bug 1596391 - Fix silly boolean logic mistake. r=bustage a=dluca
MANUAL PUSH: bustage
2019-11-14 15:17:25 +01:00
Emilio Cobos Álvarez 186586e54a Bug 1596391 - Remove NODE_MAY_BE_IN_BINDING_MNGR. r=smaug
Never set anymore.

Depends on D52993

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

--HG--
extra : moz-landing-system : lando
2019-11-14 12:54:00 +00:00
Emilio Cobos Álvarez 1d1b44bdd9 Bug 1588431 - Optimize storage of ApplicableDeclaration again. r=heycam
So that we don't regress perf.

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

--HG--
extra : moz-landing-system : lando
2019-11-13 09:59:10 +00:00
Emilio Cobos Álvarez 7862314a7d Bug 1588431 - Fix cascade order of shadow parts. r=heycam
This moves the shadow cascade order into the cascade level, and refactors the
code a bit for that.

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

--HG--
extra : moz-landing-system : lando
2019-11-14 02:49:54 +00:00