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

12858 Коммитов

Автор SHA1 Сообщение Дата
fantasai d9d30c73ad Bug 1315892 - 'text-orientation: upright' forces used 'direction' to LTR. r=jfkthame 2019-09-16 09:23:30 +09:00
Bastien Orivel e20d4dc52f Bug 1580908 - Part 11: Fix test_size_of_rule_node. r=emilio
Apparently I made SourcePropertyDeclaration 8 bytes shorter by updating
arrayvec. (see
b56c3b78d0
and
29012231a8
for details)

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

--HG--
extra : moz-landing-system : lando
2019-09-12 22:22:50 +00:00
Bastien Orivel d843925e5f Bug 1580908 - Part 7: Update serde_bytes to 0.11. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D45716

--HG--
extra : moz-landing-system : lando
2019-09-12 21:46:21 +00:00
Bastien Orivel c98f904a4d Bug 1580908 - Part 2: Update env_logger to 0.6. r=froydnj
This is one less dependency on regex 0.2

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

--HG--
extra : moz-landing-system : lando
2019-09-12 21:46:02 +00:00
Emilio Cobos Álvarez a7c5dffa9c Bug 1580963 - Fix servo build and rustfmt recent changes.
Differential Revision: https://phabricator.services.mozilla.com/D45741

--HG--
extra : moz-landing-system : lando
2019-09-12 21:09:45 +00:00
Emilio Cobos Álvarez 5c93ac4bae Bug 1580963 - Cherry-pick style changes from servo's victor import.
https://github.com/servo/servo/pull/24165

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

--HG--
extra : moz-landing-system : lando
2019-09-12 21:09:39 +00:00
Emilio Cobos Álvarez 7617a0e6fe Bug 1580963 - Cherry-pick some servo changes from a rustc upgrade.
This cherry-picks from Servo commit 98e4a53b724.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 21:09:27 +00:00
Emilio Cobos Álvarez 78a7d864e6 Bug 1577139 - Remove LengthPercentage::was_calc. r=heycam
There should not be any behavior change between specifying a percentage using %
or calc(%) per the resolution of https://github.com/w3c/csswg-drafts/issues/3482.

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

--HG--
extra : moz-landing-system : lando
2019-09-12 08:14:44 +00:00
Emilio Cobos Álvarez 0140a5576c Bug 1577439 - Shutdown Servo's thread-pool in leak-checking builds, leak the atom table elsewhere. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D44217

--HG--
extra : moz-landing-system : lando
2019-09-09 22:39:46 +00:00
Michael Woerister 77f7095cb5 Bug 1577171 - Remove duplicated logic from Stylo's Gecko wrapper. r=emilio
Stylo's Gecko wrapper duplicated some logic from the C++ side so
that the Rust compiler would be able to optimize better. Now that
we have xLTO, this kind of manual inlining should not be neccessary
anymore.

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

--HG--
extra : moz-landing-system : lando
2019-09-09 17:23:20 +00:00
Boris Chiou d9a0cd885d Bug 1574222 - Tweak the serialization of text-decoration. r=emilio
We are trying to not serialize `text-decoration-line: none` if there are other
non-default values for the longhands.

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

--HG--
extra : moz-landing-system : lando
2019-09-10 21:51:54 +00:00
Cameron McCormack 7052f624b5 Bug 1578147 - Align the Rust and C++ representations of WritingMode. r=emilio,jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D44412

--HG--
extra : moz-landing-system : lando
2019-09-09 04:49:55 +00:00
Gurzau Raul 9470d77271 Backed out changeset a396ec8f44fd (bug 1577439) for failing valgrind-test on a CLOSED TREE. 2019-09-07 19:03:27 +03:00
Emilio Cobos Álvarez d748b6062a Bug 1577439 - Shutdown Servo's thread-pool in leak-checking builds, leak the atom table elsewhere. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D44217

