Commit graph

26125 commits

Author SHA1 Message Date
Ravi Shankar
7d1505a188 Apply track repetitions and merge grid <line-names> in ToComputedValue 2017-05-18 21:56:41 +05:30
Ravi Shankar
81b4e64dfc Add parsing/serialization for repeat() function 2017-05-18 21:56:38 +05:30
Ravi Shankar
d3e394c68a Add RepeatCount enum for handling the first component of repeat() 2017-05-18 21:56:35 +05:30
Ravi Shankar
efe1a5d256 Add functions for checking <fixed-size> and <fixed-breadth> 2017-05-18 21:56:32 +05:30
Ravi Shankar
53c7b0ac15 Add function to parse <line-names> 2017-05-18 21:56:21 +05:30
Fernando Jiménez Moreno
96a23d9b73 stylo: Bug 1355345 - Support font-display descriptor in @font-face rule 2017-05-18 18:16:24 +02:00
Anthony Ramine
a0886213b6 Support font-feature-settings as a @font-face descriptor 2017-05-18 18:16:22 +02:00
Anthony Ramine
7d66e65d94 Move some style macros into their own module, used first 2017-05-18 18:16:21 +02:00
Boris Zbarsky
b9a0737946 Use snapshot class/id flags to optimize out class/id gets. 2017-05-18 11:32:49 -04:00
Boris Zbarsky
8783254d3d Update bindgen for new Gecko snapshot flags. 2017-05-18 11:31:38 -04:00
Boris Zbarsky
42cb7caa12 Update bindgen for Gecko snapshot member reordering. 2017-05-18 11:30:28 -04:00
Simon Sapin
5e60865d19 Use size_of_test! macro in style and stylo tests. 2017-05-18 17:17:29 +02:00
Simon Sapin
c968842653 Don’t visit attribute selectors that never match. 2017-05-18 17:13:20 +02:00
Simon Sapin
c06e574c18 Short-circuit and unindent 2017-05-18 17:13:19 +02:00
Simon Sapin
76166bce58 Add more enum types to avoid unreachable!() for selector case-sensitivity 2017-05-18 17:13:19 +02:00
Simon Sapin
7149a6a29d ol[type=…] and li[type=…] preshints need to be case-sensitive 2017-05-18 17:13:18 +02:00
Simon Sapin
853b688d0b Only non-namespaced attributes can have implicitly case-insensitive values 2017-05-18 17:13:16 +02:00
Simon Sapin
94b4a32c18 Make some attr values case-insensitive in selectors
https://bugzilla.mozilla.org/show_bug.cgi?id=1363531
2017-05-18 17:13:15 +02:00
Simon Sapin
c5e37f3d2c Remove unused selectors::Element::each_class 2017-05-18 17:13:14 +02:00
Simon Sapin
9376abdd2c Shrink selectors::Component, add case-insensitive for other attr selectors
* https://bugzilla.mozilla.org/show_bug.cgi?id=1364148
* https://bugzilla.mozilla.org/show_bug.cgi?id=1364162
2017-05-18 17:13:14 +02:00
Simon Sapin
83c7824fda Simplify rust-selectors API for attribute selectors 2017-05-18 17:13:13 +02:00
Simon Sapin
2ca2c2d2be Fix [foo=bar i] selectors for Stylo 2017-05-18 17:13:12 +02:00
Simon Sapin
0b1e51de53 Rename CaseSensitivity::CaseInsensitive to AsciiCaseInsensitive 2017-05-18 17:13:11 +02:00
bors-servo
9d887a2375 Auto merge of #16930 - bholley:limit_parallelism, r=emilio
Only use the parallel traversal when traversing from the root

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

Let's get this in to see the impact on Talos.

<!-- 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/16930)
<!-- Reviewable:end -->
2017-05-18 09:53:41 -05:00
Simon Sapin
73ecdfcc6e Update to cargo 0.20.0-nightly (2233f51 2017-05-17)
… which includes https://github.com/rust-lang/cargo/pull/4065

Compile time from `mach clean` on 4 cores / 8 threads
with incremental compilation improved by 4%.
2017-05-18 16:18:57 +02:00
Bobby Holley
5a28c87b8e Allow forcing a style threadpool of size 1. 2017-05-18 16:18:12 +02:00
bors-servo
864f5509d8 Auto merge of #16889 - nox:clamp-calc, r=stshine
Refactor how calc() clamping is done on computed values (fixes #15296)

<!-- 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/16889)
<!-- Reviewable:end -->
2017-05-18 08:06:19 -05:00
Bobby Holley
18baf5ec78 Only use the parallel traversal when traversing from the root. 2017-05-18 13:41:06 +02:00
Emilio Cobos Álvarez
7e35f6b4be
stylo: Avoid unconditional FFI calls to get the element state. 2017-05-18 13:40:03 +02:00
Anthony Ramine
a108bd5237 Support hashless color quirk in border-color 2017-05-18 11:05:39 +02:00
Anthony Ramine
d0b9bd9c64 Refactor how calc() clamping is done on computed values (fixes #15296) 2017-05-18 10:14:59 +02:00
Anthony Ramine
f935f2da01 Silence a warning in stylo unit tests 2017-05-18 09:57:24 +02:00
Anthony Ramine
3ea0c26e90 Silence a warning in script::dom::mutationobserver 2017-05-18 09:57:22 +02:00
bors-servo
d1eef9d08a Auto merge of #16904 - paulrouget:notHeadLess, r=metajack
Not headless by default

Without this, initializing Servo without using the command line (when embedded) requires to explicitly set `opts.headless = false`, which is weird as it's the only option that needs to be changed.

<!-- 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/16904)
<!-- Reviewable:end -->
2017-05-18 00:56:30 -05:00
bors-servo
5d1e02760b Auto merge of #16903 - paulrouget:makeCurrentOnNew, r=emilio
make gl context current on browser initialization

