Commit graph

22334 commits

Author SHA1 Message Date
Bobby Holley
c5f01fe3b8 Introduce and use Scoped TLS.
It turns out that it's problematic to embed ThreadLocalStyleContext within
LayoutContext, because parameterizing the former on TElement (which we do
in the next patch) infects all the traversal stuff with the trait parameters,
which we don't really want.

In general, it probably makes sense to use separate scoped TLS types for
the separate DOM and Flow tree passes, so we can add a different ScopedTLS
type for the Flow pass if we ever need it.

We also reorder the |scope| and |shared| parameters in parallel.rs, because
it aligns more with the order in style/parallel.rs. I did this when I was
adding a TLS parameter to all these functions, which I realized we don't need
for now.
2016-12-21 11:10:39 -08:00
Bobby Holley
8f7f62f810 Allow duplicate versions of rayon until https://github.com/kaksmet/jpeg-decoder/pull/60 lands. 2016-12-21 11:10:38 -08:00
Bobby Holley
5c66815a21 Upgrade to rayon 0.6.
jpeg-decoder still needs updating. Until then we'll just have two copies.
2016-12-21 10:57:37 -08:00
bors-servo
fb457723e8 Auto merge of #14658 - servo:bluetooth-net, r=jdm
Separate the async bluetooth handling from networking code.

They're not at all related, besides both being asynchronous. This change adds
a little extra code in response_async(), but makes this code more readable
and reduces the unnecessary indirection.

This change also makes the build system slightly more parallel, by dropping
the dependency on bluetooth_traits from net_traits.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14658)
<!-- Reviewable:end -->
2016-12-21 06:47:33 -08:00
bors-servo
b67bfb39ae Auto merge of #14657 - dati91:remove_html_tests, r=jdm
Remove unused html bluetooth tests

<!-- Please describe your changes on the following line: -->
Remove unused html bluetooth tests, because we use wpt based bluetooth tests now.

---
<!-- 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 no functionality changed.

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14657)
<!-- Reviewable:end -->
2016-12-21 05:55:19 -08:00
Ms2ger
7af7a10e7e Separate the async bluetooth handling from networking code.
They're not at all related, besides both being asynchronous. This change adds
a little extra code in response_async(), but makes this code more readable
and reduces the unnecessary indirection.

This change also makes the build system slightly more parallel, by dropping
the dependency on bluetooth_traits from net_traits.
2016-12-21 14:52:39 +01:00
Attila Dusnoki
f1c95dc614 Remove unused html bluetooth tests 2016-12-21 14:21:17 +01:00
bors-servo
50c9311c3a Auto merge of #14652 - servo:always_be_updating, r=metajack
Update to quickersort 2.2

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14652)
<!-- Reviewable:end -->
2016-12-21 04:13:06 -08:00
bors-servo
c2e4e4295e Auto merge of #14654 - upsuper:bug1311870, r=heycam
Change property id of moz-prefixed properties to match their name

<!-- Please describe your changes on the following line: -->
This is the servo part of [bug 1311870](https://bugzilla.mozilla.org/show_bug.cgi?id=1311870) which has been reviewed by @heycam.

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
- [ ] 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14654)
<!-- Reviewable:end -->
2016-12-20 23:37:12 -08:00
Xidorn Quan
6a05615e67 Remove special case for nsCSSPropertyID 2016-12-21 18:15:18 +11:00
Xidorn Quan
2760e2bae6 Unprefix column-rule properties in servo side 2016-12-21 18:13:44 +11:00
bors-servo
ae2b74e1c9 Auto merge of #14653 - upsuper:bug1321176, r=Manishearth
stylo: Fix assertion for unresolvable url

<!-- Please describe your changes on the following line: -->
This is the Servo part of [bug 1321176](https://bugzilla.mozilla.org/show_bug.cgi?id=1321176), which has been reviewed by @emilio, @Manishearth, and @heycam.

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14653)
<!-- Reviewable:end -->
2016-12-20 15:41:13 -08:00
Xidorn Quan
09ce1320e9 stylo: handle unresolved url value gracefully 2016-12-21 10:14:44 +11:00
Xidorn Quan
fed488cd01 Change SpecifiedUrl::for_cascade to take ServoUrl 2016-12-21 10:14:04 +11:00
Michael Howell
e754387b6e Update to quickersort 2.2 2016-12-20 22:27:06 +00:00
bors-servo
bcf154d8e6 Auto merge of #14630 - bd339:iss14064, r=KiChjang
Use MediaQueryListEvent for media query list change events

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

