Commit Graph

11913 Commits

Author SHA1 Message Date
Matt Brubeck
9a8bd3b5d7 Bug 1493435 - Upgrade to uluru 0.3. r=nox,emilio
This cherry-picks servo/servo#21789.
2018-09-23 13:52:36 +02:00
Emilio Cobos Álvarez
e049a50395 Bug 1493435 - Partially revert servo/servo#21746. r=ajeffrey
This reverts the relevant bits from #21746 so that style and dependencies can
build with stable.

This is important because:

 * `selectors` is a published crate.

 * Gecko compiles with stable (more or less).

I reviewed that PR under the assumption that the union feature was stable, since
untagged unions are stable since 1.19, but turns out that smallvec uses non-Copy
types in unions, which are still unstable.

This leaves the union feature used on Servo, so that it gets testing, taking
advantage of features being additive.

This cherry-picks servo/servo#21788.
2018-09-23 13:47:26 +02:00
Andre Bogus
52ad6442dc Bug 1493435 - Update smallvec crate and enable the union feature. r=emilio
We had a mix of 0.6.2 and 0.6.5 (which is the current release),
this unifies to the latest version. It also enables the union
feature which removes the discriminant, reducing memory usage.

This cherry-picks servo/servo#21746.
2018-09-23 13:47:13 +02:00
Andreea Pavel
62ce7b988d Merge mozilla-inbound to mozilla-central. a=merge 2018-09-22 12:34:50 +03:00
Boris Chiou
ae2cd2accd Bug 1491954 - Flip boolean half way for path interpolation r=emilio
According to the new svg 2 spec update (#543), we flip the flag half way for
path interpolation.

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

--HG--
extra : moz-landing-system : lando
2018-09-21 18:39:41 +00:00
Emilio Cobos Álvarez
82b6699841 Bug 1386907 - Stop building the style system as a static library. r=froydnj
It's linked as part of gkrust, so this is just wasted work, and compiling it as
two different target just makes rustc do more and probably not so good work.

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

--HG--
extra : moz-landing-system : lando
2018-09-21 12:37:33 +00:00
Brad Werth
4c777072f0 Bug 1418470 Part 1: Provide a specialized parse_method for mask-image to use CORS. r=emilio!
Differential Revision: https://phabricator.services.mozilla.com/D5714

--HG--
extra : rebase_source : 4584b0f4558708d675980f4c5ad4f010c54d8138
2018-09-12 15:54:24 -07:00
Emilio Cobos Álvarez
e39bf77494 Bug 1492567 - Back out bug 1481866. r=dbaron
Summary:
The behavior the WG proposed is way more subtle than what that bug implements,
including:

 * Implementing two logical overflow longhands.
 * Expanding the overflow shorthand to different longhands depending on the
   syntax of that.

Meanwhile, Blink hasn't done the swap and will ship the same behavior that we
shipped in Firefox 61 (bug 1453148), that is, overflow-x, then overflow-y.

So I think lacking a clear way forward we should revert this change and preserve
our shipped behavior.

Reviewers: dbaron!

Tags: #secure-revision

Bug #: 1492567

Differential Revision: https://phabricator.services.mozilla.com/D6317
2018-09-20 01:27:55 +02:00
Xidorn Quan
8396cd75c7 Bug 1483075 - Merge the two scrollbar color properties into scrollbar-color. r=heycam,hiro
Differential Revision: https://phabricator.services.mozilla.com/D6115

--HG--
extra : moz-landing-system : lando
2018-09-19 05:33:12 +00:00
Margareta Eliza Balazs
fdb780335d Merge inbound to mozilla-central. a=merge 2018-09-18 17:33:09 +03:00
Emilio Cobos Álvarez
29ac8f82e5 Bug 1475691 - Make Servo build. r=me
StrongRuleNode is really Sync.
2018-09-18 11:49:11 +02:00
Emilio Cobos Álvarez
52be7ed562 Bug 1475691 - Fix tidy issues. r=me 2018-09-18 11:48:56 +02:00
Manish Goregaokar
b9dfaa50cb Bug 1475691: servo_arc cleanups for publishing r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D6034

--HG--
extra : moz-landing-system : lando
2018-09-18 09:19:18 +00:00
Emilio Cobos Álvarez
491be8bc82 Bug 1491622 - Make LonghandId::flags an indexing operation. r=xidorn
I always see a bunch of time in our profiles in the iterator over the
declarations, this ensures it's not something dumb.

I suspect it's just a bunch of cache misses from walking the rule tree but in
any case this is consistent with the other getters we have and such.

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

--HG--
extra : moz-landing-system : lando
2018-09-18 09:15:12 +00:00
Jonathan Kew
0d4dbd1e37 Bug 1490997 - Use nsAtom instead of nsString for font family name in the FontFamilyName struct, and switch its methods from 16-bit to 8-bit strings. r=lsalzman 2018-09-18 09:34:21 +01:00
Emilio Cobos Álvarez
85db10cfb9 Bug 1491622 - Simplify CSSWideKeyword::parse. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D5972

--HG--
extra : moz-landing-system : lando
2018-09-17 00:53:37 +00:00
Emilio Cobos Álvarez
509bdd94b4 Bug 1440251 - Allow integer division inside calc() expressions. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D5980
2018-09-17 16:30:01 +02:00
Emilio Cobos Álvarez
cba6b81da4 Bug 1491622 - Remove DeclaredValue. r=xidorn
I think it used to be the case that all PropertyDeclaration variants had a
DeclaredValueOwned<T> inside. But that's no longer the case, so this abstraction
seems less useful now.

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

--HG--
extra : moz-landing-system : lando
2018-09-17 04:47:02 +00:00
Emilio Cobos Álvarez
7c47b574fc Bug 1491622 - Deindent the non-css-wide-keyword-related code from cascade_property. r=xidorn
There's no good reason we construct a DeclaredValue as an intermediate step.

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

--HG--
extra : moz-landing-system : lando
2018-09-17 14:12:27 +00:00
Emilio Cobos Álvarez
6d38ed406e Bug 1491622 - Remove DeclaredValue::WithVariables. r=xidorn
We never construct it.

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

--HG--
extra : moz-landing-system : lando
2018-09-17 01:33:15 +00:00
Emilio Cobos Álvarez
c35c3548c2 Bug 1491622 - Make ExtremumLength::valid_for static. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D5975

--HG--
extra : moz-landing-system : lando
2018-09-17 00:54:43 +00:00
Emilio Cobos Álvarez
9eed150bea Bug 1491620 - Split apply_declarations into its own file, and without mako. r=xidorn
All that font code thrown out in the middle was making me mad.

There should be no change in behavior from this patch.

I ran rustfmt on the code but I corrected manually the following:

  https://github.com/rust-lang-nursery/rustfmt/issues/3025

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

--HG--
extra : moz-landing-system : lando
2018-09-17 14:08:29 +00:00
Emilio Cobos Álvarez
570e21fceb Bug 1491579 - Enable nsstring/gecko_debug in a place other than components/style. r=xidorn
That way I can unify Servo's and Gecko's Cargo.toml files.

This is the only conflict that exists since a while ago, and it causes
continuous manual merges when I sync changes around.

This moves it to ports/geckolib, which works equally well and isn't in the Servo
repo.

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

--HG--
extra : moz-landing-system : lando
2018-09-17 05:31:16 +00:00
Emilio Cobos Álvarez
5d7bd126b1 Bug 1491577 - Fix Servo build and drop a FIXME. r=me 2018-09-15 19:26:13 +02:00
Emilio Cobos Álvarez
efcb4b34f7 Bug 1491577 - Remove a useless type bound. r=me 2018-09-15 19:25:58 +02:00
Emilio Cobos Álvarez
01f47f288c Bug 1491577 - Fix Gecko build. r=me 2018-09-15 19:21:22 +02:00
Simon Sapin
b02f9a04eb Bug 1491577 - Replace mpsc with crossbeam/servo channel, update ipc-channel. r=emilio
This cherry-picks servo/servo#21325.

Co-authored-by: Gregory Terzian <gterzian@users.noreply.github.com>
2018-09-15 19:24:23 +02:00
Anshul Malik
8c98e7eef1 Bug 1491577 - Format components/selectors. r=emilio
This cherry-picks servo/servo#21679.
2018-09-15 19:23:40 +02:00
chansuke
79427e9830 Bug 1491577 - Format component size_of_test. r=emilio
This cherry-picks servo/servo#21661.
2018-09-15 19:23:09 +02:00
Matt Brubeck
0399b9e762 Bug 1491577 - Switch from new-ordered-float back to ordered-float. r=emilio
The `new-ordered-float` fork has been merged back into the original
`ordered-float` crate.

This cherry-pics servo/servo#21681.
2018-09-15 19:22:32 +02:00
chansuke
c5695b2220 Bug 1491577 - Format component style_traits. r=emilio
This cherry-picks servo/servo#21620.
2018-09-15 19:21:50 +02:00
kingdido999
f9451c567a Bug 1491577 - Format hashglobe. r=emilio
This cherry-picks servo/servo#21648.
2018-09-15 19:21:23 +02:00
Hiroyuki Ikezoe
17186e2c2f Bug 1483111 - Implement any-hover and any-pointer media queries features. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D3609
2018-08-17 20:29:37 +09:00
Hiroyuki Ikezoe
ef03e2a299 Bug 1035774 - Add media feature keys for hover and pointer. r=heycam,emilio
Summary:
https://drafts.csswg.org/mediaqueries-4/#hover
https://drafts.csswg.org/mediaqueries-4/#pointer

In this patch series, we don't introduce any-hover and any-pointer media
features yet, but functionalities for them on each platform backends will be
introduced in this patch series, so eIntID_AllPointerCapabilities and relevant
stuff is added in this patch for the convenience that each platform backends
can be reviewed at once.

Differential Revision: https://phabricator.services.mozilla.com/D3296
2018-08-14 17:13:04 +09:00
Cameron McCormack
fe196275ba Bug 1489529 - Update comments to no longer point to nsRuleNode. r=emilio
There are a few mentions of nsRuleNode left but they are mostly
historical references so it makes sense to keep them.

Differential Revision: https://phabricator.services.mozilla.com/D5505
2018-09-12 17:37:37 +10:00
Brad Werth
0af3cd1d2f Bug 1434963 Part 2: Expand the Parser trait to allow anonymous CORS to be applied. r=emilio
Depends on D5106

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

--HG--
extra : moz-landing-system : lando
2018-09-11 18:11:05 +00:00
Brad Werth
1795d0bec9 Bug 1434963 Part 1: Change Gecko_ImageValue_Create to take a CORS mode argument. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D5106

--HG--
extra : moz-landing-system : lando
2018-09-11 18:11:02 +00:00
Emilio Cobos Álvarez
e1f2213a03 Bug 1490311 - Remove unused nsStyleFont::{EnableZoom, UnZoomText}. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D5530
2018-09-11 20:08:19 +02:00
Emilio Cobos Álvarez
1f3f128954 Bug 1489676 - Teach ComputeSquaredDistance derive about #[animation(constant)]. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D5337
2018-09-11 00:12:49 +02:00
Daniel Varga
d34223c4cb Backed out changeset 85d1a0c3f60c (bug 1489676) for mochitest failures at dom/animation/test/mozilla/test_distance_of_path_function.html on a CLOSED TREE 2018-09-10 13:36:56 +03:00
Emilio Cobos Álvarez
911670e275 Bug 1489676 - Teach ComputeSquaredDistance derive about #[animation(constant)]. r=xidorn
Differential Revision: https://phabricator.services.mozilla.com/D5337

--HG--
extra : moz-landing-system : lando
2018-09-10 09:42:27 +00:00
Henri Sivonen
1a38ec4710 Bug 1486711 - Fill logically uninitialized parts of an XPCOM string's buffer with a marker byte in debug builds. r=froydnj
MozReview-Commit-ID: IwLikJpacAW

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

--HG--
extra : moz-landing-system : lando
2018-09-07 05:47:57 +00:00
chansuke
41097313c4 Bug 1489862 - Format style component. r=emilio
This cherry-picks servo/servo#21652.
2018-09-09 17:03:19 +02:00
Boris Chiou
58b7c8f2bd Bug 1486094 - Part 5: Use the standalone struct and enum for the flags in SVG path. r=emilio,birtles
We define the standalone types for using derive macro easily and overriding
the behaviors of this traits. This could avoid defining the general
behavior of booleans.

Depends on D4788

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

--HG--
extra : moz-landing-system : lando
2018-09-07 22:25:59 +00:00
Boris Chiou
6604dde882 Bug 1486094 - Part 2: Make offset-path:path() animatable. r=birtles
Here, we change the animation type of offset-path as ComputedValue, so
we could do animation on it. Also enable the wpt for offset-path
interpolation. In test_transition_per_property.html, we add some basic tests
ifor offset-path.

ToAnimatedZero for PathCommand will be dropped later.

Because the animations of arcs with mismatched flags are fallen back to
discrete animations, the result of getComputedValue is not normalized in this
case. This makes some wpt failed even though the progress is 100%.

Depends on D4786

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

--HG--
extra : moz-landing-system : lando
2018-09-07 22:29:12 +00:00
Boris Chiou
7f3e5437ff Bug 1486094 - Part 1: Make SVGPathData and |clip-path:path()| animatable. r=birtles
Implement Animate trait for SVGPathData.

The basic idea is: we normalize |this| and |other| svg paths, and then
do interpolation on the normalized svg paths. The normalization is to
convert relative coordinates into absolute coordinates, so we could do
real number interpolation on each path command directly.

In this patch, we also make |clip-path:path()| animatable.

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

--HG--
extra : moz-landing-system : lando
2018-09-07 22:15:50 +00:00
chansuke
0f1a2fb4bc Bug 1489667 - Format component of style_derive. r=emilio
This cherry-picks servo/servo#21635
2018-09-08 00:22:21 +02:00
Pyfisch
bdac24a9e1 Bug 1488854: Rustfmt malloc_size_of & derive. r=emilio 2018-09-05 19:31:09 +02:00
kingdido999
348835a0d3 Bug 1488854: Format components fallible and geometry. r=emilio
This cherry-picks servo/servo#21598.
2018-09-05 19:31:02 +02:00
Emilio Cobos Álvarez
a4f9eea8e5 Bug 1488414 - Use decomposition to interpolate matched perspective transform operations. r=birtles
Looks like this produces sensible results for interpolation with 0, though I'm
not really convinced about the results from, let's say, 1px to 2000px in the
attached test-case, I would've expected a linear interpolation from that to go
through normal length interpolation.

css-transforms-1 says:

  > Two transform functions with the same name and the same number of arguments
  > are interpolated numerically without a former conversion. The calculated
  > value will be of the same transform function type with the same number of
  > arguments.
  >
  > Special rules apply to <matrix()>.

Which is what we do... I was going to file a spec issue but turns out that it's
already addressed in css-transforms-2:

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

Which says:

  > The transform functions <matrix()>, matrix3d() and perspective() get
  > converted into 4x4 matrices first and interpolated as defined in section
  > Interpolation of Matrices afterwards.

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

--HG--
extra : moz-landing-system : lando
2018-09-05 13:35:06 +00:00