--HG--
extra : moz-landing-system : lando
2019-09-05 19:18:27 +00:00
Emilio Cobos Álvarez d5bc03b6f0 Bug 1578295 - Use cbindgen for counters. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D44403

--HG--
extra : moz-landing-system : lando
2019-09-02 23:11:26 +00:00
Emilio Cobos Álvarez a8acf7d61d No bug - Add a comment about a Send bound that may look confusing.
MANUAL PUSH: comment only, no bug
2019-09-02 13:53:55 +02:00
Razvan Maries 80cfb7b1f5 Backed out changeset 42ebd8a50978 (bug 1577439) for causing perma leakcheck | tab process: negative leaks caught. 2019-09-01 03:41:33 +03:00
Emilio Cobos Álvarez 5ba33267fa Bug 1577439 - Shutdown Servo's thread-pool in leak-checking builds, leak the atom table elsewhere. r=bholley
Differential Revision: https://phabricator.services.mozilla.com/D44217

--HG--
extra : moz-landing-system : lando
2019-08-31 23:28:26 +00:00
Emilio Cobos Álvarez 4505c339ab Bug 1576229 - Account for user stylesheets for Shadow DOM invalidation. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D43992

--HG--
extra : moz-landing-system : lando
2019-08-30 14:35:34 +00:00
Boris Chiou c8dba8c886 Bug 1575062 - Support css use counters for unimplemented properties. r=emilio
For developing properties, we will handle them in an other bug.

Besides, I use an iframe for the test because we create a use counter in
the constructor of Document, which use the prefs to decide what kind of
properties we want to record. So, in the test, we have to reload iframe
to make sure we re-create the document, so does the use counter, to make
sure the prefs work properly.

The two prefs affect the css use counters:
1. layout.css.use-counters.enabled: Allocate use counters, and record
   non-custom properties.
2. layout.css.use-counters-unimplemented.enabled: Record all unimplmented
   properties into the use counters.

If we disable layout.css.use-counters.enblaed, we don't create use counters
object, so layout.css.use-counters-unimplemented.enabled doesn't work,
either.

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

--HG--
extra : moz-landing-system : lando
2019-08-29 23:40:13 +00:00
Mats Palmgren e45d08541b Bug 1576821 - [css-lists-3] Make 'none' invalid as a <counter-style> in counter()/counters(). r=emilio
CSSWG resolution:
https://github.com/w3c/csswg-drafts/issues/4163#issuecomment-521331100

Spec:
https://drafts.csswg.org/css-lists-3/#counter-functions

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

--HG--
extra : moz-landing-system : lando
2019-08-30 00:15:37 +00:00
Joel Olsson 00e5276301 Bug 1565562: Media Query - Enable single <number> and <number>/<number> for <aspect-ratio>. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D41557

--HG--
extra : moz-landing-system : lando
2019-08-29 10:48:52 +00:00
Emilio Cobos Álvarez c17fdaaa27 Bug 1576703 - Update cbindgen. r=boris
This cleans up the pattern of "Use a private dtor so that the helper functions
do the right thing" by enabling it everywhere using:

  https://github.com/eqrion/cbindgen/pull/377

It also caught some uninitialized value issues.

I think they're mostly harmless since we zero-initialize our structs:

https://searchfox.org/mozilla-central/rev/325c1a707819602feff736f129cb36055ba6d94f/servo/components/style/properties/gecko.mako.rs#632

And since we override the clip rect, which is the other bit of code that was
failing to build with this change.

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

--HG--
extra : moz-landing-system : lando
2019-08-26 23:18:46 +00:00
Emilio Cobos Álvarez 7cc40cf7ef Bug 1576666 - Use cbindgen for clip / -moz-image-region. r=boris
This also fixes some of the issues with -moz-image-region, where we just minted
an auto out of the blue.

Depends on D43472

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

--HG--
extra : moz-landing-system : lando
2019-08-26 23:09:47 +00:00
Emilio Cobos Álvarez 996cd73ea9 Bug 1576666 - Remove old warning allow which is no longer relevant. r=boris
-moz-appearance uses cbindgen since a long time ago.

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