- Implements MediaQueryListEvent interface
- Makes MediaQueryList change events conform to the [spec](https://drafts.csswg.org/cssom-view/#evaluate-media-queries-and-report-changes)
- Updates matchMedia.html test to verify that the new event type is used

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

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14630)
<!-- Reviewable:end -->
2016-12-20 13:37:42 -08:00
bd339
eed68e1c7b Modify tests
Assert that new event type is used.
2016-12-20 22:13:02 +01:00
bd339
567284189f Spec conformance
Use MediaQueryListEvent instead of Event, in MediaQueryList.
2016-12-20 22:13:01 +01:00
bd339
57a70893eb Implement MediaQueryListEvent interface 2016-12-20 22:12:51 +01:00
bors-servo
0aa1fc5efe Auto merge of #14650 - glennw:update-wr-shader-casts, r=KiChjang
Update WR (shader cast errors on android).

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14650)
<!-- Reviewable:end -->
2016-12-20 11:58:57 -08:00
Glenn Watson
09c94cc67b Update WR (shader cast errors on android). 2016-12-21 05:52:44 +10:00
bors-servo
fd5733fc1e Auto merge of #14645 - upsuper:gecko-builtin-counter-styles, r=heycam
Move {lower,upper}-alpha to extra_servo_values

These two counter styles are supported via @counter-style rules in UA style sheet in Gecko.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14645)
<!-- Reviewable:end -->
2016-12-19 23:59:00 -08:00
Xidorn Quan
45eea00171 Move {lower,upper}-alpha to extra_servo_values
These two counter styles are supported via @counter-style rules in UA
style sheet in Gecko.
2016-12-20 17:18:45 +11:00
bors-servo
e13f001793 Auto merge of #14644 - servo:ever-so-slightly-less-unstable, r=heycam
Ever so slightly less unstable

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14644)
<!-- Reviewable:end -->
2016-12-19 22:09:02 -08:00
Simon Sapin
53f5023685 Fix/silence some warnings 2016-12-20 07:07:06 +01:00
Simon Sapin
01442ba1ae Remove usage of std::intrinsics::discriminant_value. 2016-12-20 07:07:05 +01:00
Simon Sapin
17a183808e Remove usage of unstable rustc_unicode crate. 2016-12-20 07:07:04 +01:00
bors-servo
56f236724c Auto merge of #14631 - ConnorGBrewster:datetime_fix, r=Ms2ger
Make datetime just reflect

<!-- Please describe your changes on the following line: -->
This just uses `make_getter!` for `datetime` rather than checking if `datetime` has data and falling back to the child data if `datetime` has no data.

I reverted 2 of the test changes and added back an old test that makes sure that child content is not returned when `datetime` is empty.

---
<!-- 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 #14611 (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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14631)
<!-- Reviewable:end -->
2016-12-19 12:33:07 -08:00
bors-servo
d05cae5072 Auto merge of #14304 - KiChjang:css-style-rule-style, r=Manishearth
Implement CSSStyleRule.style

<!-- 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 #14209 (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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14304)
<!-- Reviewable:end -->
2016-12-19 11:29:02 -08:00
Connor Brewster
fa912b01ea Make datetime just reflect 2016-12-19 09:04:13 -07:00
bors-servo
d918c14247 Auto merge of #14629 - larsbergstrom:revert_rustup, r=nox
Revert "Update Rust to 1.15.0-nightly (8f02c429a 2016-12-15)."

This reverts commit 5618e79768.

<!-- Please describe your changes on the following line: -->
According to @nox, this breaks MacOS. Should be fine tomorrow:
rust-lang/rust#38430

r? @nox @Ms2ger (or whomever)

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14629)
<!-- Reviewable:end -->
2016-12-19 06:33:09 -08:00
Lars Bergstrom
cba3881a12 Revert "Update Rust to 1.15.0-nightly (8f02c429a 2016-12-15)."
This reverts commit 5618e79768.
2016-12-19 08:29:06 -06:00
bors-servo
077a54de19 Auto merge of #14481 - servo:rustup, r=Ms2ger
Update Rust to 1.15.0-nightly (8f02c429a 2016-12-15).

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14481)
<!-- Reviewable:end -->
2016-12-19 03:58:56 -08:00
Ms2ger
5618e79768 Update Rust to 1.15.0-nightly (8f02c429a 2016-12-15). 2016-12-19 12:58:11 +01:00
bors-servo
cb6a870077 Auto merge of #14485 - servo:rule-tree-bench, r=heycam
style: Add a simple rule-tree benchmarks.

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

r? @heycam

Numbers on my machine, for the record:

