Commit Graph

2239 Commits

Author SHA1 Message Date
Emilio Cobos Álvarez
9f898f11f2 servo: Merge #18904 - style: Stop threading the ElementData around the invalidator (from emilio:invalidator-less-dependencies); r=heycam,jdm,nox
style: Stop threading the ElementData around the invalidator.

Source-Repo: https://github.com/servo/servo
Source-Revision: c1e0889971582488ed7a4d3a3af21a49bf497abc
2017-10-17 05:18:29 -05:00
Cameron McCormack
09de3b4d02 servo: Merge #18915 - style: Add FFI function for parsing IntersectionObserver rootMargin values (from heycam:observer); r=upsuper
Servo-side part of https://bugzilla.mozilla.org/show_bug.cgi?id=1408305, reviewed there by Xidorn.

Source-Repo: https://github.com/servo/servo
Source-Revision: ac74cd57a257fc95e0513524e196c91807c18bba
2017-10-17 01:11:39 -05:00
Savid Sharan
e95ebd0de1 servo: Merge #18906 - Removed pdqsort dependency under the style crate (from savanu:pdqsortchange); r=SimonSapin
<!-- Please describe your changes on the following line: -->
Removed the pdqsort dependency from the style crate.
Removed the sort_by_key method and used the stdlib version directly.

---
<!-- 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 #16120 (github issue number if applicable).

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- 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: eecee32a0b139096e8fe268590536b2eb5ac911d
2017-10-16 21:50:04 -05:00
Emilio Cobos Álvarez
9424bfb1bc servo: Merge #18894 - style: Remove the ElementExt trait (from emilio:bye-elementext); r=nox
It is likely it's the most useless trait ever existing.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7d05c76d1828bc80e578c9b77f0c57b0e1afafc2
2017-10-16 07:32:40 -05:00
Cameron McCormack
e540fc5e7e servo: Merge #18891 - style: add FFI functions for color parsing (from heycam:color-refactor); r=upsuper
Servo side of https://bugzilla.mozilla.org/show_bug.cgi?id=1408312, reviewed there by Xidorn.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1e351ef8c478de507c6ee7b65eeff7524d73a4c9
2017-10-16 04:49:33 -05:00
Emilio Cobos Álvarez
fe2457274c servo: Merge #18884 - style: Use left-to-right indices in the invalidator (from emilio:invalidator-ltr); r=heycam
This will make easier to create external invalidations that don't point to a combinator,
and also makes reasoning about the invalidator a bit easier.

Source-Repo: https://github.com/servo/servo
Source-Revision: a759ded65d965b54c535c74d460f60a782e51487
2017-10-16 03:41:54 -05:00
Emilio Cobos Álvarez
07d24f9998 servo: Merge #18879 - style: Not all computed value flags are really inherited (from emilio:computed-value-flags-inherited); r=heycam
This fixes the fishiness I noticed in:

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 9b82d08dc5ca002b34662f8058330e069d1aca15
2017-10-16 02:36:22 -05:00
Anthony Ramine
51aeb54adf servo: Merge #18886 - Change AttrValue::Url to AttrValue::ResolvedUrl (from servo:urls); r=SimonSapin
Things make more sense like this.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7e8def9c080faf5a1b8e40fe90747be5439fc3f1
2017-10-15 04:53:29 -05:00
Emilio Cobos Álvarez
cd1986fd76 servo: Merge #18876 - style: Do not expose LocalMatchingContext (from emilio:die-localmatchingcontext-die); r=SimonSapin
This type is a lot of complexity related to a very specific thing such as the
hover and active quirk.

Instead of that, move `nesting_level` to `MatchingContext`, and simplify all
this computing whether the quirk applies upfront, for each complex selector we
test.

This is less error-prone, and also allows simplifying more stuff in a bit.

Also, this makes the hover and active quirk work in Servo with no extra effort.

Source-Repo: https://github.com/servo/servo
Source-Revision: a200fb4b9df4e7461b4238fe3a6d49881f438e25
2017-10-15 02:21:47 -05:00
Emilio Cobos Álvarez
438158bcfb servo: Merge #18880 - style: Fixup the hack added in #18867 (from emilio:fixup-parse-hack); r=emilio
The declaration can indeed have the same id if it contains variables, or is a
CSS keyword value.