--HG--
extra : moz-landing-system : lando
2019-08-26 20:09:19 +00:00
Emilio Cobos Álvarez f93d4c2566 Bug 1576587 - Rustfmt declaration_block.rs and glue.rs
Differential Revision: https://phabricator.services.mozilla.com/D43400

--HG--
extra : moz-landing-system : lando
2019-08-26 09:58:53 +00:00
Emilio Cobos Álvarez ba5c709666 Bug 1575608 - Simplify -x-span property. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D42914

--HG--
extra : moz-landing-system : lando
2019-08-21 20:02:13 +00:00
Emilio Cobos Álvarez 346d47d739 Bug 1575608 - Avoid manual paint-order glue code. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D42913

--HG--
extra : moz-landing-system : lando
2019-08-21 19:47:53 +00:00
Emilio Cobos Álvarez 611e05f178 Bug 1575608 - Avoid some signed -> unsigned conversions for box-ordinal-group. r=dholbert
This is consistent with the `order` property anyhow, and allows to simplify some
code.

Negatives are still not parsed, but rust uses a similar representation for all
CSS <integer> values and so should C++.

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

--HG--
extra : moz-landing-system : lando
2019-08-21 18:35:31 +00:00
Emilio Cobos Álvarez f11bf00012 Bug 1575559 - Make font-variant-alternates use cbindgen. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D42859

--HG--
extra : moz-landing-system : lando
2019-08-21 22:45:26 +00:00
Emilio Cobos Álvarez 110fe36713 Bug 1575559 - Fix rebase messup that makes a constructor public which shouldn't be. r=boris
I just drive-by noticed this, but I think it's worth fixing.

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

--HG--
extra : moz-landing-system : lando
2019-08-21 18:28:23 +00:00
Emilio Cobos Álvarez 5ad7bad9b0 Bug 1575559 - Remove unused impl_coord_copy. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D42857

--HG--
extra : moz-landing-system : lando
2019-08-21 18:25:21 +00:00
Mats Palmgren acbd6a2b96 Bug 1574994 part 2 - Remove display:-moz-inline-grid/-moz-inline-stack. r=emilio
Depends on D42551

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

--HG--
extra : moz-landing-system : lando
2019-08-19 21:19:04 +00:00
Boris Chiou 03853a6e87 Bug 1574957 - Clamp negative values for font-size-adjust animations. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D42586

--HG--
extra : moz-landing-system : lando
2019-08-20 01:30:43 +00:00
Dzmitry Malyshau 9875e48074 Bug 1575008 - Update parking_lot dependency to 0.9.0 r=aosmond
Updating parking_lot would allow us to avoid dependency duplication when WebGPU tree is vendored.

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

--HG--
rename : third_party/rust/parking_lot_core/src/thread_parker/wasm.rs => third_party/rust/parking_lot_core/src/thread_parker/wasm_atomic.rs
extra : moz-landing-system : lando
2019-08-19 21:28:51 +00:00
Emilio Cobos Álvarez 6a74af6652 Bug 1572738 - Don't clamp font-size calc() factors too early. r=manishearth
These two bugs (bug 1572738 and bug 1572451) are stylo regressions.

When font-family changes, we try to recompute the font-size with a length /
percentage combinations in case the generic family changes, so the user
preferences are kept.

When calc() is involved, we clamp to non-negative too early, via
NonNegativeLength::scale_by.

I think we should generally dump this "try to track font-size across calc()"
thingie, as as various comments note it is not quite perfect, and it's not clear
how it should work in presence of min()/max().

This patch fixes the issue and simplifies code a bit, I may consider removing
this altogether in a follow-up.

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