As explained in servo/webrender#1233, it's necessary to make the current gl context current when the browser is initialized, otherwise the wrong gl context might be used if another window is created before the initialization.

/cc @glennw

<!-- 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/16903)
<!-- Reviewable:end -->
2017-05-17 22:53:46 -05:00
bors-servo
a5ff57b20f Auto merge of #16891 - kvark:preserve3d, r=glennw,emilio
Using TransformStyle::Preserve3D

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

The changes were reviewed previously as a part of WR update PRs, but then we decided to move them out.
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
- [ ] These changes fix #__ (github issue number if applicable).

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

<!-- 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/16891)
<!-- Reviewable:end -->
2017-05-17 20:38:14 -05:00
bors-servo
10cc59dd2e Auto merge of #16881 - mbrubeck:absolute_root, r=stshine
Fix containing block size for absolute root element

The root element doesn't have a containing block, so use the viewport size instead of `self.base.absolute_cb`.

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

<!-- 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/16881)
<!-- Reviewable:end -->
2017-05-17 19:13:51 -05:00
bors-servo
ac99a48aea Auto merge of #16814 - asajeffrey:script-worklets, r=jdm
Implement Houdini worklets

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

This PR implements the current draft Houdini Worklets specification (https://drafts.css-houdini.org/worklets/).

The implementation is intended to provide a responsive environment for worklet execution, and in particular to ensure that the primary worklet executor does not garbage collect, and does not block loading module code. The implementation does this by providing a thread pool, and performing GC and module loading in a backup thread, not in the primary thread.

---
<!-- 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 #16206
- [x] There are tests for these changes

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

<!-- 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/16814)
<!-- Reviewable:end -->
2017-05-17 16:20:42 -05:00
bors-servo
bafaae75f4 Auto merge of #16911 - emilio:bits, r=bzbarsky
Bug 1365471: Check bool flags before going through FFI in a variety of situations. r=bz

<!-- 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/16911)
<!-- Reviewable:end -->
2017-05-17 14:45:55 -05:00
Paolo Amadini
51b09f9b54 Merge branch 'master' of https://github.com/pamadini/servo 2017-05-17 20:13:35 +01:00
Paolo Amadini
693ec08387 Allow -moz-stack-sizing to work in a single direction only. 2017-05-17 19:46:04 +01:00
bors-servo
a7fecc4127 Auto merge of #16910 - froydnj:bindgen-cross-compilation-take-2, r=emilio
Bindgen cross compilation take 2

Fix all the cross-compilation issues in build_gecko.rs.

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #16879

<!-- 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/16910)
<!-- Reviewable:end -->
2017-05-17 12:48:47 -05:00
bors-servo
c6c960a661 Auto merge of #16909 - emilio:simplify-cascade, r=bholley
style: Refactor the cascade function.

The `cascade_primary_or_pseudo` function was nice when we shared more code, but
right now I think it just makes it harder to understand what's going on.

<!-- 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/16909)
<!-- Reviewable:end -->
2017-05-17 11:19:56 -05:00
Emilio Cobos Álvarez
b420b80073
Bug 1365471: Check bool flags before going through FFI in a variety of situations. r=bz
MozReview-Commit-ID: E6mitc11tYa
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-05-17 18:06:30 +02:00
Nathan Froyd
0371a62172 fix general cross compilation
Use the CARGO_CFG_* environment variables for everything instead of
`cfg!`.

Fixes #16879.
2017-05-17 11:13:10 -04:00
Emilio Cobos Álvarez
e8d1c5316d
style: Refactor the cascade function.
The `cascade_primary_or_pseudo` function was nice when we shared more code, but
right now I think it just makes it harder to understand what's going on.
2017-05-17 16:32:30 +02:00
bors-servo
c2d5b0006c Auto merge of #16907 - emilio:postrebuild, r=heycam
Bug 1364862: Make PostRebuildAllStyleData async. 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/16907)
<!-- Reviewable:end -->
2017-05-17 09:21:53 -05:00
Nathan Froyd
96a03d93b6 fix windows cross-compilation
Similar to the Linux case, we were checking the host's pointer width,
rather than the target's pointer width.
2017-05-17 10:17:40 -04:00
Nathan Froyd
536154475c fix linux cross-compilation, take 2
We were using `cfg!(target_arch)` checks, which are not correct, as
those check the architecture of the compiled build script, not the clang
target.
2017-05-17 10:17:40 -04:00
Alan Jeffrey
af8436c9be Implemented Houdini worklets. 2017-05-17 09:01:05 -05:00