This was making a WPT test fail, so this is tested, though Servo's WPT import
didn't catch this for some reason.

Source-Repo: https://github.com/servo/servo
Source-Revision: de324f8b18a9728bbcd6c0874840262d0002bc23
2017-10-14 09:49:45 -05:00
Emilio Cobos Álvarez
fd6fd4b40e servo: Merge #18877 - stylo: Dumb down the return value of SelectorList_Closest (from emilio:closest-why); r=nox
stylo: Dumb down the return value of SelectorList_Closest.

So it builds with rust 1.21.

See: https://bugzilla.mozilla.org/show_bug.cgi?id=1408622
Source-Repo: https://github.com/servo/servo
Source-Revision: 8b6207c0d689b0eff27965a60c8acfb9ad34252c
2017-10-14 08:13:59 -05:00
Emilio Cobos Álvarez
0fb0a76e82 servo: Merge #18867 - style: Dishonor display: -moz-box if -webkit-box was specified before (from emilio:parse-hack); r=heycam
This is a compatibility hack that Gecko supports that is apparently important for android.

I want to remove it, but let's see...

See https://bugzilla.mozilla.org/show_bug.cgi?id=1407701 for reference.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2be76c5fd7b74f334f8ce975e2051c77762314c2
2017-10-14 05:27:51 -05:00
Emilio Cobos Álvarez
c6d79fb13f servo: Merge #18864 - style: Reformat a few signatures to follow a consistent style (from emilio:reformat); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: db29af160ca43d1b5ed4e6f6259721c176ef2938
2017-10-13 14:11:02 -05:00
Emilio Cobos Álvarez
51109134a7 servo: Merge #18863 - style: Share code between Gecko and Servo for DOM APIs (from emilio:dom-api-dont-repeat); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: ba77ffed173b3a0ed934edead419ab3919cf5147
2017-10-13 10:48:57 -05:00
Emilio Cobos Álvarez
879f135b6a servo: Merge #18847 - style: Split the invalidation processing from the invalidator step (from emilio:invalidation-generic); r=heycam
This is the first step in reusing the invalidation machinery for other stuff,
potentially including QuerySelector / QuerySelectorAll.