--HG--
extra : moz-landing-system : lando
2019-08-19 19:59:48 +00:00
Emilio Cobos Álvarez a03875ef63 Bug 1568536 - Simplify some style system APIs. r=heycam
Return a raw pointer instead of a strong reference to a ComputedStyle, and
handle the case of the style not being present by returning null rather than
requiring an extra function to check it and crashing if the precondition is not
met.

Also, name them so that it's clear they just return outdated styles and don't
make any extra effort.

This is just cleanup that makes the next patch easier / more obvious.

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

--HG--
extra : moz-landing-system : lando
2019-08-16 05:59:03 +00:00
Mats Palmgren 1f1f009b71 Bug 1574060 - Implement layout for 'display: flow-root list-item'. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D42087

--HG--
extra : moz-landing-system : lando
2019-08-16 06:30:24 +00:00
Emilio Cobos Álvarez 4be851e345 Bug 1574148 - Update itertools in the style crate.
It was updated in Servo long ago.

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

--HG--
extra : moz-landing-system : lando
2019-08-15 13:31:47 +00:00
Emilio Cobos Álvarez 3a60b58080 Bug 1574148 - Fix Servo build and unify display representation.
Differential Revision: https://phabricator.services.mozilla.com/D42130

--HG--
extra : moz-landing-system : lando
2019-08-15 13:31:44 +00:00
Emilio Cobos Álvarez 3fb09c923b Bug 1574148 - Fix formatting of recent changes.
Differential Revision: https://phabricator.services.mozilla.com/D42129

--HG--
extra : moz-landing-system : lando
2019-08-15 13:31:37 +00:00
Emilio Cobos Álvarez 7455082edb Bug 1574148 - Cherry-pick some Servo build/formatting fixes.
Differential Revision: https://phabricator.services.mozilla.com/D42128

--HG--
extra : moz-landing-system : lando
2019-08-15 13:31:36 +00:00
Mats Palmgren c784db904f Bug 1557825 part 1 - Implement 'display:block ruby'. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D40211

--HG--
extra : moz-landing-system : lando
2019-08-14 14:38:31 +00:00
Mats Palmgren 740cfc08a3 Bug 1105868 part 3 - Implement 'inline list-item' and 'inline flow-root list-item' values for the 'display' property. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D39832

--HG--
extra : moz-landing-system : lando
2019-08-14 14:37:03 +00:00
Mats Palmgren 307e0a6d66 Bug 1569825 - Hide some 'display' values in devtools auto-completion that we want to discourage authors from using. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D39810

--HG--
extra : moz-landing-system : lando
2019-08-14 14:35:56 +00:00
Mats Palmgren 6b3058eeb5 Bug 1038294 part 12 - Implement multi-keyword 'display' values for Gecko. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D39764

--HG--
extra : moz-landing-system : lando
2019-08-14 14:34:37 +00:00
Charlie Marlow 693746ef3d Bug 1558929: adding from-font support to text-underline-offset and text-decoration-thickness r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D41476

--HG--
extra : moz-landing-system : lando
2019-08-13 17:43:25 +00:00
Emilio Cobos Álvarez 588e375d87 Bug 1573106 - Use shortest serialization for computed text-emphasis-style too. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D41513

--HG--
extra : moz-landing-system : lando
2019-08-13 19:26:02 +00:00
Narcis Beleuzu 043721cdd8 Backed out changeset 0836c998795b (bug 1573106) for wpt failures on accumulation-per-property.html . CLOSED TREE 2019-08-13 05:18:44 +03:00
Emilio Cobos Álvarez 7e441e1dd8 Bug 1573106 - Use shortest serialization for computed text-emphasis-style too. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D41513

--HG--
extra : moz-landing-system : lando
2019-08-12 21:31:52 +00:00
Emilio Cobos Álvarez 6283631506 Bug 1572805 - Adjust comment grammar as suggested by xidorn. r=comment-only
MANUAL PUSH: Comment only post-review fixup