```
test rule_tree::bench::bench_expensive_insersion          ... bench:   7,211,081 ns/iter (+/- 1,933,866)
test rule_tree::bench::bench_expensive_insersion_parallel ... bench:  78,728,097 ns/iter (+/- 11,738,010)
test rule_tree::bench::bench_insertion_basic              ... bench:     665,333 ns/iter (+/- 68,089)
test rule_tree::bench::bench_insertion_basic_parallel     ... bench:   1,587,203 ns/iter (+/- 372,124)
```

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14485)
<!-- Reviewable:end -->
2016-12-19 00:47:34 -08:00
Emilio Cobos Álvarez
fc6bed28ff
style: Use a HashSet in free-list check. 2016-12-19 09:47:00 +01:00
Emilio Cobos Álvarez
e67ea42c3f
style: Add simple rule-tree benchmarks. Fix rule node drop race. 2016-12-19 09:46:59 +01:00
bors-servo
8412008525 Auto merge of #14625 - heycam:sheets-changed, r=upsuper
stylo: Add FFI function to make the Stylist realize we have modified style sheets.

Reviewed in https://bugzilla.mozilla.org/show_bug.cgi?id=1324341 by @upsuper.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14625)
<!-- Reviewable:end -->
2016-12-18 21:49:28 -08:00
Cameron McCormack
5d75143e8f stylo: Add FFI function to make the Stylist realize we have modified style sheets. 2016-12-19 13:42:23 +08:00
Keith Yeung
aa99f18806 Add WPT test for CSSStyleRule.style property 2016-12-18 15:23:06 -08:00
Keith Yeung
4738ce1af5 Implement CSSStyleRule.style 2016-12-17 23:03:40 -08:00
bors-servo
11dffa8958 Auto merge of #14608 - upsuper:bug1323147, r=heycam
Use string and nsCSSProperty for stylo CSSOM FFI

<!-- Please describe your changes on the following line: -->
This is the Servo side change of [bug 1323147](https://bugzilla.mozilla.org/show_bug.cgi?id=1323147) which has been reviewed by @heycam and @SimonSapin on Bugzilla.

r? @heycam

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14608)
<!-- Reviewable:end -->
2016-12-17 18:22:10 -08:00
bors-servo
f6163c77b9 Auto merge of #14622 - emilio:last-restyle, r=bholley
stylo: Track the last restyle generation properly.

I couldn't reproduce locally, but I believe this fixes:

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

r? @heycam

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14622)
<!-- Reviewable:end -->
2016-12-17 14:40:33 -08:00
bors-servo
164426a7f9 Auto merge of #14430 - julienw:access-quirks-mode-from-layout, r=emilio
Expose Quirks Mode information in the layout data and code

<!-- Please describe your changes on the following line: -->
This patch exposes the Quirks (NoQuirks/LimitedQuirks/Quirks) state to the layout subsystem.

---
<!-- 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).
Prelimary work for issue #11704.

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____
(Waiting for guidance of where/which tests I could do here)

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14430)
<!-- Reviewable:end -->
2016-12-17 13:25:06 -08:00
Julien Wajsberg
d024787188 Expose Quirks Mode information in the style shared context r=emilio 2016-12-17 11:15:32 -08:00
Emilio Cobos Álvarez
3db6514252
stylo: Track the last restyle generation properly.
I couldn't reproduce locally, but I believe this fixes:

https://bugzilla.mozilla.org/show_bug.cgi?id=1323890
2016-12-17 10:48:45 +01:00
bors-servo
9d2b98e6f8 Auto merge of #14598 - DominoTree:master, r=canaltinova
Fix linear gradient's specified form #13892

<!-- Please describe your changes on the following line: -->
WIP for #13892

---
<!-- 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 #13892  (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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14598)
<!-- Reviewable:end -->
2016-12-16 15:11:29 -08:00
Nick Price
5d56946bc2 Maintain Corner type, add None type to AngleOrCorner 2016-12-16 17:49:15 -05:00
bors-servo
71b68ea0de Auto merge of #14000 - Wafflespeanut:grid, r=Manishearth
Stylo: Basic support for grid-{row,column}-{start,end}

<!-- 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-geckolib` does not report any errors
- [x] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [ ] 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. -->

<!-- Reviewable:start -->

---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14000)
<!-- Reviewable:end -->
2016-12-16 14:23:40 -08:00
bors-servo
6efea399ed Auto merge of #14593 - szeged:getgattchildren, r=jdm
Implement GetGATTChildren

<!-- Please describe your changes on the following line: -->
Implement the [GetGATTChildren](https://webbluetoothcg.github.io/web-bluetooth/#getgattchildren) function for webbluetooth.

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14593)
<!-- Reviewable:end -->
2016-12-16 12:30:41 -08:00