Commit Graph

169 Commits

Author SHA1 Message Date
Emilio Cobos Álvarez
3c6c9eda01 servo: Merge #16177 - Bug 1350140: stylo: Implement all the remaining state pseudo-classes (from emilio:stylo-pseudo-classes); r=heycam,jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1d98e3406a5acacfd5a203ede54f3df9b7c2a9a0
2017-03-29 08:48:12 -05:00
Boris Zbarsky
fcbdfd3d46 servo: Merge #16168 - Update Gecko atom bindings for Gecko bug 1351139 (from bzbarsky:update-atoms); r=Manishearth
<!-- 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 _____

<!-- 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: f0da7648fcc06eb2dd335b30a9c717fd34d17950
2017-03-28 21:52:36 -05:00
Hiroyuki Ikezoe
1811871e87 servo: Merge #16147 - Update effect properties for animations (from hiikezoe:update-effect-properties); r=heycam
<!-- Please describe your changes on the following line: -->
This is a PR of https://bugzilla.mozilla.org/show_bug.cgi?id=1350754
---
<!-- 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

<!-- 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: 1e2b36a97a9391e274d924227a8857024dbe4774
2017-03-27 03:47:47 -07:00
Hiroyuki Ikezoe
0801d9d9b1 servo: Merge #16145 - Animation only restyles (from hiikezoe:animation-only-restyles); r=heycam
<!-- Please describe your changes on the following line: -->
This is a PR of https://bugzilla.mozilla.org/show_bug.cgi?id=1344966

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

<!-- 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: d77fceaf241843d0fee246c1c910072fe041a69e
2017-03-26 21:13:44 -07:00
Nazım Can Altınova
2ffdddb936 servo: Merge #16133 - Add support for -moz-image-rect (from canaltinova:image-rect); r=Manishearth
Add support for -moz-image-rect
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
- [X] These changes fix #15948 and [Bug 1341763](https://bugzilla.mozilla.org/show_bug.cgi?id=1341763)

<!-- 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: c2d9f663afd6c804c30a7a077392b836e1fa29b5
2017-03-25 12:09:21 -07:00
Emilio Cobos Álvarez
dfca7ce94e servo: Merge #16093 - Bug 1349553: Account for negations of state-dependent selectors (from emilio:state); r=bholley,heycam
Source-Repo: https://github.com/servo/servo
Source-Revision: 301ba366b88821bd85a2a5b700d4671ab3958aca
2017-03-23 01:52:43 -07:00
Bobby Holley
e0221b84fc servo: Merge #16092 - Handle URLs more efficiently in stylo (from bholley:specified_urls); r=emilio
Approved in https://bugzilla.mozilla.org/show_bug.cgi?id=1347435

Source-Repo: https://github.com/servo/servo
Source-Revision: d4d8293f22aaa4a310abc818c26464abceab894f
2017-03-22 19:13:07 -07:00
Boris Zbarsky
e385954a20 servo: Merge #16090 - Implement :required/:optional support for stylo (from bzbarsky:required-optional); r=emilio
Servo side of https://bugzilla.mozilla.org/show_bug.cgi?id=1349659

<!-- 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: 2124220a63c84d1f1562b010fe3869364336c4ac
2017-03-22 17:28:25 -07:00
Matt Brubeck
40fed2e38d servo: Merge #16082 - Bug 1337068 - stylo: :empty, :-moz-first-node, :-moz-last-node, and :-moz-only-whitespace (from mbrubeck:moz-first-node); r=emilio
https://bugzilla.mozilla.org/show_bug.cgi?id=1337068

Source-Repo: https://github.com/servo/servo
Source-Revision: b01a9e44684954919575dbf37c8c1fcc7824c4f6
2017-03-22 10:02:57 -07:00
Emilio Cobos Álvarez
b96bb79541 servo: Merge #16077 - Bug 1345950: stylo: Fix slow selector flags. r=bholley (from emilio:slow-flags); r=bholley
Source-Repo: https://github.com/servo/servo
Source-Revision: 545f8744126157d273158c5404d07fb09621d3ea
2017-03-22 03:23:51 -07:00
Manish Goregaokar
c5c268f7bf servo: Merge #16066 - stylo: Support all non-ts pseudos with an argument (from Manishearth:stylo-nonts); r=emilio
r=emilio https://bugzilla.mozilla.org/show_bug.cgi?id=1341086#c34