DONTBUILD
2019-08-11 22:47:15 +02:00
Razvan Maries c9a1909817 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-08-11 12:48:00 +03:00
Csoregi Natalia 99bc0eceee Merge mozilla-central to mozilla-inbound. CLOSED TREE 2019-08-11 00:39:45 +03:00
Csoregi Natalia 6d04491407 Merge inbound to mozilla-central. a=merge 2019-08-11 00:28:20 +03:00
Emilio Cobos Álvarez 20dc132b08 Bug 1553545 - Remove now-incorrect comment. r=comment-only
MANUAL PUSH: Comment-only fixup to an inbound patch.

DONTBUILD
2019-08-10 18:40:18 +02:00
Joel Olsson aa7bc8f357 Bug 1553545 - Enable font-size:xxx-large. r=emilio
MANUAL PUSH: Manually fixed up contributor's patch stack to squash the two patches in the bug.

Differential Revision: https://phabricator.services.mozilla.com/D41240
2019-08-10 18:32:33 +02:00
Charlie Marlow ab6f4c453d Bug 1572303: updating text-underline-offset to support ::first-line/first-letter/placeholder r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D41227

--HG--
extra : moz-landing-system : lando
2019-08-09 04:58:10 +00:00
Csoregi Natalia 3edad1f4b7 Merge mozilla-central to autoland. CLOSED TREE 2019-08-11 00:36:21 +03:00
Emilio Cobos Álvarez 1322bb7290 Bug 1572805 - Undo last minute serialization change so that I can land it with tests. r=me
MANUAL PUSH: bustage, some WPTs need updating.
2019-08-10 22:21:12 +02:00
Emilio Cobos Álvarez 6068035edc Bug 1572805 - Use cbindgen for text-emphasis-style. r=boris
I sent https://github.com/eqrion/cbindgen/pull/377 since I got sick of
copy-pasting the private default constructor stuff :)

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

--HG--
extra : moz-landing-system : lando
2019-08-10 18:11:31 +00:00
Emilio Cobos Álvarez 60447df0e6 Bug 1572805 - Simplify text-emphasis-style. r=boris,xidorn
Differential Revision: https://phabricator.services.mozilla.com/D41418

--HG--
extra : moz-landing-system : lando
2019-08-10 18:15:37 +00:00
Daniel Varga 3430859a68 Backed out 2 changesets (bug 1572805) for build-rusttests failure. On a CLOSED TREE
Backed out changeset 849ca4b3f9de (bug 1572805)
Backed out changeset 81b56d76505a (bug 1572805)
2019-08-10 21:07:03 +03:00
Emilio Cobos Álvarez ccd8c3bedc Bug 1572805 - Use cbindgen for text-emphasis-style. r=boris
I sent https://github.com/eqrion/cbindgen/pull/377 since I got sick of
copy-pasting the private default constructor stuff :)

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

--HG--
extra : moz-landing-system : lando
2019-08-10 16:21:15 +00:00
Emilio Cobos Álvarez 5d9d9b9844 Bug 1572805 - Simplify text-emphasis-style. r=boris,xidorn
Differential Revision: https://phabricator.services.mozilla.com/D41418

--HG--
extra : moz-landing-system : lando
2019-08-10 16:23:52 +00:00
Emilio Cobos Álvarez 56df9575bc Bug 1499000 - Don't do CORS checks on CSS images with the resource:// scheme. r=bzbarsky
CORS only works on http channels, so anything else that tries to do a
CORS-enabled request fails catastrophically.

resource:// images are useful for extension developers, so don't perform CORS
checks on them. We may want to also do file:// and fix bug 1565509, while at it,
if we consider it's causing developer pain.

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

--HG--
extra : moz-landing-system : lando
2019-08-09 18:09:55 +00:00
Charlie Marlow b469e3daed Bug 1572304: updating text-decoration-skip-ink to support ::first-line/first-letter/placeholder r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D41228