Source-Repo: https://github.com/servo/servo
Source-Revision: a89a76e1fc138bd1a60ee974abfc47a4b0f69c09
2017-10-13 06:14:42 -05:00
Xidorn Quan
7801840b64 servo: Merge #18858 - Rewrite cycle removal algorithm of custom properties and integrate it with substitution (from upsuper:cycle-removal); r=SimonSapin
This fixes [bug 1403839](https://bugzilla.mozilla.org/show_bug.cgi?id=1403839).

Source-Repo: https://github.com/servo/servo
Source-Revision: 1099bc8b92f043ba39e6a4b35882421a3a82c8b6
2017-10-12 20:30:28 -05:00
Emilio Cobos Álvarez
d00f0c5454 servo: Merge #18850 - Update bindgen (from emilio:bindgenup); r=jdm
This includes a clang-sys upgrade that removes crashes in linux32, and nothing
else.

Source-Repo: https://github.com/servo/servo
Source-Revision: bc18ef78617553fa4b11927ca0c7738f5d14556b
2017-10-12 09:06:22 -05:00
Emilio Cobos Álvarez
59dfbf6bdf servo: Merge #18848 - stylo: Remove :-moz-system-metric pseudo-class (from emilio:unship-but-a-bit-more-slowly); r=xidorn
Bug: 1405311
Reviewed-by: xidorn
MozReview-Commit-ID: CIF64dG1F2k
Source-Repo: https://github.com/servo/servo
Source-Revision: 55bf65021d03a6ec6811077b606612d7c9f3fd62
2017-10-12 07:05:42 -05:00
Xidorn Quan
e42e59a05d servo: Merge #18843 - Remove text-shadow handling from HasAuthorSpecifiedRules (from upsuper:author-text-shadow); r=heycam
This is the Servo side change of [bug 1363088](https://bugzilla.mozilla.org/show_bug.cgi?id=1363088).

Source-Repo: https://github.com/servo/servo
Source-Revision: 5682eeff486ae4c6963cb04af1a443430b735aed
2017-10-12 03:12:26 -05:00
J. Ryan Stinnett
ba97a60037 servo: Merge #18844 - Limit visited cascade for reparenting (from jryans:stylo-visited-reparent-cascade); r=emilio
The specialized cascade flow in `stylist::compute_style_with_inputs` (used with
reparenting) currently computes all properties for visited styles, but we only
need visited-dependent properties.

This adds the cascade flag to reduce the work to visited-dependent properties
only, like we do for the regular cascade flow.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 82a013ae073e1e546d80866710ca395bb71cab7c
2017-10-12 01:04:57 -05:00
Cameron McCormack
efe21e45bd servo: Merge #18803 - style: more custom properties optimizations (from heycam:more-custom-prop-opts); r=emilio
These help slightly with https://bugzilla.mozilla.org/show_bug.cgi?id=1405411.

Source-Repo: https://github.com/servo/servo
Source-Revision: 99e15f0f03fceb97f2dd54e049fc133a7001c157
2017-10-11 22:51:51 -05:00
Cameron McCormack
43a99c7225 servo: Merge #18842 - style: Skip custom properties comparison if other inherited properties changed (from heycam:skip-var-check); r=emilio
Servo half of https://bugzilla.mozilla.org/show_bug.cgi?id=1407246, reviewed there by Emilio.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9f8514d2b94713b6dc3bb918f8ffa9fac66021a3
2017-10-11 21:45:51 -05:00
J. Ryan Stinnett
24587f88b8 servo: Merge #18841 - Clear visited rules for text inheritance (from jryans:stylo-visited-first-line); r=emilio
https://bugzilla.mozilla.org/show_bug.cgi?id=1406254

Source-Repo: https://github.com/servo/servo
Source-Revision: dbf0991f8cab54516c5b0211e1818a16cfbf9e19
2017-10-11 18:50:23 -05:00
Emilio Cobos Álvarez
7e5a488a8d servo: Merge #18826 - style: Fix invalidation collection for XBL when quirks modes don't match (from emilio:invalidation-xbl-stuff); r=heycam
Source-Repo: https://github.com/servo/servo
Source-Revision: 105c5d2a0692c6e09320c5d967b43f879c3cd00d
2017-10-11 10:59:05 -05:00
Cameron McCormack
279d8d8341 servo: Merge #18827 - style: Support more selectors in the style sheet invalidator (from heycam:invalidate-less); r=emilio
In addition to being able to invalidate just based on local name, this
also adds support for invalidating based on selectors with no ancestor
combinator in them (resulting in a RESTYLE_SELF for those elements that
match).

Reviewed in https://bugzilla.mozilla.org/show_bug.cgi?id=1407522 by Emilio.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2f3bc0de499a9d301459dbb27978051a9a7d5f4a
2017-10-11 06:55:03 -05:00
Xidorn Quan
202d110aa2 servo: Merge #18823 - Support pseudo-element properly in HasAuthorSpecifiedRules (from upsuper:author-pseudo); r=emilio
This is the Servo side change of [bug 1401825](https://bugzilla.mozilla.org/show_bug.cgi?id=1401825).

Source-Repo: https://github.com/servo/servo
Source-Revision: 3c6e7b56c3469d29df8f6ff3332f50e447671d91
2017-10-10 18:31:18 -05:00
Emilio Cobos Álvarez
67252c1136 servo: Merge #18807 - style: Fix ex computation with more than one operand (from emilio:ex-calc); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: b1926b465671ce56474fc24827eb9562ff7b575b
2017-10-10 14:13:29 -05:00
Simon Sapin
a917619a4a servo: Merge #18808 - Use the current parser location for CSS error (from servo:error-location_); r=emilio
… rather than the start location of the current construct. This likely places the error just *after* of the unexpected token whereas before would be best, but that’s likely a much bigger change.

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

Source-Repo: https://github.com/servo/servo
Source-Revision: c79a54dbd9d3a590f5fd8191b8e57a0b9d1d0fdb
2017-10-10 12:31:24 -05:00
Hiroyuki Ikezoe
50c87bc0e3 servo: Merge #18738 - Use atom for animation name property (from hiikezoe:use-atom-for-animation-name-property); r=xidorn
<!-- Please describe your changes on the following line: -->
https://bugzilla.mozilla.org/show_bug.cgi?id=1329169

---
<!-- 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

Source-Repo: https://github.com/servo/servo
Source-Revision: 55a7fd75b4c081a92ebdac932afbc9b19b91e87c
2017-10-10 04:34:47 -05:00
Emilio Cobos Álvarez
5e2429c94b servo: Merge #18798 - style: Optimize custom properties cycle removal (from emilio:faster-custom-props); r=SimonSapin
After #18791, this is the major custom_properties perf bottleneck in the
testcase from bug 1405411.

I'm looking into how to efficiently merge this into `substitute_all`, but
meanwhile this is worth landing, and makes most of the overhead go away.

Source-Repo: https://github.com/servo/servo
Source-Revision: 27cb13314e5d4a0653887768c374cbc81d7f098b
2017-10-10 02:47:29 -05:00
Hiroyuki Ikezoe
05de0d992a servo: Merge #18800 - Fix mismatched arguments for servo selector list (from hiikezoe:fix-mismatched-arguments-for-servo-selector-list); r=emilio
<!-- Please describe your changes on the following line: -->
https://bugzilla.mozilla.org/show_bug.cgi?id=1406811

This needs to be fixed to update binding files.

---
<!-- 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

Source-Repo: https://github.com/servo/servo
Source-Revision: 2cd9dcebeefd22a265b3fe4e424fbf231392f594
2017-10-10 01:20:38 -05:00
Jyotsna Prakash
0eb6b8a5d7 servo: Merge #18747 - Serializing childrenonly (from jdm:serializing-childrenonly); r=jdm
Rebased from #17896.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #14975 (github issue number if applicable).
- [x] There are tests for these changes

Source-Repo: https://github.com/servo/servo
Source-Revision: e3624e62a4b247d7af5e783fcd4205d2914b6aab
2017-10-09 11:12:53 -05:00
Emilio Cobos Álvarez
b6c20a38cf servo: Merge #18791 - style: Optimize custom property cascading (from emilio:faster-custom-props); r=heycam
This should help a bunch with https://bugzilla.mozilla.org/show_bug.cgi?id=1405411

Source-Repo: https://github.com/servo/servo
Source-Revision: 8c314ff5d07acc71f556dcca87d7bc2facf93830
2017-10-09 09:29:18 -05:00
Boris Chiou
2b8804efc5 servo: Merge #18788 - Use defualt Debug trait for AnimationValue (from BorisChiou:style/animation_value/debug); r=emilio
We use AnimationValue for animation backend to do interpolation,
accumulation, or computing distance. While debugging it, dumping the
property name is not enough. We need to dump the detailed value contained
in it.

For example:
if we animate ```translate(100px)``` to ```translate(200px)```,
and want to dump ```{:?} => {:?}```, the result is ```transform => transform```.
I think what we want is something like:
```Transform([Translate(100px, 0px, 0px)]) => Transform([Translate(200px, 0px, 0px)])```.

Using default Debug trait is not perfect because there are some redundant type strings,
but it is still better than nothing.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [x] These changes are related to PR #18415.
- [X] These changes do not require tests because this is debug only.

Source-Repo: https://github.com/servo/servo
Source-Revision: 64aadee62c1e0f100ad79ab50a56cd1f84285eeb
2017-10-09 06:51:47 -05:00
Emilio Cobos Álvarez
4edd12ae04 servo: Merge #18794 - style: use the XBL styleset quirks mode to match XBL rules (from emilio:xbl-quirks-mode); r=heycam
This fixes bug 1405543.

MozReview-Commit-ID: Dv3mt3Fb8Yp
Source-Repo: https://github.com/servo/servo
Source-Revision: 604cc4e311f1aec72599d43c5a0138b04c8b780d
2017-10-09 05:04:15 -05:00
Nicholas Nethercote
49da860d31 servo: Merge #18786 - Rename nsIAtom as nsAtom (from nnethercote:bug-1400460); r=froydnj
Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than
nsIAtom.

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

This is the Servo-side PR for https://bugzilla.mozilla.org/show_bug.cgi?id=1400460.

---
<!-- 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 https://bugzilla.mozilla.org/show_bug.cgi?id=1400460

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because testing is on the Gecko side.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- 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: 715fc9cea6ed4ad22772c6d20136eac66cfe275c
2017-10-08 19:10:40 -05:00
Emilio Cobos Álvarez
d9665a8c09 servo: Merge #18783 - style: Introduce CustomPropertiesBuilder (from emilio:custom-props-builder); r=SimonSapin
I'm about to introduce more state here to implement optimizations for custom
property cascading, so this abstraction is useful to encapsulate that state.

Source-Repo: https://github.com/servo/servo
Source-Revision: 55a37930b218713fff4ba84b4fa1e43a0455e498
2017-10-08 09:50:04 -05:00
Emilio Cobos Álvarez
8ca1963739 servo: Merge #18781 - style: Add a simple custom properties benchmark (from emilio:custom-props-bench); r=heycam
This is going to help the work in bug 1405411.

Source-Repo: https://github.com/servo/servo
Source-Revision: 47efcd5e52afd62dcd84ba350948039f67613e20
2017-10-08 06:04:28 -05:00
Bobby Holley
493b7e524d servo: Merge #18779 - DiagnosticHashMap (from bholley:canary_and_journal); r=Manishearth
https://bugzilla.mozilla.org/show_bug.cgi?id=1405879

Source-Repo: https://github.com/servo/servo
Source-Revision: 3f4afbafab7c0a8bfcf596ea444269bb01af3955
2017-10-07 14:55:03 -05:00
Emilio Cobos Álvarez
8a841c7cbc servo: Merge #18774 - stylo: Add a mechanism to restrict media-features to UA and chrome sheets (from emilio:ua-sheets-mq); r=xidorn
Source-Repo: https://github.com/servo/servo
Source-Revision: 72834c3482b7450d73e6fe8835766044676db4b5
2017-10-07 06:16:45 -05:00
Xidorn Quan
6f233b8f59 servo: Merge #18772 - Backout #18759 on a CLOSED TREE (from upsuper:backout-unshipping); r=backout
Backout #18759

Source-Repo: https://github.com/servo/servo
Source-Revision: 8dece5e74e32223d968648080bb371f3be7fbd7c
2017-10-06 20:31:52 -05:00
Emilio Cobos Álvarez
0a5ccb5323 servo: Merge #18763 - style: Check transitions per longhand to know which transitions to keep (from emilio:transition-longhand-id); r=hiro,birtles
This fixes bug https://bugzilla.mozilla.org/show_bug.cgi?id=1406111

This fixes the fishy TransitionProperty mapping which I complained about in my
previous refactor.

Turns out that those properties could only be longhands, and thus the expansion
we did before that (and which I removed) was correct.

This fixes the bug by moving back to the previous correct behavior but using the
correct types.

The optimization to avoid creating a HashSet if we're transitioning all
properties or had no existing transition is removed since now we're creating a
LonghandIdSet, which is cheap, and that was only a performance optimization.

Source-Repo: https://github.com/servo/servo
Source-Revision: 04f787dbf9b235bf3af58dc7f3160689cdb2311c
2017-10-06 12:56:27 -05:00
Emilio Cobos Álvarez
9413283008 servo: Merge #18765 - stylo: Make :-moz-styleeditor-transitioning only valid in UA sheets (from emilio:unship-moz-se-transitioning); r=upsuper
Bug: 1396099
Reviewed-by: xidorn
Source-Repo: https://github.com/servo/servo
Source-Revision: a468d05fffc0246bd5881f4720841c6b3fe5b364
2017-10-06 05:28:28 -05:00
Brad Werth
8c60d531e9 servo: Merge #18764 - Change MediaExpressionValue::from_css_value to only accept pixels (from bradwerth:onlyDPPX); r=heycam
MozReview-Commit-ID: Hn3twVa8xLo

<!-- Please describe your changes on the following line: -->
https://bugzilla.mozilla.org/show_bug.cgi?id=1404097
https://reviewboard.mozilla.org/r/184746/

---
<!-- 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
- [X] These changes do not require tests because existing tests provide coverage.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- 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: 6421332fb3f13205553ec3d9f911e7577b2638fd
2017-10-06 03:39:42 -05:00
Boris Zbarsky
edfd84f202 servo: Merge #18767 - Don't assume that inputs to compute_style_with_inputs have any rules (from bzbarsky:fix-inputs-no-rules); r=heycam
It could be a text style, which never has any rules attached to it.

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

<!-- 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 https://bugzilla.mozilla.org/show_bug.cgi?id=1406222

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

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- 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: 117dbfaac20d8a388cf3cf5d2bc103b9d6249ee8
2017-10-06 01:53:12 -05:00
Emilio Cobos Álvarez
432714d308 servo: Merge #18759 - stylo: Keep unshipping stuff (from emilio:keep-unshipping-dont-stop); r=upsuper
From bug 1396066

Source-Repo: https://github.com/servo/servo
Source-Revision: 90d0afc61485b352b557efeabb52505bd1bd6417
2017-10-05 17:54:57 -05:00
Xidorn Quan
b37b989f4f servo: Merge #18753 - Only generate structs file for the current build (from upsuper:binding-structs); r=emilio
This PR changes build_gecko.rs to only generate the `structs.rs` for the current build (rather than both), depending on whether `gecko_debug` feature is set.

The in-tree files are switched to use the previous release one, because that's what we currently use for stylo test and it is in general what we really care about. For this change, `gecko_debug` mode is removed from Servo CI (in `build-geckolib`) with the assumption that people general do that build locally for stylo development, so it is less likely to be broken than release.

Source-Repo: https://github.com/servo/servo
Source-Revision: f2879a568d34ecc8d42de55569813d8a851e904f
2017-10-05 11:24:22 -05:00
Emilio Cobos Álvarez
7abb2b6af3 servo: Merge #18761 - style: Iterate in the expected order in the custom_properties module (from emilio:custom-props-iter); r=SimonSapin
In #18745, I replaced a few manual iterations over `index` with the iterator,
and it changed the behavior of `layout/style/test/test_variables_order.html`,
since it turns out that the iterator iterates right to left.

I think this is just an accident that happened due to inconsistencies in how we
were iterating over it, and that our behavior was inconsistent (since we
iterated rtl in some cases, but ltr in others seems like it'd be inconsistent
depending on the depth of the tree and different stuff).

This brings back the expected behavior again, and ensures we iterate over a
consistent order every time.

Source-Repo: https://github.com/servo/servo
Source-Revision: 00a2f55e5f39f8f077b83d43caf4710fa0647f76
2017-10-05 09:22:24 -05:00
Emilio Cobos Álvarez
303c87d21a servo: Merge #18752 - style: Use the flattened tree parent to find the closest non-nac ancestor of an element (from emilio:cc-parent); r=bzbarsky
This only matters for document level NAC like canvas custom content, in which
case otherwise we inherit from the document element (which is wrong).

Bug: 1405635
Source-Repo: https://github.com/servo/servo
Source-Revision: 35e84c5cdf9cad0f16f94525d425a3b881b3b524
2017-10-05 05:49:06 -05:00
Emilio Cobos Álvarez
25866d953f servo: Merge #18745 - style: Custom properties cleanup (from emilio:custom-props-less-unwrap); r=nox
Use less unwrap and custom types in custom properties.

The idea is for this to shed some light in https://bugzilla.mozilla.org/show_bug.cgi?id=1403845.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9bf299bba9cd24c25200503fce2c19047eeb1b90
2017-10-05 02:18:52 -05:00