Source-Repo: https://github.com/servo/servo
Source-Revision: 82b88aad453f376a97adcca7b45d0b0ee390c817
2017-03-21 20:20:28 -07:00
Matt Brubeck
2601014868 servo: Merge #16045 - Bug 1348487 - stylo: Don't allow combinators in :-moz-any (from mbrubeck:any); r=emilio
https://bugzilla.mozilla.org/show_bug.cgi?id=1348487

Source-Repo: https://github.com/servo/servo
Source-Revision: 17098ddc8ffde03945387f98f52d1856ff1a8cd8
2017-03-20 08:31:25 -07:00
Simon Sapin
80dfe1b881 servo: Merge #16014 - Per-process lock for CSSOM objects (from servo:style-ref); r=emilio
<!-- Please describe your changes on the following line: -->

Before this PR, every object reflected in CSSOM is in `Arc<RwLock<_>>` to enable safe (synchronized) mutable aliasing. Acquiring all these locks has significant cost during selector matching:

* https://bugzilla.mozilla.org/show_bug.cgi?id=1311469
* https://bugzilla.mozilla.org/show_bug.cgi?id=1335941
* https://bugzilla.mozilla.org/show_bug.cgi?id=1339703

This PR introduce a mechanism to protect many objects with the same `RwLock` that only needs to be acquired once.

In Stylo, there is one such lock per process (in a `lazy_static`), used for everything.

I non-Stylo Servo, I originally intended to have one such lock per document (for author-origin stylesheets, and one per process for user-agent and user sytlesheets since they’re shared across documents, and never mutated anyway). However I failed to have the same document-specific (or pipeline-specific) `Arc` reachable from both `Document` nodes and `LayoutThread`. Recursively following callers lead me to include this `Arc` in `UnprivilegedPipelineContent`, but that needs to be serializable. So there is a second process-wide lock.

This was previously #15998, closed accidentally.