--HG--
extra : moz-landing-system : lando
2019-08-08 18:44:03 +00:00
Nicholas Nethercote 2c0b69fee1 Bug 1563555 - Use `static_prefs::pref!` in Stylo. r=emilio
It's much nicer.

One nice thing about this is that the new code is subject to the existing
threadedness checking, which identified that several of these should be atomic
because they're accessed off the main thread.

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

--HG--
extra : moz-landing-system : lando
2019-08-07 22:58:55 +00:00
Charlie Marlow be2d349416 Bug 1555865: added text-decoration-thickness to the text-decoration shorthands r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D40335

--HG--
extra : moz-landing-system : lando
2019-08-07 17:42:15 +00:00
Cosmin Sabou 9453cf60bf Backed out 2 changesets (bug 1563555) for causing marionette failures on test_profile_management.py.
Backed out changeset 2559f5ddf8e0 (bug 1563555)
Backed out changeset e3c86ffa168c (bug 1563555)

--HG--
extra : histedit_source : 8569cceff2845f697109e2077a00c96074c7fe83
2019-08-07 12:09:13 +03:00
Nicholas Nethercote b723ddbe42 Bug 1563555 - Use `static_prefs::pref!` in Stylo. r=emilio
It's much nicer.

One nice thing about this is that the new code is subject to the existing
threadedness checking, which identified that several of these should be atomic
because they're accessed off the main thread.

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

--HG--
extra : moz-landing-system : lando
2019-08-07 04:17:08 +00:00
Boris Chiou e158ad1169 Bug 1339672 - Support multiple track sizes for grid-auto-{columns|rows}. r=emilio,mats
Support `<track-size>+` on the implicit track sizing properties,
grid-auto-columns and grid-auto-rows.

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

--HG--
extra : moz-landing-system : lando
2019-08-06 18:32:16 +00:00
Emilio Cobos Álvarez 9e60b0219a Bug 1571537 - Don't write manual glue code for the order property. r=boris
The default code works just as well.

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

--HG--
extra : moz-landing-system : lando
2019-08-06 12:08:47 +00:00
Emilio Cobos Álvarez bbb4b8dac6 Bug 1519958 - followup: Fix bustage in 32-bit builds and rust unit tests. r=me
CLOSED TREE
2019-08-05 22:53:35 +02:00
Emilio Cobos Álvarez 30fc8c8c4d Bug 1519958 - Improve stack size of grid templates and re-enable style struct size assertions disabled in the previous patch. r=boris
This re-enables the assertion which was disabled on the previous patch by doing
a bit of boxing around.

Differential Revision: https://phabricator.services.mozilla.com/D36599
2019-08-05 22:13:33 +02:00
Emilio Cobos Álvarez 1f3d6c04f2 Bug 1519958 - Refactor grid types to preserve repeat() at computed value time and use cbindgen. r=mats,boris
I'm _really_ sorry for the size of the patch. I tried to do this in two steps
but it was a lot of work and pretty ugly.

