Commit Graph

1033 Commits

Author SHA1 Message Date
Cameron McCormack
54828ee07e servo: Merge #15538 - Do RestyleHint assertions at runtime so they use build-time bindgen (from heycam:mv-test); r=bholley
Currently these assertions work off the in-tree bindings.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: dda5c3c3229d399672cbd7909d2b34f8985d4f3f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5250087cba110493962b25b43769d9907e0ce3f6
2017-02-13 19:44:12 -08:00
Jan Beich
4a42f6eb23 servo: Merge #15534 - style: add missing semicolons for bindgen on BSDs and Solaris (from jbeich:freebsd); r=emilio
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [x] These changes fix a typo in #15529
- [x] These changes do not require tests because Tier3 support is incomplete

Source-Repo: https://github.com/servo/servo
Source-Revision: 1b399cd27ff902d70c4ea0893c7dd31a5a32f0e5

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e71aa1fafa4079b211264b31d67b02688988a565
2017-02-13 10:08:24 -08:00
Jan Beich
8a4246ea11 servo: Merge #15529 - style: unbreak bindgen on BSDs and Solaris (from jbeich:freebsd); r=emilio
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [x] These changes fix Firefox [bug 1339033](https://bugzilla.mozilla.org/show_bug.cgi?id=1339033)
<!-- Either: -->
- [x] These changes do not require tests because Tier3 platforms support is incomplete

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 5d8870fda9702ed552f7b11f5f772647aa7a6ce1

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 104548fa39db149650233f0e549d797392ed6664
2017-02-13 06:09:03 -08:00
Cameron McCormack
c26c254d4b servo: Merge #15523 - stylo: align RESTYLE_STYLE_ATTRIBUTE value with eRestyle_StyleAttribute (from heycam:rshint-style); r=bholley
This is the Servo-side part of https://bugzilla.mozilla.org/show_bug.cgi?id=1338461, which @bholley reviewed.

Source-Repo: https://github.com/servo/servo
Source-Revision: b8fcf127df8009791ef37fcf02d72c8ddd7c5998

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 6d353c0901666199b6b0904edc2236cf02317710
2017-02-13 00:44:48 -08:00
Boris Chiou
f7326ae20f servo: Merge #15524 - stylo: Drop Servo_RestyleWithAddedDeclaration (from BorisChiou:animation/drop_RestyleWithAddedDeclaration); r=Manishearth
This is the servo-side change for [bug 1338087](https://bugzilla.mozilla.org/show_bug.cgi?id=1338087). r=@Manishearth

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] `./mach test-stylo` does not report any errors
- [X] These changes fix [bug 1338087](https://bugzilla.mozilla.org/show_bug.cgi?id=1338087).
- [X] These changes do not require tests because there are existing tests for this in mozilla-central

Source-Repo: https://github.com/servo/servo
Source-Revision: 61393b08a9a754b6833fc724bd023ce723eae5aa

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 74adc18e678684bcc66c3b81bde47b63ec2cb37c
2017-02-12 23:17:59 -08:00
Alon Levy
ea8e400651 servo: Merge #15514 - fix #15492 (Negative ShapeRadius values should be invalid) (from alon:master); r=emilio
<!-- Please describe your changes on the following line: -->
Address issue #15492 -  Negative value in <shape-radius> should be invalid

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15492 (github issue number if applicable).

- [X] There are tests for these changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 45db39cc0406a90273a5a74738fe94943a57b142

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7f14b740cedf26f247f187aaef2df1c5e458fe57
2017-02-12 03:15:36 -08:00
hiei23
f3f43a67b7 servo: Merge #15466 - -added parsing and serialization for grid-{row,column}-gap (from hiei23:master); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
I have added an implementation for grid-{row,column}-gap based on the predefined type property suggestion in the description

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #15310 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: aea6797a94f4ab61279525f1daf2670e8e2a4d17

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e5006804da40a17cceea65a293ccef97c78307f8
2017-02-10 11:28:28 -08:00
Bobby Holley
a890a85070 servo: Merge #15480 - Refactor style computation (from bholley:refactor_style_computation); r=emilio
See https://bugzilla.mozilla.org/show_bug.cgi?id=1338382

Source-Repo: https://github.com/servo/servo
Source-Revision: 0dd4afcf6dd3efb8e9f6e620e8e0dc7b135f8eee

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 092cfaab13e17d3d19e7107de593efc7692ad198
2017-02-10 10:34:57 -08:00
Boris Chiou
0d9917ce74 servo: Merge #15493 - stylo: Add Servo_AnimationValue_Serialize (from BorisChiou:animation/get_property); r=Manishearth
This is the servo-side change for [bug 1337313](https://bugzilla.mozilla.org/show_bug.cgi?id=1337313). @Manishearth had already reviewed it there. Please merge this patch until the gecko-side changes for [bug 1337313](https://bugzilla.mozilla.org/show_bug.cgi?id=1337313) is landed.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [bug 1337313](https://bugzilla.mozilla.org/show_bug.cgi?id=1337313).
- [X] These changes do not require tests because there are existing tests for this in mozilla-central

Source-Repo: https://github.com/servo/servo
Source-Revision: 401a55e172e7ebdbc1045400ec4720a6c3f1cb03

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 523d8f18cfbc60467fd6dbb917111893d4af6964
2017-02-10 01:34:07 -08:00
Cameron McCormack
eff56205a4 servo: Merge #15481 - stylo: Note need to flush styles when we set dirty descendant bits (from heycam:flush-styles); r=bholley
<!-- Please describe your changes on the following line: -->

This is the Servo-side part of https://bugzilla.mozilla.org/show_bug.cgi?id=1331294, already reviewed by @bholley.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 2771b24ab36fb7953780660c275ec295de479599

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 35eda8a03fbfb0e83da1b0d500eeaf67f48a004e
2017-02-09 19:27:33 -08:00
Manish Goregaokar
31d0bc713f servo: Merge #15463 - stylo: Implement a bunch of properties (from Manishearth:buncha-props); r=mbrubeck
r? @mbrubeck or @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: e985ad54229083e5e76b2862cec57ce4fef4433c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : cf5e934c2a41f9950840da9edf74c684dee44d47
2017-02-09 15:51:29 -08:00
Julien Levesy
e91f010bfa servo: Merge #15454 - use ::parse_non_negative instead of ::parse for background_size property parsing (from jlevesy:bg-size-reject-negative-values); r=SimonSapin
Use  `::parse_non_negative` instead of `::parse` for background_size property parsing

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [X] These changes fix #15450

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: ce7827eadfcceb37e779846926c2b2f72c08dd72

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0e5381479ea5ea3481e80ebf1f0e2623e465eba7
2017-02-09 14:55:14 -08:00
Emilio Cobos Álvarez
db2a064cb8 servo: Merge #15459 - style: Ensure that precomputed pseudo-element declarations are correctly sorted (from emilio:ua-rules); r=SimonSapin
Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1337657

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 6d1836e32bfd1337a3acdf91abb409a399c9f5e3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8cb45c25319dd34e9175931ceab60b33b5685499
2017-02-09 04:20:34 -08:00
Nazım Can Altınova
1020720464 servo: Merge #15411 - Box larger specified values to avoid memmove impact (from canaltinova:property-declaration); r=SimonSapin
<!-- Please describe your changes on the following line: -->
Box larger specified values to avoid memmove impact.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15322 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 5c609213d68a17f65ae4e64c34d8dc6b66d35784

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b4776afd52e97b8493ef9093c229845c9b8821e5
2017-02-09 02:21:36 -08:00
Alberto Leal
ac749c5123 servo: Merge #15357 - Refactor outline-style to accept "auto" value in addition to border-style values (from dashed:gh-15207); r=Wafflespeanut,emilio
Fixes https://github.com/servo/servo/issues/15207

Refactored as per https://github.com/servo/servo/issues/15207#issuecomment-275171590 .

<!-- Please describe your changes on the following line: -->

- [x] Correct refactor? I'd appreciate any feedback on this.
- [x] ~~~proper borderstyle value for `outline-style: auto;`?~~~ ~~~(EDIT: deferred to a `FIXME`)~~~ (EDIT2: it is now solid for behaviour parity with firefox)
- [x] squash pending PR review
- [x] mako code review

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #15207 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 368af6f8619804244a7d8ba4614f0b4950cfd9f1

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e2c20e25b0f8fea6d8da236085f918c1efd8b8ad
2017-02-08 21:10:57 -08:00
Bobby Holley
a9e7b86e87 servo: Merge #15462 - Accumulate parent elements that need selector bits set on the ThreadLocalStyleContext (from bholley:accumulate_selector_flags); r=emilio
Discussion and review in https://bugzilla.mozilla.org/show_bug.cgi?id=1336646

Source-Repo: https://github.com/servo/servo
Source-Revision: cbfd4464270f8690b90b9b96c395523a3a39e2de

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c3bfb03915e31cb95db1b247edb24872eb1cfcf5
2017-02-08 19:33:27 -08:00
Boris Chiou
fbcc925a32 servo: Merge #15442 - Retrieve the opacity and the transform list from RawServoAnimationValue (from BorisChiou:animation/opacity_transform); r=Manishearth
These are the servo-side changes for [bug 1335942](https://bugzilla.mozilla.org/show_bug.cgi?id=1335942). @Manishearth had already reviewed them there. Please merge these patches until the gecko-side changes for [bug 1335942](https://bugzilla.mozilla.org/show_bug.cgi?id=1335942) is landed.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [bug 1335942](https://bugzilla.mozilla.org/show_bug.cgi?id=1335942).
- [X] These changes do not require tests because there are existing tests for this in mozilla-central

Source-Repo: https://github.com/servo/servo
Source-Revision: 11c86b82f6598e63ebbc610e86352e75a948d878

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 86e7044e1aaa1b5bd86341ea61fc52551f565a99
2017-02-08 18:39:45 -08:00
Bobby Holley
fd99deb665 servo: Merge #15447 - Move rust-selectors into servo/servo (from bholley:in_tree_selectors); r=SimonSapin
See the thread at [1].

[1] https://groups.google.com/d/msg/mozilla.dev.servo/iHykieVC5SM/Z31_n0agBAAJ

Source-Repo: https://github.com/servo/servo
Source-Revision: 8aec1ccdd22145df0ca7bb9456b40b3175fc5992

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b45d7b526718eb826d64906aa7514f1806a074ae
2017-02-08 16:06:06 -08:00
Atheed Thameem
1e16d07cc0 servo: Merge #15360 - Ensured all font-weight keywords are preserved until computed-value time (from atheed:font-weight-keyword); r=emilio
Fixed the serialization of `font-weight` keywords (i.e. `bold`, `normal`, etc.) to ensure that Servo preserves the keyword until computed-value time (just as other major browsers do).

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15337

<!-- Either: -->
- [X] There are tests for these changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 287b02e21fa2c81d58b070be36add5e951512679

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 949ec8039bdaa5b396bbf3df53112fc0ee565992
2017-02-08 11:04:29 -08:00
Xidorn Quan
853ca9e431 servo: Merge #15418 - Not blockify flow-root (from upsuper:blockify-flow-root); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 8ca1383c419dec9f5bcd23bb0caf87cb4774a7e6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 182433e303af81f5fe8869353a1df52bc3a76465
2017-02-07 22:48:48 -08:00
Anthony Ramine
adff1c356b servo: Merge #15440 - Update selectors to 0.17 (from KiChjang:selectors); r=KiChjang
Closes #15434.

Source-Repo: https://github.com/servo/servo
Source-Revision: f7e75fd0012b9a063718f56e5aab093dde40d42f

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : cff895ff34f92aaae2935c59f76fbb05ad3ee41e
2017-02-07 20:36:59 -08:00
z1mvader
fbb353bd1e servo: Merge #15429 - removed invalid FIXME (from z1mvader:master); r=jdm
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because I just removed two lines

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: ec393b89b5b6aad28f5987569c0181b0bfdd965a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : cc9b82284f2c92acbe184525306bad2b6ec79881
2017-02-07 15:42:40 -08:00
Ms2ger
4264cc8a33 servo: Merge #15424 - Fix some build warnings (from servo:warnings); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: c48a326fb37976ec9e808825c9641602bccefa56

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 77f616e0b846a226174adaba0f6d545bee8288e8
2017-02-07 07:16:22 -08:00
Sam
184b050b27 servo: Merge #15237 - Allow negative values for letter-spacing and word-spacing. Inline Le… (from samuknet:negative-letter-spacing-word-spacing); r=emilio
<!-- Please describe your changes on the following line: -->
Allow negative values when parsing `letter-spacing` and `word-spacing`.  Inline `parse_non_negative` in `Length`.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #15204 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 449147b8df3b81621c54af615eb1adb8589eb83b

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5555d123f38aef43237a4cd87256e87d757340b2
2017-02-06 19:29:31 -08:00
Xidorn Quan
9ff3d45945 servo: Merge #15414 - Use -stdlib=libc++ on mac for stylo bindgen (from upsuper:macos-libcxx); r=emilio
r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: a1d19ca5f831536ee60bb4fa85a9d3ea53c2170e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0345f85ba78976b312924e9053c1c15d70bdff4f
2017-02-06 17:18:22 -08:00
Xidorn Quan
93d7f54702 servo: Merge #15298 - Fix two issues of parsing and serialization of mask shorthand (from upsuper:mask-shorthand); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 5f0c294caf85e67ff5b04f28b4a4d54930d7d952

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8205fd60c804f502556f304a54f9847d6fa21ad3
2017-02-05 15:30:09 -08:00
mrmiywj
5e7d1db6ab servo: Merge #15383 - add support for mask_position_parse/serial (from mrmiywj:mask_position_parse/serial); r=canaltinova
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14955  (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 97cc71b661111d3c0b16b8daeb9aee675c09e237

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 291cee37a388a5ed7029fea0cc9b62e44ba30287
2017-02-04 12:17:44 -08:00
Manish Goregaokar
95c6e42cce servo: Merge #15331 - Basic handling framework for presentation attributes in Stylo, with handling for font-size and color (from Manishearth:stylo-presattr); r=emilio,bz
https://bugzilla.mozilla.org/show_bug.cgi?id=1330041

r=emilio,bz

Source-Repo: https://github.com/servo/servo
Source-Revision: 57fb07e9c041750a82852ca8dde7364fc7083e5b

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7ccc19a193dba6df732875bda034870f7663f68a
2017-02-03 17:36:04 -08:00
Hiroyuki Ikezoe
54d2cf58ea servo: Merge #15363 - Make transform property animatable for stylo (from hiikezoe:transform-animatable); r=heycam,Manishearth
<!-- Please describe your changes on the following line: -->
This is the servo side fix for https://bugzilla.mozilla.org/show_bug.cgi?id=1332657

Reviewed by @heycam and @Manishearth.
Thanks!

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because this is for stylo.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: cd2dbd720bdffc87ec49fc4ad4e4aa0f5b2cb1f3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 44f9438df63dc5272539920fdfa30e847c26e839
2017-02-03 16:01:39 -08:00
Emilio Cobos Álvarez
1be77da9f6 servo: Merge #15372 - BindgenUp (from emilio:bindgenup); r=upsuper
r? @heycam or @upsuper or @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: 50dca76ae394a155a7255206628238ae532717db

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 58d8623f163a907f43572c8f9096b256694663e5
2017-02-03 14:45:13 -08:00
Xidorn Quan
168749a3e5 servo: Merge #15338 - Parse value entirely for setting property via CSSOM (from upsuper:parse_one_decl); r=emilio
Fixes #15037

Source-Repo: https://github.com/servo/servo
Source-Revision: 812a3a1c4663738511f55fa84c7328231df2d399

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 886c15a95527f48f36c4e33bff350eece7a1eba6
2017-02-03 11:48:28 -08:00
Simon Sapin
7f9604757a servo: Merge #15356 - Add support for more @font-face descriptors (from servo:font-face-descriptors); r=Manishearth
<!-- Please describe your changes on the following line: -->

Part of https://bugzilla.mozilla.org/show_bug.cgi?id=1290237. I’ll add conversions to `nsCSSValue` separately because that requires new C++ functions in the stylo repository.

r? @bholley

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 48f3cc83257554dc09c4489fbfaf2f702a1083f3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e4dfe03f4703302e56c7c1c52ddd5bd9680d48fd
2017-02-03 05:09:30 -08:00
L. David Baron
b6632cb157 servo: Merge #15305 - Make additional properties be reset by the 'font' shorthand (from dbaron:reset-more-for-font); r=Manishearth
A number of properties are supposed to be reset to initial values by the
'font' shorthand.  This does so for all such properties that Servo
currently supports (conditional on when they're supported).

Fixes #15033.

It's not clear to me that the use of <code>None</code> is correct for resetting to initial values, but it seems to match what at least some other shorthands do (I think I was looking at the code for border), and it appears to fix the tests as expected.  I haven't probed into it more than that.

/cc @Manishearth

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors (I haven't quite gotten the servo build to work, but stylo build works)
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15033 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes
- [ ] These changes do not require tests because _____

This has test coverage when running stylo.  In particular, it fixes a bunch of sets of mochitest failures in layout/style/test/test_value_storage.html, with the set for each value of the 'font' shorthand listed in property_database.js looking like:
```
 TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font'
 TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-style')
 TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-variant')
 TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-weight')
 TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-size')
 TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'line-height')
 TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-family')
 TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-stretch')
-TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-size-adjust') - didn't expect "", but got it
+TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-size-adjust')
 TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-feature-settings') - didn't expect "", but got it
 TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-language-override') - didn't expect "", but got it
-TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-kerning') - didn't expect "", but got it
+TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-kerning')
 TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-synthesis') - didn't expect "", but got it
 TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-variant-alternates') - didn't expect "", but got it
-TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-variant-caps') - didn't expect "", but got it
+TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-variant-caps')
 TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-variant-east-asian') - didn't expect "", but got it
 TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-variant-ligatures') - didn't expect "", but got it
 TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-variant-numeric') - didn't expect "", but got it
-TEST-UNEXPECTED-FAIL | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-variant-position') - didn't expect "", but got it
+TEST-PASS | layout/style/test/test_value_storage.html | setting 'medium serif' on 'font' (for 'font-variant-position')
```

I'm not sure if separate Servo test coverage is needed.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: e912400bc3d963ecd16bde60e18f00e89be61c9a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0c721959a2388e737b32c5d3e651f9333dac4399
2017-02-02 16:43:26 -08:00
Bobby Holley
4ef5d9b6b0 servo: Merge #15353 - stylo: Optimize some FFI calls (from bholley:inline_more_ffi); r=emilio
https://bugzilla.mozilla.org/show_bug.cgi?id=1335863

Source-Repo: https://github.com/servo/servo
Source-Revision: 99899d0eb596855b1b02324f0aff440a616f51c5

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : bba78ea1dff0e0918b320fd8ff42d1809f48a2ce
2017-02-02 14:32:54 -08:00
Matt Brubeck
27dc0033a6 servo: Merge #15355 - Update clap, clippy, deflate, flate2, open, unicode-segmentation, owning_ref, parking_lot, phf, quote, walkdir (from mbrubeck:always-be-updating); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 6553a5c1e088c0a13581834af5e8ab150af87fee
2017-02-02 11:44:01 -08:00
Emilio Cobos Álvarez
2043633565 servo: Merge #15317 - style: Avoid selector-matching when only the style attribute is changed (from emilio:style-attr-restyle); r=bholley
r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: fb7f65fc5711f41b991b72ed97d7286dd16301ed
2017-02-02 03:00:22 -08:00
Xidorn Quan
fa2d49cb0e servo: Merge #15340 - Reject negative value for border-image-width (from upsuper:border-image-width); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 8aa23b46db300210b67c16190c794bc9ee216f3f
2017-02-02 01:10:21 -08:00
Xidorn Quan
9c33ad6815 servo: Merge #15336 - Ignore initial values in text-decoration (from upsuper:text-decoration); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: f3d22ee1a8770e38a44404db6106aa3ce1bc1c4a
2017-02-01 23:44:51 -08:00
Manish Goregaokar
4ccab8f786 servo: Merge #15323 - Ensure that gradients have at least 2 stops (from Manishearth:gradient-stop); r=heycam
fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1335656

r? @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: b7887a1980332d7a111419257404bf08921e92f7
2017-02-01 11:17:13 -08:00
Manish Goregaokar
a4f8d399c0 servo: Merge #15321 - Preallocate in deduplicate_property_declarations (from Manishearth:preallocate); r=bholley
r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: da89099e26955cf5ba44031a0a536e3af4e6a0d5
2017-01-31 17:58:18 -08:00
Hiroyuki Ikezoe
075e5578ae servo: Merge #15299 - Create KeyframeAnimation for empty keyframe rules (from hiikezoe:empty-keyframe); r=emilio,pcwalton
<!-- Please describe your changes on the following line: -->
We should create KeyframeAnimation even if css keyframe rule is empty because we should fire css animation events for such CSS animations.
Also we should ignore properties that are annotated with '!important'.  From the spec[1].
 using !important on them is invalid and will cause the property to be ignored

[1] https://drafts.csswg.org/css-animations-1/#keyframes
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15257

<!-- Either: -->
- [X] There are tests for these changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 77f53aae3eee59957521ea76e95bd3e454c4ddd9
2017-01-31 14:42:06 -08:00
Emilio Cobos Álvarez
97b30b2655 servo: Merge #15288 - Refactor more stuff in preparation for special handling for restyling using the style attribute (from emilio:style-attr-restyle); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 166b30484061ae7c58f721ac9082d13c83834fae
2017-01-30 14:54:26 -08:00
Rohit Burra
8d6f41f073 servo: Merge #14556 - Make Stylist::set_device check stylesheet media queries (from iamrohit7:fix-set-device); r=SimonSapin,Emilio
Fixes Stylist::set_device to check for media queries in stylesheets.

<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14279  (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 1c1aaa5a883bd17618ac90ac67a6f0030a276ff5
2017-01-29 04:06:03 -08:00
Atheed Thameem
a7aecc8674 servo: Merge #15278 - Parsing "0" as Number for line-height and border-image-outset (from atheed:zero-parsing); r=Wafflespeanut
Fixes #15171 by correctly parsing `0` as `0` (rather than as `0px`, as was the case earlier) for the `line-height` and `border-image-outset` CSS properties. Wrote unit tests for both; `./mach test-unit -p style` passes all tests.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15171

<!-- Either: -->
- [X] There are tests for these changes.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: dfcfc1d2c158edb05ac7d2da3796008947b580df
2017-01-28 22:18:44 -08:00
Hiroyuki Ikezoe
3089a8c25d servo: Merge #15287 - Counter part of bug 1328787 - Stylo: Convert Servo's animation keyframes and store them into Gecko's keyframes (from hiikezoe:css-animation); r=heycam
<!-- Please describe your changes on the following line: -->
Reviewed by @heycam, An exception is auto-generated bindgen stuff, I did not include it in patches on bugzilla.  The bindgen diff included in this PR was generated with  b5c94bad371114ab9f03e910f66c00a042997fc2.  It might be bit-rotted.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because gecko has test cases.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 0459e1a6dd38f943a23e8b858c0bebf37cfadd95
2017-01-28 21:24:04 -08:00
Matt Brubeck
fc6dd7a765 servo: Merge #15268 - Make text-orientation:sideways-right an alias for sideways in Gecko (from mbrubeck:sideways); r=upsuper
Fixes #15214. r? @upsuper

Source-Repo: https://github.com/servo/servo
Source-Revision: ec12b7665b5cf35b13932a7c17901ffb8e73b5ee
2017-01-28 17:24:47 -08:00
Emilio Cobos Álvarez
74eb7e93bd servo: Merge #15280 - Bug 1334579: Ensure constructors for nsStyleContentData run (from emilio:negative-leaks); r=bholley
Reviewed upstream by @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: b9e675cdadb946c53a40fc996a1a563f1ce89d04
2017-01-28 16:30:08 -08:00
Ravi Shankar
4df106b306 servo: Merge #15115 - Introduce the NoCalcLength (from Wafflespeanut:lop); r=emilio
<!-- Please describe your changes on the following line: -->

I began this for making the `CalcLengthOrPercentage` represent `LengthOrPercentage` (instead of the enum we already have), but only later did I realize that it will make `LengthOrPercentageOrFoo` types fatty (which is the problem we're trying to avoid - #15061) and so, I dropped that attempt. Along the way, I introduced an internal type for `Length`, for representing all its non-calc variants (which are `Copy`). We could still have this type for the `LengthOrPercentageOrFoo` types which don't really need  `Length` since they already have their own variants for calc.

r? @Manishearth @emilio @SimonSapin or anyone interested

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [x] These changes do not require tests because it's a refactor

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: cd0a6b98f4a9073e9ac98409c2fa917643552181
2017-01-28 14:08:38 -08:00
Emilio Cobos Álvarez
11031103fd servo: Merge #15157 - Bug 1332969: stylo: Synchronously do a style update when the device changes (from emilio:bug-1332969); r=bholley
Ideally this would be lazy, but eventually we're going to need to restyle in
RebuildAllStyleData anyway, which would require us to have the style up to date,
so no need to complicate our lives.

r? @heycam or @upsuper or @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: 73bb75989fe7f3d976a9ffd023def835d16e0441
2017-01-28 12:56:50 -08:00
Emilio Cobos Álvarez
25976a6adf servo: Merge #15256 - script: Refactor CSSStyleDeclaration and fix some bugs in the way (from emilio:cssstyledeclaration); r=SimonSapin
<!-- Please describe your changes on the following line: -->

This is preliminar work for the style attribute restyle hint.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7a40f472337f0a9a44e2146f4005ec99da38f96b
2017-01-28 06:18:38 -08:00
Marco Concetto Rudilosso
727f83b96a servo: Merge #15269 - Substituing quickersort with pdqsort (from Maaarcocr:master); r=emilio
<!-- Please describe your changes on the following line: -->

I have been working on issue number #15244. I have substituted quickersort with pdqsort in the style component. The changes I made affect: Cargo.toml, stylist.rs and lib.rs (all of them are in /components/style).

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15244 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because both library expose the same functionality, they differ in permance.

Source-Repo: https://github.com/servo/servo
Source-Revision: d4ee8a3599a57078735766640b31df31c67d8201
2017-01-27 15:11:42 -08:00
Cameron McCormack
88a8529ff2 servo: Merge #15234 - Regenerate bindings and tweak some geckolib code for it (from heycam:bindings-update-19); r=emilio
<!-- Please describe your changes on the following line: -->

Regenerate bindings for latest mozilla-central -> stylo merge.  I had to tweak somethings in build_gecko.rs to get it to compile with the new bindgen, which then resulted in me having to tweak a bit in glue.rs.  Not sure if there's a better way than what I've done here.  (Note that the name `RawServoAnimationValueBorrowedList` is a little misleading, since it's naming a Gecko type (nsTArray) with Servo types (ServoAnimationValue pointers) inside it.)

r? @emilio

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 17953740071b97074b836523b3a3e8f733f58423
2017-01-27 00:36:30 -08:00
Bobby Holley
cc42f7e760 servo: Merge #15231 - Remove out-of-date handling for align-self in Gecko builds (from bholley:align_self); r=upsuper
See #15229.

Source-Repo: https://github.com/servo/servo
Source-Revision: d3daad327fb6742c4349675692cad8adef66b4cd
2017-01-26 23:06:25 -08:00
Alberto Leal
1d19c49ce8 servo: Merge #15226 - Fix text-overflow serialization (from dashed:gh-15208); r=emilio
Fixes https://github.com/servo/servo/issues/15208

- [x] **More tests pending PR review.**
- [x] **Correct placement of unit test**

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #15208 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: d77465b1669b20bf082ff2fd3f0edfbab5732756
2017-01-26 21:41:23 -08:00
Dexter Haslem
7e908a6421 servo: Merge #15225 - fix transform: none serialization (from DexterHaslem:fix-transform-none); r=emilio
<!-- Please describe your changes on the following line: -->

As mentioned I struggled a bit figuring out the unit tests, please let me know if I missed anything or if there is a better way as usual! I will likely give the related implementing the rest of serialization for transform a shot next

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15195 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 1395b728849add4451e176b66ad9bda68c7afcfe
2017-01-26 20:08:08 -08:00
Nazım Can Altınova
94969698a1 servo: Merge #15178 - Fix serialization of CalcLengthOrPercentage (from canaltinova:calc); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15168 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 5427e68572c034e6a12ca9766563bda88ee0c610
2017-01-26 12:46:08 -08:00
Xidorn Quan
655fbcf0bd servo: Merge #15212 - Use whitespace to separate params of drop-shadow (from upsuper:filter-drop-shadow); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 0fa5f2e21f938c8e643d8840bd37716da5f8a115
2017-01-26 11:48:06 -08:00
Xidorn Quan
7414bdb9e2 servo: Merge #15172 - Add space before keyword for border-image-slice (from upsuper:border-image-slice); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 9c5abebd470cc0fe4af27929c2bd8a737d351e3f
2017-01-26 10:48:22 -08:00
Xidorn Quan
22b8699325 servo: Merge #15170 - Correct serialization of column-rule shorthand (from upsuper:column-rule); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 36fc07d9c4ec1abde2c55134cd5fd9688ddb6ed7
2017-01-26 09:50:19 -08:00
Simon Sapin
30f841d4d4 servo: Merge #15183 - Fix parsing and serialization of font-family (from servo:font-family); r=nox
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #15059 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 58f4804ef5ae8d1aca1790a1567214b6443d23b2
2017-01-26 01:18:00 -08:00
Boris Chiou
164a50b03e servo: Merge #15175 - Interpolate servo animation values and add them to the cascade (from BorisChiou:animation/interpolate_and_cascade); r=heycam
These are the servo-side changes for [bug 1317209](https://bugzilla.mozilla.org/show_bug.cgi?id=1317209). @Manishearth, @emilio, and @heycam have already reviewed them there. Please merge these patches until the gecko-side changes for [bug 1317209](https://bugzilla.mozilla.org/show_bug.cgi?id=1317209) is landed.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [bug 1317209](https://bugzilla.mozilla.org/show_bug.cgi?id=1317209).
- [X] These changes do not require tests because there are existing tests for this in mozilla-central

Source-Repo: https://github.com/servo/servo
Source-Revision: e4a1cb6f87ac1ba2035c833dca5d9619edeefb8d
2017-01-25 23:36:33 -08:00
Emilio Cobos Álvarez
3c38447c21 servo: Merge #15216 - Bindgenup (from emilio:bindgenup_); r=heycam
Bindgenup

r? @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: ef6656a72731693047683c4799fde35a651fd2c0
2017-01-25 22:41:24 -08:00
Xidorn Quan
cb25d5d08e servo: Merge #15210 - Serialize text-decoration-line to none if nothing specified (from upsuper:text-decoration-line); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 2a32cf135262318b58b0738f56cd5f8aa6da8823
2017-01-25 04:09:09 -08:00
Dexter Haslem
5b93c3d57e servo: Merge #15174 - make -webkit-text-stroke color and width shorthand no longer sensitive to ordering (from DexterHaslem:15165-webkit-text-stroke-sh-ord); r=SimonSapin
<!-- Please describe your changes on the following line: -->
this makes `-webkit-text-stroke` shorthand work with line-width and color in either order.

I added a shorthand parser test to the existing inherited_text test, which wasn't very similar to any of the other tests in there, hope sticking shorthand below the longhand stuff is ok.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15165 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 2da1977108daea20cf68068f2960033f3934dfc1
2017-01-24 22:52:08 -08:00
Xidorn Quan
a5698368cd servo: Merge #15173 - Fix serialization of border-image-repeat (from upsuper:border-image-repeat); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 742ed2e03c4c083d911525b6a2bfe0de31b3668d
2017-01-24 21:56:42 -08:00
Cameron McCormack
8e79b76662 servo: Merge #15167 - Update cssparser to 0.7.3 to get perf improvements (from heycam:cssparser-up-2); r=bholley
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 6fc0d2f92703e74f2e527af31e3f52e83de96018
2017-01-24 21:00:56 -08:00
Emilio Cobos Álvarez
e606f041e6 servo: Merge #15160 - style: Expose the traversal kind to the style system (from emilio:expose-traversal-kind); r=bholley
This way we'll be able to take different paths for the sequential and parallel
traversals in some concrete cases.

This is a preliminar patch to fix bug 1332525.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: 1934a338757a84a6efddcbd3ecf051cd128a8d18
2017-01-24 17:02:41 -08:00
Xidorn Quan
b9f9372a28 servo: Merge #15153 - Put stylo's pseudo-class into a list file (from upsuper:pseudo-class-list); r=emilio
r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: dc8fc4423833103de5cdf0e2e50003ee1fa07b8b
2017-01-24 16:06:31 -08:00
Ms2ger
fe440ee348 servo: Merge #15154 - Update rustc to 1.16.0-nightly (7821a9b99 2017-01-23) (from servo:rustup); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 2ff42462154025b1aed97a825e3a171eaa156d9b
2017-01-24 06:11:40 -08:00
Boris Chiou
1bd7c8c532 servo: Merge #15150 - Update selectors to 0.15.1 (from BorisChiou:update_selectors); r=heycam
selectors 0.15.1 supports AFFECTED_BY_ANIMATIONS and
AFFECTED_BY_TRANSITIONS, which are used by stylo animations.

Reference:
https://bugzilla.mozilla.org/show_bug.cgi?id=1317209

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix Bug 1317209
- [X] These changes do not require tests because I only update the version, which only added two StyleRelations flags, and are not used yet

Source-Repo: https://github.com/servo/servo
Source-Revision: 0170138887005215b2b6e194d8765e33ff3a2657
2017-01-22 23:07:30 -08:00
Shing Lyu
4821e9de84 servo: Merge #14978 - Implemented display: inline-flex (from shinglyu:inline-flex); r=notriddle
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #14685 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: c75946c3ed52d262aae585055023becd5a2e9769
2017-01-22 19:57:49 -08:00
Manish Goregaokar
14e81907da servo: Merge #15140 - Regen bindings (from Manishearth:regen); r=emilio
r? @heycam @emilio

Don't land yet.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8544c8c489833d97483e46d8823307a369f772ca
2017-01-21 18:03:50 -08:00
kkkkkkkk
803829c0e5 servo: Merge #15134 - add font-stretch to font shorthand sub-property (from seankao31:font-stretch-shorthand); r=canaltinova
<!-- Please describe your changes on the following line: -->
Add `font-stretch` sub-property to font shorthand

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #15027 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: c3c4805c826355ad272c78d6d413e6df57b1acf9
2017-01-21 07:14:29 -08:00
Bobby Holley
ffb83d6686 servo: Merge #15119 - Add style performance statistics to Servo (from bholley:traversal_stats); r=emilio
Gecko bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1331856

Source-Repo: https://github.com/servo/servo
Source-Revision: f8418a328435b114f6d8bb41c378a5bf0dfa4428
2017-01-19 15:27:34 -08:00
Manish Goregaokar
65bdc5d4d0 servo: Merge #15089 - Reduce allocator churn when parsing property declaration blocks (from Manishearth:less-vec); r=SimonSapin
fixes #15060

cc @emilio

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 5e888b5504a9daad86663837ca9e996d63a48821
2017-01-18 17:41:05 -08:00
Emilio Cobos Álvarez
119f1f2d8d servo: Merge #15077 - Media query parsing and evaluation in stylo using nsMediaFeatures (from emilio:stylo-medialist); r=heycam,Manishearth,upsuper
<!-- Please describe your changes on the following line: -->

Reviewed in the bug.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1755ad7b75e056a534e12f375a6677f5c069f4c2
2017-01-18 05:39:57 -08:00
Xidorn Quan
c374fd6e7e servo: Merge #15090 - Fix initial value of -moz-user-{input,focus} (from upsuper:moz-user-input); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 90522d93793edbf5d8e755791b6a1f473a3182e1
2017-01-18 01:22:00 -08:00
Manish Goregaokar
971a8aa41e servo: Merge #15065 - Use Box<CalcLengthOrPercentage> in specified values to avoid bloating inline sizes (from Manishearth:box-calclop); r=heycam
For #15061

CalcLOP is a large struct, and gets used quite often. While #15063 reduces its size a bit,
it will still be much larger than any of the other variants in the `specified::Length*` types,
so it will still bloat sizes, especially for specified values that contain many lengths.

This change boxes it in the length types, so that it just takes one word.

r? @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: f010fb58fdb4526a76581ba6536f807f2b2a4955
2017-01-17 11:49:52 -08:00
Xidorn Quan
3cf38c31b7 servo: Merge #15071 - Fix typo in glue code for page-break-after (from upsuper:page-break-after); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 4b3fbc005966295b8fd6c368e4bba63fc03c45db
2017-01-17 09:05:33 -08:00
Cameron McCormack
710803def2 servo: Merge #15069 - Update geckolib build-time bindgen build script for recent regex changes (from heycam:bindgen-regex-update); r=emilio
`./mach build-geckolib --with-gecko ...` is broken due to regex's API changing a bit.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: b4980f9037805c04eed4387cd1f848c29f9ac557
2017-01-17 08:13:47 -08:00
Ravi Shankar
9ffe122fd3 servo: Merge #15063 - Cleaning up CalcLengthOrPercentage (from Wafflespeanut:calc); r=heycam
<!-- Please describe your changes on the following line: -->

We don't really need enum variants in `CalcLengthOrPercentage`. Given that we already have the information (whether it's `vw`, `ch`, etc.) in the struct fields, we could just store `Option<CSSFloat>` there, and modify our `ToCss` implementation a bit.

cc #15061

r? @Manishearth or anyone interested

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [x] These changes do not require tests because it's a refactor

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: a70af60eec11fa0a19cfd889c56b09dc834b35af
2017-01-17 02:18:15 -08:00
Xidorn Quan
19d4b8027d servo: Merge #15056 - Never blockify display: none (from upsuper:blockify-none); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 7c1112408e2d73d291bcb7c38cd935a07f83f045
2017-01-16 18:01:43 -08:00
Manish Goregaokar
5b9059bd76 servo: Merge #15040 - stylo: support 1-arg CSS.supports() (from Manishearth:stylo-supports); r=heycam
r=heycam in https://bugzilla.mozilla.org/show_bug.cgi?id=1331316

Source-Repo: https://github.com/servo/servo
Source-Revision: b9c6f9f76e4e9170837484394600b9c9c6065059
2017-01-16 13:56:51 -08:00
Emilio Cobos Álvarez
b973c771f4 servo: Merge #15031 - Bug 1331272: style: Unify restyle-damage display: none checks (from emilio:stylo-display-none-pseudo); r=bholley
They were formerly different because we used the element check to cull the
traversal.

Now this is no longer true, so we can just unify them.

Also, update a no-longer up-to-date comment on that.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: e01417e936b93694b3038095827cc3e3cf3e0e82
2017-01-16 12:07:02 -08:00
Cameron McCormack
fc848e7b5a servo: Merge #15039 - stylo: Regenerate bindings (from heycam:bindings-update-17); r=emilio
<!-- Please describe your changes on the following line: -->

Bindings update for the sync I'll pushed based on https://treeherder.mozilla.org/#/jobs?repo=try&revision=42b2ac6142ddec57f60f4c3c05ec7c7d5aba9533, assuming there's nothing wrong.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 57d6b8ec45e83ad76fd6976392c69b20edb162e5
2017-01-16 06:48:07 -08:00
Ms2ger
560ad3ebfb servo: Merge #15042 - Update regex (from servo:update-regex); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: bb540cab632593841611ad470c87d2093af75158
2017-01-16 05:59:18 -08:00
Xidorn Quan
76cc18679d servo: Merge #15038 - Store blink value for text-decoration-line (from upsuper:text-decor-blink); r=emilio
The spec does say user agents may not blink, but it doesn't say this
value can be ignored during parsing.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: ee082d83634503834f145a1c3d01dee4aa154714
2017-01-16 01:22:13 -08:00
Manish Goregaokar
b872a8d810 servo: Merge #14999 - stylo: Hook property parsing into Gecko prefs (from Manishearth:stylo-prefs); r=heycam
r=heycam, https://bugzilla.mozilla.org/show_bug.cgi?id=1297322

This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14999)
<!-- Reviewable:end -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4c401e47dc6ed36a40ccd0bcf85cb8697397f71f
2017-01-14 09:23:05 -08:00
Hiroyuki Ikezoe
b710db7a67 servo: Merge #15022 - Animation name fix (from hiikezoe:animation-name-fix); r=heycam
<!-- Please describe your changes on the following line: -->
This is a PR of the counter part of https://bugzilla.mozilla.org/show_bug.cgi?id=1330824 .

All of patches have been reviewed by @heycam and @mystor.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [X] These changes do not require tests because this change is for Stylo.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 655a9fd7ce27f1f985099a21d9f17209edac4ffb
2017-01-13 21:26:53 -08:00
Manish Goregaokar
06f9b106e9 servo: Merge #14968 - stylo: Store servo computed values for animation properties (from Manishearth:stylo-keyframes); r=heycam,birtles
Servo counterpart of https://bugzilla.mozilla.org/show_bug.cgi?id=1317208

r=heycam,birtles

Source-Repo: https://github.com/servo/servo
Source-Revision: a46e630b00de3072b0555c605bee35afd9a82da3
2017-01-13 13:25:39 -08:00
Xidorn Quan
72d9cc04b0 servo: Merge #15002 - Fix filling of two vector fields for geckolib (from upsuper:background-fields); r=Manishearth
<!-- Please describe your changes on the following line: -->
This fixes a crash of stylo when you do the following:
```javascript
p.setAttribute("style", "background-blend-mode: multiply");
alert(getComputedStyle(p).backgroundBlendMode);
p.setAttribute("style", "background-blend-mode: normal, normal");
alert(getComputedStyle(p).backgroundBlendMode);
```

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 93d7298a90c400456e3cea8428ad1c1f3254cc22
2017-01-12 21:49:04 -08:00
Bobby Holley
4b2f7a516c servo: Merge #14997 - stylo: Various crash fixes (from bholley:bug_1329845); r=heycam
Corresponding gecko bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1329854

Source-Repo: https://github.com/servo/servo
Source-Revision: cc8bee8f8990e9bb23171fe65a259978749a9d2f
2017-01-12 19:23:17 -08:00
Nazım Can Altınova
0ef272bad5 servo: Merge #14964 - Remove unnecessary try!'s (from canaltinova:ok-try); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
These try!'s are unnecessary here. We can remove them.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [X] These changes do not require tests because it's just refactoring

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 6447a9783892d6ed585cf75b056ef81f0aba504c
2017-01-11 15:47:04 -08:00
Xidorn Quan
975ce8225f servo: Merge #14956 - Extend supported geometry box value for geckolib (from upsuper:geometry-boxes); r=Manishearth
<!-- Please describe your changes on the following line: -->
r? @Manishearth

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: e440a016051703632cac1de6b88ff9e0c94e9017
2017-01-11 08:35:24 -08:00
Xidorn Quan
75b88db85d servo: Merge #14939 - Add aliases for geckolib for supported properties (from upsuper:add-aliases); r=emilio,Manishearth
<!-- Please describe your changes on the following line: -->
This fixes ~7.5k failures in style system mochitests.

r? @Manishearth

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because it is for geckolib only

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 04a3242dc54c670dcdafcf1f0ac5373f2ed612f3
2017-01-10 16:18:58 -08:00
Hiroyuki Ikezoe
acccadb9f2 servo: Merge #14879 - Stylo: Store animation properties into gecko's struct (from hiikezoe:animation-properties); r=heycam
<!-- Please describe your changes on the following line: -->
This is the counter part of https://bugzilla.mozilla.org/show_bug.cgi?id=1328786

All patches get reviewed by r=@heycam.
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [X] These changes do not require tests because it's for stylo.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 43a537a1ba8d62a39e062a21df9d5c771631411b
2017-01-10 02:57:23 -08:00
Xidorn Quan
3120858b70 servo: Merge #14920 - Correctly handle unserializable shorthand (from upsuper:shorthand-variable); r=emilio
get_shorthand_appendable_value doesn't always return a serializable value. This change makes it handle that case correctly.

This change also updates step number in property_value_to_css to reflect the latest spec.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix stylo [bug 1329533](https://bugzilla.mozilla.org/show_bug.cgi?id=1329533)

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 867df7f3d7a89b48de76106601cbc5e474acb9dd
2017-01-09 20:10:32 -08:00
Bobby Holley
e445eee20a servo: Merge #14907 - Give up on hoisting ElementData into the frame and eliminate the concept of consuming styles (from bholley:eliminate_consume); r=emilio
Servo PR for the work in https://bugzilla.mozilla.org/show_bug.cgi?id=1325734

Source-Repo: https://github.com/servo/servo
Source-Revision: 2a2a89b7e401e72a4d8d6199c483d7ab09ff5c1e
2017-01-09 17:26:50 -08:00
Simon Sapin
59c175b443 servo: Merge #14789 - Support @supports (from Manishearth:supports); r=SimonSapin
fixes #14786

cc @heycam @upsuper
r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 50bba770d6073bba6e6e219dbc3687087a864a42
2017-01-09 10:54:38 -08:00
Cameron McCormack
6fc96abe8f servo: Merge #14922 - Don't inherit all properties for eagerly computed pseudos if there are no matching rules (from heycam:pseudo-inherit); r=emilio
<!-- Please describe your changes on the following line: -->

When we resolve style for an eagerly computed pseudo-element, such as an anonymous box, if there are no matching rules we currently just clone the parent's style.  We should only do that if `inherit_all` is true, otherwise we should inherit only the inherited properties from the parent.

I was going to use `.unwrap_or_default()` on the result of looking up `precomputed_pseudo_element_decls`, but that didn't seem to work since that map lookup returns a reference and not a `Vec` itself.

r? @emilio

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix https://bugzilla.mozilla.org/show_bug.cgi?id=1329121

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: ebd4a8b3ee1aab910ef714420a814912fec31e30
2017-01-09 02:46:09 -08:00
Cameron McCormack
bd3880c9ef servo: Merge #14909 - stylo: update bindings (from heycam:bindings-update-16); r=Manishearth
Bindings update for https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=5a96506c9435a414d37308298f526d25ea402607.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 6a9e2fd7fb2b985909efeb71ed050c19bb2818d3
2017-01-08 19:13:36 -08:00
Nazım Can Altınova
81472c45ea servo: Merge #14913 - Refactor box longhands (from canaltinova:box-longhands); r=Manishearth
<!-- Please describe your changes on the following line: -->
Converted some longhands into `vector_longhand` to reduce some repeated codes.
Also some of longhands with same `SpecifiedValue` and `computed_value::T` changed. Re-exported SpecifiedValue instead of computed_value::T. Normally a computed_value can't have a parse function.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [X] These changes do not require tests because they're not changing the behavior of the longhands.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 0d5e021537a18d1e5668c099305cebf754e93007
2017-01-08 06:24:02 -08:00
Cameron McCormack
3f6f95c27d servo: Merge #14905 - stylo: support content property (from heycam:content); r=Manishearth
This is the Servo-side of https://bugzilla.mozilla.org/show_bug.cgi?id=1315155, which @Manishearth has already reviewed.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5d796a5453c9a005798ed72007c406b14742631c
2017-01-07 17:56:17 -08:00
Nazım Can Altınova
dae3a40a78 servo: Merge #14899 - Fix serialization of timing-function (from canaltinova:transition-timing); r=Manishearth
<!-- Please describe your changes on the following line: -->
`transition-timing-function` and `animation-timing-function` properties corrected to reflect [the spec](https://drafts.csswg.org/css-transitions/#serializing-a-timing-function). It was converting function keywords to `cubic-bezier` or `steps` functions directly. But we needed to store it to use in the serialization step.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14822 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 496447a363ca4fc5d6789241ccb0b94134917b9a
2017-01-07 16:50:27 -08:00
Emilio Cobos Álvarez
7749257de9 servo: Merge #14904 - Allow sharing non-common style affecting attribute selectors (from emilio:non-common-attrs); r=bholley
Something I just noticed while re-reading that code is that we prevent sharing among siblings with different non-common attributes, even though we already have the infra to match those selectors:

```rust
    if !match_same_not_common_style_affecting_attributes_rules(element,
                                                               candidate_element,
                                                               shared_context) {
        miss!(NonCommonAttrRules)
    }
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 2225ccd46416443b1e196a14f5ff1b5dff5001d0
2017-01-07 15:28:15 -08:00
Manish Goregaokar
3c11f552db servo: Merge #14893 - Support property aliases (from Manishearth:alias); r=emilio
Aliases now get forwarded to their "original" property name at parse time. CSSOM continues to provide access through alias getters.

We'll need to probably add `${"-webkit-foo -moz-foo" if gecko else ""}` all over the place. Might want to come up with a convenient attibute name for that (`gecko_prefix="mw"`) or something.

r? @heycam or @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: d14158a592faa40fa027540578cd2c680cd8caf4
2017-01-07 13:56:19 -08:00
Jure Podgoršek
80f56a2927 servo: Merge #14896 - Tidy assignments (from g1smo:tidy-assignments); r=jdm
<!-- Please describe your changes on the following line: -->
I've added a new tidy rule (no = in the beginning of line) + tests for it. Also cleaned up a few rust source files to accord with the new rule.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14890 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: b6c137b36f8b9f9cc5c0105bb94a4edeaf7d09be
2017-01-07 09:40:46 -08:00
Simon Sapin
f5e9398e12 servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: df895cb80c460594f220b6cf28aa5869464d05ec
2017-01-07 08:18:28 -08:00
Emilio Cobos Álvarez
85d19a99d2 servo: Merge #14833 - style: Isolate the soon-to-be style-backend-specific code from the media_query module (from emilio:mq-refactor); r=heycam,bz
The idea here is having (for convenience) different `Expression` and `Device` representations for Gecko.

Both will be implemented in rust, but will use `nsMediaFeatures` as a source of media features instead of the Servo bits.

Does it sound good?

r? @heycam or @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: fdddeb1c9229b6f9bc202cb2df1a3701eec47e05
2017-01-07 05:03:41 -08:00
Xidorn Quan
f6c20ab641 servo: Merge #14878 - stylo: Add :-moz-browser-frame pseudo-class (from upsuper:bug1329076); r=heycam
This is the servo part of [bug 1329076](https://bugzilla.mozilla.org/show_bug.cgi?id=1329076) which has been reviewed by @heycam.

Note that it adds some documents on top of the patches on MozReview.

r? @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: 540efc3e8819f127b18b5ea8d85da6d8282a52be
2017-01-06 02:35:42 -08:00
Xidorn Quan
df3cfd5bdf servo: Merge #14872 - stylo: Map more Gecko state bits to Servo state bits (from upsuper:bug1328806); r=bholley
This is the servo part of [bug 1328806](https://bugzilla.mozilla.org/show_bug.cgi?id=1328806) which has been reviewed by @bholley on Bugzilla.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: 83428ecef703e4bea9814b7969252d3d3c441885
2017-01-06 00:09:32 -08:00
Alan Jeffrey
94a31a8931 servo: Merge #14351 - An in-memory RNG that shares its file descriptor (from asajeffrey:servo-rand-share-fds); r=emilio
<!-- Please describe your changes on the following line: -->

This PR implements an in-memory random number generator that only uses an OS RNG for (re)seeding. The OS RNG is shared, so there's only one file descriptor for `/dev/urandom` being used.

The PR also implements a tidy check that we don't accidentally introduce an RNG. Rather annoyingly, there are a lot of transitive dependencies on `rand`, notably hash maps in `std`.

This PR makes it possible to use uuids for identifiers such as pipeline and frame ids.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes do not require tests because it's fixing a resource issue

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 36ddf763f66b1b971db07649ff5c69b2e9fd5f91
2017-01-05 06:32:23 -08:00
Xidorn Quan
a5effe547c servo: Merge #14857 - Add support for -moz-top-layer (from upsuper:moz-top-layer); r=emilio
<!-- Please describe your changes on the following line: -->
r? @Manishearth

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 65497b493ae011d4787f5ca9a7e178d3e17fde8a
2017-01-05 04:45:40 -08:00
Hiroyuki Ikezoe
41946d7274 servo: Merge #14851 - animation-iteration-count property is a number instead of integer (from hiikezoe:float-iteration-count-rebased); r=emilio
<!-- Please describe your changes on the following line: -->
This is a revised PR  for #14732.
@emilio?
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [X] There are tests for these changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 1d9bbfa07b5aef22a318808e3796872ee12e665c
2017-01-05 03:44:20 -08:00
Boris Zbarsky
d934174175 servo: Merge #14848 - Stop using global initial styles for stylo; the initial styles need to be per-document (from bzbarsky:initial-styles); r=bholley
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix https://bugzilla.mozilla.org/show_bug.cgi?id=1298588

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests on the servo side because behavior is unchanged.  Gecko-side tests probably exist.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 143dfc879e609603839502d61bc064fba96cc80f
2017-01-04 21:01:38 -08:00
Emilio Cobos Álvarez
a6aefada7d servo: Merge #14844 - style: Simplify Debug impl for PropertyDeclaration reusing to_css (from emilio:to-css-simplification); r=SimonSapin
These two functions appear in the data from bug 1328497, and the second part of one is identical to the other.

I think the way to fix this is another one (either using static arrays to get
the interesting data, or making rust generate the equivalent code).

Source-Repo: https://github.com/servo/servo
Source-Revision: 96fd0837d3de70b1f0d8f2bff0253b0220e7e5ce
2017-01-04 09:37:48 -08:00
Bobby Holley
b830eea173 servo: Merge #14835 - Switch to crates.io for atomic_refcell (from bholley:external_atomic_refcell); r=Manishearth
r? @Manishearth

See #14828 for backstory.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1e927ca88bf6622d5a87db75863f76976a1df56c
2017-01-03 19:20:59 -08:00
Manish Goregaokar
decaa4de10 servo: Merge #14827 - Add spec links to all CSS properties (from Manishearth:spec-doc); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 61f6454b9ccc053aa39ad4db4fc8ffb0c0432513
2017-01-03 14:28:29 -08:00
Bobby Holley
3e7b592e7b servo: Merge #14828 - Reimplement AtomicRefCell with pure atomics (from bholley:faster_atomic_refcell); r=Manishearth
While reviewing @bzbarsky's patches in [1], I started typing out some lore about how mutable AtomicRefCell borrows are actually cheaper than immutable ones, so we should prefer them where possible. But then I decided that this was a really dumb state of affairs and that we should just fix AtomicRefCell instead, and implement a proper AtomicRef{,Mut}::map while we were at it. So here we are.

This PR adds a from-scratch implementation of AtomicRefCell that aims to be 100% sound, even in unrealistic overflow scenarios. We should probably get this on crates.io eventually, but I want to land it landed in-tree first.

With this implementation, each operation (borrow or release) is one atomic instruction, and all borrow/release pairs (mutable or immutable) take 12 ns on my machine, which is what I'd expect. This is a 50% improvement over the previous implementation in the immutable case.

There may be some places where we could get away with Ordering::Release instead of Ordering::AcqRel, but it didn't seem worth it to try to reason it out.

r? @Manishearth

CC @emilio @SimonSapin @heycam @upsuper

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1298588

Source-Repo: https://github.com/servo/servo
Source-Revision: 57b2c2609eb05ab06291137904703565a25a1cca
2017-01-03 12:24:45 -08:00
Cameron McCormack
6243c29b80 servo: Merge #14830 - stylo: update bindings (from heycam:bindings-update-15); r=emilio
Bindings update for https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=8ebbde564daf4f7019d874e4b888bd670c81e6cc.

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: 672f099c95f8b5b98b762beb2a36957e32713940
2017-01-03 06:08:30 -08:00
Emilio Cobos Álvarez
121224a608 servo: Merge #14819 - Document most of the remaining parts of the style system, make docs-by-default for the whole style system (from emilio:no-missing-docs); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 87847324a0815e2214fd34da89bbefa4222b1197
2017-01-02 04:10:56 -08:00
Simon Sapin
b9674a7721 servo: Merge #14821 - More docs in style (from servo:docs-in-style); r=emilio
Follow up to #14802.

r? @emilio

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 32eca899e6784a5ae440b2544a1b92bb238a7406
2017-01-02 02:08:01 -08:00
Cameron McCormack
b9d0a6a0ad servo: Merge #14790 - stylo: update bindings (from heycam:bindings-update-14); r=Manishearth
Bindings update for https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=68a742b057d75c060fc7e37b8ab89bbffbbb9e2e.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: e995af9cff24801e3c2441f00cf65157b7c61b2c
2017-01-01 19:20:37 -08:00
Xidorn Quan
2b9b2c6976 servo: Merge #14769 - Update helper functions of StyleComplexColor (from upsuper:complex-color-update); r=heycam
<!-- Please describe your changes on the following line: -->
The definition of `StyleComplexColor` in the Gecko side was updated in [bug 1063162](https://bugzilla.mozilla.org/show_bug.cgi?id=1063162). The helper functions need update as well.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: bbe70c7c5f07a67c48523221cb5d9ba12cbb2151
2016-12-31 22:33:47 -08:00
Julien Levesy
4becda37bc servo: Merge #14796 - replace match by if let statements if possible (from jlevesy:jl-match-to-if-let); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
Hi there,

This PR replaces `match` statements by `if let` when possible.

Thanks for reviewing

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14788

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because this PR is a code cleanup patch.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: d967d89fc081ae0f48850f3e29e4a9848bd837c7
2016-12-31 21:28:41 -08:00
Emilio Cobos Álvarez
b5757b5057 servo: Merge #14802 - Document more style modules (from emilio:no-missing-docs); r=Wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: 2ebcad10f58151a1c531d80794a0211ba12cbeb0
2016-12-31 15:34:51 -08:00
Nazım Can Altınova
48031a5745 servo: Merge #14757 - Fix overflow serialization with CSS-wide keywords (from canaltinova:overflow); r=Manishearth
<!-- Please describe your changes on the following line: -->
Overflow does not behave like a normal shorthand. CSS-wide keywords were handled in their `to_css_declared` method. So I had to bypass this check to make it work.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14752 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 62ff467be855f222829ec961a104a0fdd3e083b0
2016-12-31 11:26:21 -08:00
Emilio Cobos Álvarez
89013f9ba5 servo: Merge #14801 - style: Document and force documentation in a big chunk of the style crate (from emilio:no-missing-docs); r=mbrubeck,Manishearth,Wafflespeanut
Style no forced docs for the properties code and similar, but I ran out of time, and I think it's a nice improvement.

I'd appreciate a fast-ish turn-around time because this is pretty much prone to bitrot.

Source-Repo: https://github.com/servo/servo
Source-Revision: bd67163438317daa711b2411ce302aaf5bf4136a
2016-12-31 03:19:02 -08:00
Emilio Cobos Álvarez
c6f610c9b9 servo: Merge #14793 - stylo: Support at-import (from emilio:stylo-at-import); r=heycam,Manishearth
Reviewed upstream by @heycam  and @Manishearth in:

https://bugzilla.mozilla.org/show_bug.cgi?id=1304792

Source-Repo: https://github.com/servo/servo
Source-Revision: 569e61e7ff6231ff62b8dc402c3e33b6072af6d8
2016-12-30 19:12:55 -08:00
Emilio Cobos Álvarez
e33a6984d2 servo: Merge #14739 - style: Cleanup and refactor how media types are represented (from servo:stylo-mq); r=Manishearth
This is necessary for the upcoming work in Stylo, given I plan to make MediaType
different for Servo and Gecko, and the Unknown variant doesn't fit in MediaType
to be fair, the device is never going to have any unknown media type.

Source-Repo: https://github.com/servo/servo
Source-Revision: d3875f6ec52fdb6bbe49719af6bff299c792ae0b
2016-12-30 06:05:43 -08:00
Cameron McCormack
537718af60 servo: Merge #14776 - stylo: Don't persist styles on elements not in the document (from heycam:not-in-doc-persist); r=emilio
<!-- Please describe your changes on the following line: -->

This is the Servo half of https://bugzilla.mozilla.org/show_bug.cgi?id=1324983, which @emilio has already reviewed.

Source-Repo: https://github.com/servo/servo
Source-Revision: b49eb6f56664e5e8db326466726ccf3b58397168
2016-12-29 19:00:30 -08:00
Xidorn Quan
97376dcc30 servo: Merge #14768 - Upgrade libbindgen to 0.1.5 (from upsuper:upgrade-bindgen); r=emilio
0.1.4 is known to be broken on Windows, and earlier version may not work properly in various platforms.

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: ab623de2617c5a5414f4a0ac7cd66627214f82d5
2016-12-29 04:49:16 -08:00
Xidorn Quan
51301d6bd9 servo: Merge #14771 - Add support of text-combine-upright for stylo (from upsuper:text-combine-upright); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because it is just a trivial change for stylo only

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 49bdef98bff28771b189073f5f0d487fe9529b86
2016-12-28 21:19:26 -08:00
Nick Price
a0af6e8d8c servo: Merge #14746 - Default is top-to-bottom if unset, not bottom-to-top (from DominoTree:fix-linear-gradient); r=emilio
<!-- Please describe your changes on the following line: -->
Reverse linear gradient direction if not explicitly specified to match expected default behavior

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #14745 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: adb3e12b72a3d11cbe0973321cbe8009c2555c7a
2016-12-28 10:46:53 -08:00
Xidorn Quan
02804e87c7 servo: Merge #14754 - Skip invoking bindgen if no header changes (from upsuper:skip-bindgen); r=emilio
This can avoid doing bindgen when build script is called for updating other files, e.g. properties.

This uses a global modified time, so there is a chance that some of the files which can be skipped but not skipped. But given that we do all three files in parallel, that would unlikely affect the actual runtime.

Using lots of `Mutex` could be an issue, but it doesn't seem to be in practice. Since only one thread would hold the lock of `ADDED_PATHS`, there is never a competitor for the lock of `LAST_MODIFIED`.

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: 9e0d269353d9380cb5cd12170679f2e82ab8c9f7
2016-12-28 04:51:53 -08:00
Hiroyuki Ikezoe
ff5e2c7915 servo: Merge #14747 - Interpolate colors with premultiplied alpha (from hiikezoe:color-interpolation2); r=emilio
We need to clamp each interpolated values because some cubic-bezier functions
produce values that are out of range [0, 1].

r? @emilio

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [X] There are tests for these changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: f9d971771c62f244c338be1cb34e0aa191d64206
2016-12-28 02:06:38 -08:00
Shing Lyu
72f401280b servo: Merge #14124 - Flexbox trace (from shinglyu:flexbox-trace); r=glennw
<!-- Please describe your changes on the following line: -->
This is a follow up for #13740, so r? @jdm

The first patch enables JSON serialization for flexbox flows, the second one fixed format incompatibilities for the layout viewer.

The 3rd and 4th patches are just layout viewer UI enhancements, we could split that to a spearate PR if you prefer.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #13846  (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because it's a trivial debug tool

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 58fec2f05a21eb69899c8ec21e4b95000cfed2f2
2016-12-28 00:33:31 -08:00
Xidorn Quan
eb533a55dd servo: Merge #14753 - Avoid write atoms files when not necessary (from upsuper:atom-gen-update); r=Wafflespeanut
This would avoid rebuilding style component even if nothing is changed when using "mach build-geckolib --with-gecko".

The `FileAvoidWrite` class is a simplified version of [the same class used in Gecko's build system](https://dxr.mozilla.org/mozilla-central/rev/dccfc624915b1bebe7975076e9b42bd46684cbc6/python/mozbuild/mozbuild/util.py#202).

r? @Wafflespeanut

Source-Repo: https://github.com/servo/servo
Source-Revision: 81ca858678953105ee97f482eb3900729fa4d696
2016-12-27 23:05:43 -08:00
Bobby Holley
b7870a05af servo: Merge #14751 - style: Add a special, explicit path for lazy style resolution and use it for getComputedStyle (from heycam:transient); r=heycam
<!-- Please describe your changes on the following line: -->

This is the Servo-side part of @bholley's final patch of https://bugzilla.mozilla.org/show_bug.cgi?id=1324627, which I've already r+ed.

Source-Repo: https://github.com/servo/servo
Source-Revision: f36b5531cb7a28036bdb29cf5619ec0da1030849
2016-12-27 19:55:01 -08:00
Nazım Can Altınova
e483a0c5b6 servo: Merge #14703 - Add gecko glue for perspective/transform properties (from canaltinova:perspective-transform); r=Wafflespeanut
<!-- Please describe your changes on the following line: -->
To be able to add glue for these properties,  we needed to change their structs. They are moved from effects to box and added stylo glue.
This PR covers these properties:
- perspective
- perspective-origin
- backface-visibility
- transform-box
- transform-style
- transform-origin

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [X] These changes do not require tests because they are stylo changes

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: a6d206eb6687da31c957094bbed380c9e47daac4
2016-12-26 21:48:52 -08:00
Cameron McCormack
cfd016aebe servo: Merge #14743 - stylo: update bindings (from heycam:bindings-update-13); r=emilio
Bindings update corresponding to https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=94459122fed6b6fbfa5c73c6b1eed0e75d09e357/.

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: 87acac1ea01ade095be66435eea9b33f68d28b0b
2016-12-26 19:25:32 -08:00
Matt Brubeck
61cae9bbf7 servo: Merge #14518 - Fix inline layout of table cells impacted by rowspan (from mbrubeck:rowspan2); r=notriddle
This is part of the fix for #11297. This PR fixes the inline layout of table cells impacted by row-spanning cells from previous rows. A separate PR to follow will fix the table block size calculations to account for rowspan.

This PR doesn't yet include any test changes. If it doesn't cause any existing tests to pass, I will add a new test to it.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 9d320d5a34fe9911266940eb1ce96204d345b678
2016-12-26 10:09:09 -08:00
Bobby Holley
0493cdccfd servo: Merge #14731 - stylo: Coordinate stylist flushing with gecko, and clean up pseudo-element resolution (from heycam:flushing_and_pseudos); r=heycam
Source-Repo: https://github.com/servo/servo
Source-Revision: 42ec8a89747ba1e25769fffae083f62fe9576987
2016-12-25 18:13:30 -08:00
Xidorn Quan
123795e82c servo: Merge #14640 - Store unset keyword as specified value (from upsuper:unset-storage); r=emilio
<!-- Please describe your changes on the following line: -->
`unset` keyword value should *not* be converted to something else during parsing. It is a specified-value time value, which should be preserved until computation.

WIP patch for seeing what tests would be broken and / or if there is necessary to add any new test.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4cd7321531a95ca2d9a1b4d5e04e3fdb35b03f56
2016-12-25 14:23:34 -08:00
Emilio Cobos Álvarez
0c7e0c3aa5 servo: Merge #14728 - Bunch of nitpicks (from emilio:nit); r=Wafflespeanut
I just noticed one while writing #14719, and then grepped and couldn't stop.

r? @nox

Source-Repo: https://github.com/servo/servo
Source-Revision: 7fc9047d22147cf419d2551350421e23105e6f0e
2016-12-25 11:04:21 -08:00
Emilio Cobos Álvarez
430bf9b256 servo: Merge #14721 - Bindgenup (from emilio:bindgenup); r=Manishearth
<!-- Please describe your changes on the following line: -->
r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 75b3d68fa74ae1b9a090a6dc13dec3b8dca67b89
2016-12-24 16:43:57 -08:00
Manish Goregaokar
a02e4aabea servo: Merge #14684 - Regen bindings (from Manishearth:regen); r=bholley
Source-Repo: https://github.com/servo/servo
Source-Revision: dd2aa4195ab1ac853a5b80c6aa0a0d9c1fae055c
2016-12-22 23:26:57 -08:00
Simon Sapin
99a67d7521 servo: Merge #14671 - Remove the unused dependency of style to plugins (from servo:style-no-plugins); r=mbrubeck
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 40527441395622dff6b970d6ff1f9f6503f54567
2016-12-22 12:53:33 -08:00
Bobby Holley
408478b137 servo: Merge #14662 - Hoist bloom filter into scoped TLS, and remove a bunch of complexity and unsafety from the style system (from bholley:bloom_tls); r=emilio
With this PR, the only remaining usage of UnsafeNode is the transition stuff, which is servo-only and probably going to be rewritten over the course of stylo. The parallel traversal is now fully typechecked and safe. \o/

r? @emilio

Source-Repo: https://github.com/servo/servo
Source-Revision: b35ab98132539d4e6f1fcd4b3307eae40e387861
2016-12-22 12:02:38 -08:00
Cameron McCormack
c207d82f7a servo: Merge #14667 - stylo: update bindings (from heycam:bindings-update-12); r=bholley
<!-- Please describe your changes on the following line: -->

Update bindings for https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=3cefc3d84bae6c9ae9d591bb26d98a8f6fc51d47.

r? @bholley

Source-Repo: https://github.com/servo/servo
Source-Revision: 1b069de6b26db99f8b7964e8542f2b04e78094ce
2016-12-21 18:16:45 -08:00