---
<!-- 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: bb54f0a429de0e8b8861f8071b6cf82f73622664
2017-03-19 14:31:19 -07:00
Nazım Can Altınova
326a1ece85 servo: Merge #16028 - Stylo: Add support for -moz-* pseudo-classes for alt text (from canaltinova:pseudos-for-alt); r=Manishearth
<!-- 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 [Bug 1341642](https://bugzilla.mozilla.org/show_bug.cgi?id=1341642)

<!-- 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: a2c33ac6e6e18c186e9af45274a7b8499ba1bc4c
2017-03-18 13:45:01 -07:00
cku
08bd86f6c5 servo: Merge #16004 - stylo: Update clip-path and transform-box glue (from CJKu:bug-1339674); r=heycam
<!-- Please describe your changes on the following line: -->
Gecko bug1340044 should be land immediately after this PR been merged.

---
<!-- 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 it changes only the declaration type of mTransformBox

<!-- 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: 0b590aeed73df3c1f1891fbb276010b29a8d7051
2017-03-17 05:53:10 -07:00
Hiroyuki Ikezoe
a26c163d32 servo: Merge #16005 - Compose animation with servo's hashmap (from hiikezoe:animation-compose); r=heycam
<!-- Please describe your changes on the following line: -->
This is a PR for https://bugzilla.mozilla.org/show_bug.cgi?id=1340958

---
<!-- 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: 36234d717f7155d61a631e98f0a435110e1ec161
2017-03-17 03:09:31 -07:00
Matt Brubeck
ffc5796ae9 servo: Merge #15966 - Bug 1340683 - stylo: Implement the :-moz-any pseudo-class (from mbrubeck:any); r=emilio
Adds support for the non-standard [:-moz-any](https://developer.mozilla.org/en-US/docs/Web/CSS/:any) selector.

---

- [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=1340683
- [x] These changes do not require tests because they are gecko-only

Source-Repo: https://github.com/servo/servo
Source-Revision: 0a747e23c6adc1b49c2861bbf7e2969c62dc2c47
2017-03-16 16:19:12 -07:00
Nazım Can Altınova
6bc8c9a9b9 servo: Merge #15983 - Stylo: Add some missing pseudo classes (from canaltinova:pseudo-classes); r=upsuper
---
<!-- 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 [Bug 1341739](https://bugzilla.mozilla.org/show_bug.cgi?id=1341739)

<!-- 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: 403bfdaaeef567904c7b8d55784fd5db8f60ed8a
2017-03-16 05:21:29 -07:00
Manish Goregaokar
dae7fa4c8e servo: Merge #15976 - stylo: Add parsing support for functional non-ts pseudoclasses, add stub -moz-system-metric pseudo (from Manishearth:stylo-stub-system-metric); r=heycam
r=heycam from https://bugzilla.mozilla.org/show_bug.cgi?id=1341086

Source-Repo: https://github.com/servo/servo
Source-Revision: 78c8edfb0a0556b3a579214c42b5bae37f0d73fd
2017-03-16 00:01:19 -07:00
Manish Goregaokar
860fbf886b servo: Merge #15971 - Replace non_ts_pseudo_class_list include hack with higher order macro (from Manishearth:nonts); r=nox
Cleaner, and easier to work with.

We may need to expand the functionality to support integer and string pseudo classes like -moz-system-metric

Source-Repo: https://github.com/servo/servo
Source-Revision: d30978246162e8a9bfad42b43ab6a05c90421c6e
2017-03-15 16:55:43 -07:00
Xidorn Quan
923f03a2aa servo: Merge #15961 - Implement access to CSSNamespaceRule for stylo (from upsuper:bug1345698); r=heycam
This is the Servo side changes of [bug 1345698](https://bugzilla.mozilla.org/show_bug.cgi?id=1345698).

Source-Repo: https://github.com/servo/servo
Source-Revision: 9986b42333a7438c02debd7fe8395a5c146a58df
2017-03-15 03:58:06 -07:00
Hiroyuki Ikezoe
99909789d8 servo: Merge #15943 - Use computed styles of the pseudo and its parent when calling Gecko_U… (from hiikezoe:animation-on-pseudo); r=heycam
…pdateAnimations to update CSS Animations on pseudo-elements.

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

This is a PR of https://bugzilla.mozilla.org/show_bug.cgi?id=1346408 .

---
<!-- 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: 5a8f3ef1d50da554e32e326faecd0effed5892dd
2017-03-14 15:23:22 -07:00
Manish Goregaokar
52a77e3568 servo: Merge #15939 - stylo: support all content values (from Manishearth:stylo-content-counter); r=heycam
r=heycam

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

Source-Repo: https://github.com/servo/servo
Source-Revision: 628cd7de6d6229af61d44b586da74176c21cc2ae
2017-03-14 09:25:27 -07:00
Emilio Cobos Álvarez
8e3c61a268 servo: Merge #15931 - style: Kill SharedStyleContext::default_computed_values (from emilio:die-defaultvalues-die); r=mbrubeck
This is on top of https://github.com/servo/servo/pull/15928.

Now that cascade() gets a Device ref, we can use the default computed values
from there to avoid propagating that state all over the place.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8c8edb8731dc01d254839d0922590fba72f278c6
2017-03-13 16:50:26 -07:00
lucantrop
72a4fc3bbf servo: Merge #15927 - added tidiness check for "-> ()" (from lucantrop:master); r=Ms2ger
<!-- Please describe your changes on the following line: -->
I added the check, modified the tests and removed all instances of "-> ()" that were already there.

---
<!-- 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 #15925 (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: a6f89c503671726bcb0407cd84c380f3af4a7916
2017-03-13 10:01:16 -07:00
Xidorn Quan
7ecd4c8131 servo: Merge #15924 - Implement access to CSSMediaRule for stylo (from upsuper:bug1315601); r=heycam,Manishearth
This is the Servo part of [bug 1315601](https://bugzilla.mozilla.org/show_bug.cgi?id=1315601).

Source-Repo: https://github.com/servo/servo
Source-Revision: cc9fb0ba59181d478eabb64e942b9342a4879a73
2017-03-12 23:55:46 -07:00
Manish Goregaokar
bfa068ec35 servo: Merge #15915 - stylo: Make URLs work in inline style (from Manishearth:stylo-style-attr); r=emilio
r=emilio

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

Source-Repo: https://github.com/servo/servo
Source-Revision: c9310ab144506e152131faecfa79d109822e9a8d
2017-03-11 12:08:49 -08:00
Emilio Cobos Álvarez
6f8a92bd3e servo: Merge #15913 - Use the proper viewport size for stylo (from emilio:viewport-size); r=heycam,hiro
Reviewed upstream at [bug 1303229](https://bugzil.la/1303229).

Source-Repo: https://github.com/servo/servo
Source-Revision: 06f99c13f233bad71a42affccb10c86295ff014b
2017-03-11 04:40:31 -08:00
Hiroyuki Ikezoe
bec556e4fa servo: Merge #15900 - Process css animations for gecko (from hiikezoe:process-css-animations); r=heycam
<!-- Please describe your changes on the following line: -->
This is a PR for https://bugzilla.mozilla.org/show_bug.cgi?id=1341985 .

---
<!-- 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'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: 63bed270734aee1956d1c1ec131aa1de9d5bb5a0
2017-03-09 20:23:21 -08:00
Boris Zbarsky
d83d8003aa servo: Merge #15843 - Servo side of gecko bug 1343078: update bindinggen bits for the changes I'm making to Gecko atoms (from bzbarsky:split-anon-box-atoms); r=bzbarsky
<!-- 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 they will get tested by Firefox CI.

<!-- 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: 8ed29f4a962f8f884ce8ed4b16c0bb29d57151af
2017-03-07 22:28:02 -08:00
Simon Sapin
81883fd8ac servo: Merge #15735 - Update cssparser to 0.11 (from servo:cssparserup); r=emilio
<!-- Please describe your changes on the following line: -->

<s>Depends on https://github.com/servo/rust-cssparser/pull/122.</s>

---
<!-- 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: 94e563e4d9292d7b19ce061e070cda358e822172
2017-02-26 02:19:32 -08:00
Emilio Cobos Álvarez
86879f8f0b servo: Merge #15736 - Bug 1341083: Implement dynamic restyling for display: contents (from servo:display-contents); r=heycam
Reviewed upstream by @heycam

cc @bholley, didn't end up renaming the `layout_parent` thing, because it made the cascade way more verbose (and difficult to understand IMO) unnecessarily, and you said you were ok-ish with it.

Source-Repo: https://github.com/servo/servo
Source-Revision: b77140a0375dcad9e15d4692edf8f15d5fe4597c
2017-02-25 11:00:07 -08:00
Ethan Glasser-Camp
d4fb39d46a servo: Merge #14740 - Add support for keyword values for min-width and max-width (from glasserc:extremum-length); r=Manishearth
This is a follow-up to #14432 which got closed and can no longer be re-opened.

This PR aims to add support for keyword-values max-content, min-content, fit-content, and fill-available to the properties that use them, namely min-width, min-height, max-width, and max-height.

It's still untested because I still haven't figured out how to do that. I guess I should write or find some web page that uses these properties.

Refs #13821.

<!-- 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
- [ ] These changes fix #13821  (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: 26de7c6bc48affbc2087b32649850f0733e567f0
2017-02-24 14:08:58 -08:00
Nathan Froyd
5ec6cd077e servo: Merge #15535 - geckolib: use a global thread pool for styling (from froydnj:global-style-thread-pool); r=bholley
By having a single thread pool, rather than one per document, we use less memory.  This addresses https://bugzilla.mozilla.org/show_bug.cgi?id=1324250.

This may be obvious to an experienced Rust programmer, but I went with raw pointers because trying to use `Option` global variables resulted in complaints about turning on feature flags in nightly Rust.  Since this is for stylo, nightly features are not appropriate here.

---
<!-- 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: 56a99577b31a942e340624f97377980b0e612088
2017-02-23 10:15:41 -08:00
Simon Sapin
28c8f81601 servo: Merge #15692 - Stylo: add :-moz-table-border-nonzero pseudo-class (from servo:moz-table-border-nonzero); r=upsuper
<!-- Please describe your changes on the following line: -->

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

---
<!-- 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: 65624dbfc28442b58145215f524eb13aeb2cadf6
2017-02-22 23:41:26 -08:00
Xidorn Quan
7515f8291d servo: Merge #15682 - Simplify defining arc ffi types (from upsuper:arc-types); r=Manishearth
r? @Manishearth

I don't have a good sense for creating syntax... so if you have any suggestion for the syntax of `impl_arc_ffi` macro, it would be appreciated.

Source-Repo: https://github.com/servo/servo
Source-Revision: af292c4a7180a35c632b16a4fb0aff9ae2933f77
2017-02-22 15:58:35 -08:00
Nazım Can Altınova
b4d558ad7e servo: Merge #15662 - Fix parsing methods of column-{gap,width} (from canaltinova:column); r=Manishearth
<!-- Please describe your changes on the following line: -->
They weren't accepting {normal, auto} keywords. Fixed parsing methods of these properties.

---
<!-- 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 #15088 (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: f86e71150677adf472ab1d14c47731f47e52220d
2017-02-20 10:28:03 -08:00
Ravi Shankar
0596318cf6 servo: Merge #15628 - Stylo: Implement grid-auto-{rows,columns} (from Wafflespeanut:grid); r=Manishearth
<!-- 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 #15312 (github issue number if applicable).

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

r? @emilio (cc @Manishearth @upsuper)

Source-Repo: https://github.com/servo/servo
Source-Revision: 30a31fb744a2fd2b11b901d722704fe458df3022
2017-02-20 01:11:03 -08:00
Cameron McCormack
9eab6595fe servo: Merge #15630 - stylo: Don't leak nsStyleCoord::Calc objects when setting gradients (from heycam:calc); r=Manishearth
Fix for https://bugzilla.mozilla.org/show_bug.cgi?id=1340509.  My initial inclination was to add a Drop impl to nsStyleCoord but I'm not sure if that's a good idea with the FFI types.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: eb6082fd7877fd3a14d14369f107a8b840f128d5
2017-02-18 02:29:44 -08:00
Xidorn Quan
8ae7e0b0c5 servo: Merge #15625 - Update atoms for gecko binding (from upsuper:update-atoms); r=heycam
r? @heycam

Source-Repo: https://github.com/servo/servo
Source-Revision: 9f1f62d0b2b95b995984444a8748488c7333d0bf
2017-02-17 18:30:51 -08:00
Bobby Holley
e59f7e85ce servo: Merge #15599 - Implement "handled for descendants" tracking for RestyleDamage (from bholley:damage_handled); r=emilio
Reviewed in https://bugzilla.mozilla.org/show_bug.cgi?id=1340022

Source-Repo: https://github.com/servo/servo
Source-Revision: eb916f290334f9f56c4c8680e25224a16e4c7d59
2017-02-17 10:20:44 -08:00
Emilio Cobos Álvarez
151fd070df servo: Merge #15518 - style: Unbox a bunch of color properties (from emilio:color); r=SimonSapin
This builds on https://github.com/servo/rust-cssparser/pull/118.

Source-Repo: https://github.com/servo/servo
Source-Revision: 357bf3b85a1b548ba012f95a97853b34035c89ab
2017-02-14 11:43:16 -08:00
Bobby Holley
685e0ab700 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
2017-02-10 10:34:57 -08:00
Bobby Holley
3fcc873d0e 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
2017-02-08 19:33:27 -08:00
Anthony Ramine
f107d8a617 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
2017-02-07 20:36:59 -08:00
Manish Goregaokar
57b94abb46 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
2017-02-03 17:36:04 -08:00
Bobby Holley
0a5c3d764f 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
2017-02-02 14:32:54 -08:00
Hiroyuki Ikezoe
87e18eac97 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
Ravi Shankar
7100a55d28 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
45cbb647ac 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