This patch makes us use cbindgen for grid-template-{rows,columns}, in order to:

 * Make us preserve repeat() at computed-value time. This is per spec since
   interpolation needs to know about repeat(). Except for subgrid, which did the
   repeat expansion at parse-time and was a bit more annoying (plus it doesn't
   really animate yet so we don't need it to comply with the spec).

 * Tweaks the WPT tests for interpolation to adopt the resolution at:
   https://github.com/w3c/csswg-drafts/issues/3503.

Trade-off here, as this patch stands, is that this change makes us use less
long-living memory, since we expand repeat() during layout, but at the cost of a
bit of CPU time during layout (conditional on the property applying though,
which wasn't the case before). It should be very easy to store a cached version
of the template, should this be too hot (I expect it isn't), or to change the
representation in other ways to optimize grid layout code if it's worth it.

Another trade-off: I've used SmallPointerArray to handle line-name merging,
pointing to the individual arrays in the style data, rather than actually
heap-allocating the merged lists. This would also be pretty easy to change
should we measure and see that it's not worth it.

This patch also opens the gate to potentially improving memory usage in some
other ways, by reference-counting line-name lists for example, though I don't
have data that suggests it is worth it.

In general, this patch makes much easier to tweak the internal representation of
the grid style data structures. Overall, I think it's a win, the amount of magic
going on in that mako code was a bit huge; it took a bit to wrap my head around
it.

This patch comments out the style struct size assertions. They will be
uncommented in a follow-up patch which contains some improvements for this type,
which are worth getting reviewed separately.

Also, this patch doesn't remove as much code as I would've hoped for because of
I tried not to change most of the dom/grid code for inspector, but I think a
fair bit of the nsGridContainerFrame.cpp code that collects information for it
can be simplified / de-copy-pasted to some extent. But that was a pre-existing
problem and this patch is already quite massive.

Differential Revision: https://phabricator.services.mozilla.com/D36598
2019-08-05 22:13:21 +02:00
Emilio Cobos Álvarez 6515ac7225 Bug 1571151 - Expand and simplify a macro that's not very useful. r=boris
Skip whitespace upfront rather than on each individual branch. The only
difference in behavior is that we would've consumed some extra whitespace in the
error case, but I don't think that matters at all.

We were consuming some extra whitespace as well after the close path command for
example, which wasn't parsing anything.

Depends on D40538

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

--HG--
extra : moz-landing-system : lando
2019-08-03 10:05:14 +00:00
Emilio Cobos Álvarez 8374c113aa Bug 1571151 - Deindent a bit SVG path parsing code. r=boris
None cannot be returned, since we just called peek() and it returned something.

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

--HG--
extra : moz-landing-system : lando
2019-08-03 10:01:58 +00:00
Emilio Cobos Álvarez 0f118f30e5 Bug 1404140 - Remove the GetCSNeedsLayoutFlush flag, as it is unneeded now. r=heycam
MANUAL PUSH: Would need to reorder the stack manually (https://bugzilla.mozilla.org/show_bug.cgi?id=1481539)

Differential Revision: https://phabricator.services.mozilla.com/D40300
2019-08-03 04:10:55 +02:00
Emilio Cobos Álvarez b38e7248ab Bug 1404140 - Don't flush layout for layout-dependent properties if we know that it won't affect the result. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D40299
2019-08-03 04:09:13 +02:00
Boris Chiou f7b833b7ce Bug 1559231 - Make offset-anchor animatable. r=birtles
Per the spec issue, https://github.com/w3c/csswg-drafts/issues/3482,
we update the wpt to keep the percentage in `calc()` for `offset-anchor`.

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

--HG--
extra : moz-landing-system : lando
2019-08-02 20:12:40 +00:00
Boris Chiou b91b90c199 Bug 1559231 - Support offset-anchor. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D39432

--HG--
extra : moz-landing-system : lando
2019-08-02 20:12:38 +00:00
Brindusan Cristian 0b3e26149c Backed out 2 changesets (bug 1559231) for rusttests build bustages. CLOSED TREE
Backed out changeset d47d9f4bf9a9 (bug 1559231)
Backed out changeset 50f92d01c47a (bug 1559231)
2019-08-02 21:55:37 +03:00
Boris Chiou 4dbc9ab7ef Bug 1559231 - Make offset-anchor animatable. r=birtles
Per the spec issue, https://github.com/w3c/csswg-drafts/issues/3482,
we update the wpt to keep the percentage in `calc()` for `offset-anchor`.

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

--HG--
extra : moz-landing-system : lando
2019-08-02 00:47:09 +00:00
Boris Chiou 9463547bb3 Bug 1559231 - Support offset-anchor. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D39432

--HG--
extra : moz-landing-system : lando
2019-08-02 00:43:11 +00:00
Emilio Cobos Álvarez d93f6419d8 Bug 1570721 - Move the overrides to a separate struct in nsPresContext. r=heycam
Just so that we can keep track of these together.

Differential Revision: https://phabricator.services.mozilla.com/D40247
2019-08-02 15:18:24 +02:00
Emilio Cobos Álvarez e288006e4e Bug 1570721 - Simplify emulated medium setup in nsPresContext. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D40246
2019-08-02 15:18:19 +02:00
Emilio Cobos Álvarez 864a54dff0 Bug 1570182 - Fix cursor prefixed aliases to do the right thing. r=boris
This was an oversight in bug 1520154. We kept the -moz- version in the specified
value but not the computed value.

That's a very peculiar way of making aliases work. This makes them work
consistently as many other aliases instead.

Also, add an assert that would've caught this much much earlier.

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

--HG--
extra : moz-landing-system : lando
2019-07-31 18:18:21 +00:00
Emilio Cobos Álvarez caf746c853 Bug 1569911 - Fix some issues when importing the previous patches in Gecko.
MANUAL PUSH: Manual cherry-pick of Servo code.
2019-07-30 12:25:12 +02:00
Simon Sapin ff58da4ccc Bug 1569911 - Servo: Generate apis.html and css-properties.json for docs as part of crates' build scripts. r=nox
… rather than as an extra step after `cargo doc`.
This helps always using the correct set of CSS properties
(for layout 2013 v.s. 2020).

Cherry-picked from: https://github.com/servo/servo/pull/23856
2019-07-30 12:24:10 +02:00
Simon Sapin df960afd6f Bug 1569911 - Stylo: replace product={gecko,servo} with engine={gecko,servo-2013,servo-2020}. r=emilio,nox
Renaming the variable helped make sure I looked at every use.

Cherry-picked from: https://github.com/servo/servo/pull/23856
2019-07-30 12:24:07 +02:00
Simon Sapin 5448b8c036 Bug 1569911 - Servo: Auto-generate CSSStyleDeclaration.webidl for CSS properties based on the style crate. r=nox
Cherry-picked from https://github.com/servo/servo/pull/23856
2019-07-30 12:23:51 +02:00
Mike Hommey bf3db9e84f Bug 1569331 - Update bindgen to 0.51. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D39580

--HG--
extra : moz-landing-system : lando
2019-07-27 00:36:18 +00:00
Boris Chiou 0d2240d1bd Bug 1568615 - Accept percentage for shape-image-threshold. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D39241

--HG--
extra : moz-landing-system : lando
2019-07-24 21:37:22 +00:00
Emilio Cobos Álvarez 8f9891381d Bug 1568446 - followup: Properly refcount-log UniqueArcs created with new_uninitialized(). 2019-07-24 13:44:49 +02:00
Emilio Cobos Álvarez 8e87a20fb9 Bug 1568446 - Don't insta-free in UniqueArc::assume_init. r=SimonSapin
Also sent to https://github.com/servo/servo/pull/23843.
2019-07-24 12:39:15 +02:00
Simon Sapin da9e1d3b0e Bug 1568446 - Replace uses of mem::uninitialized with MaybeUninit. r=emilio
Cherry-picked from: https://github.com/servo/servo/pull/23824
2019-07-24 12:39:11 +02:00
Simon Sapin b6cef5cba9 Bug 1568446 - Add UniqueArc::new_uninit, UniqueArc::assume_init. r=emilio
Cherry-picked from: https://github.com/servo/servo/pull/23824
2019-07-24 12:39:06 +02:00
Emilio Cobos Álvarez 42fd1a62a1 Bug 1568083 - Fix servo build and rustfmt / tidy recent changes. 2019-07-23 02:18:36 +02:00
Emilio Cobos Álvarez 558d3a5cc2 Bug 1568083 - Fix a warning in Servo builds by moving a macro to where it's used. 2019-07-23 02:18:35 +02:00
Patrick Walton b65fc89d31 Bug 1568083 - WebRender units are no longer reexported. r=emilio
This cherry-picks changes from Servo PR #23516.
2019-07-23 02:18:35 +02:00