Commit graph

1932 commits

Author SHA1 Message Date
Hiroyuki Ikezoe
ff0819b2d4 Add impl From<nsTimingFunction> for TransitionTimingFunction and impl From<TransitionTimingFunction> for nsTimingFunction. r=heycam 2017-01-10 12:24:59 +09:00
Hiroyuki Ikezoe
98ed440597 Implement nsStyleAutoArray.ensure_len(). r=heycam 2017-01-10 12:24:59 +09:00
Hiroyuki Ikezoe
dc3b4803d1 Implement Index for nsStyleAutoArray. r=heycam 2017-01-10 12:24:59 +09:00
Hiroyuki Ikezoe
00b3dda3e5 Add gecko_enum_prefix for animation-direction and animation-fill-mode. r=heycam 2017-01-10 12:24:59 +09:00
Hiroyuki Ikezoe
ff1db63922 single_keywords supports custom_consts map for enum. r=heycam
We need it to convert PlaybackDirection::Alternate_reverse in Gecko to
alternate-reverse in Servo.
2017-01-10 12:24:59 +09:00
bors-servo
2a2a89b7e4 Auto merge of #14907 - bholley:eliminate_consume, r=emilio
Give up on hoisting ElementData into the frame and eliminate the concept of consuming styles

Servo PR for the work in https://bugzilla.mozilla.org/show_bug.cgi?id=1325734

<!-- 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/14907)
<!-- Reviewable:end -->
2017-01-09 17:26:50 -08:00
Bobby Holley
3fcfc9c5fc Bug 1325734 - Simplify ElementData and eliminate the concept of consuming styles. r=emilio 2017-01-09 11:51:37 -08:00
Bobby Holley
4558efbca5 Bug 1325734 - Explicitly track whether we're performing the initial style. r=emilio 2017-01-09 11:51:37 -08:00
Bobby Holley
92b9d70c3a Bug 1325734 - Pass the thread-local context into should_traverse_children. r=emilio 2017-01-09 11:51:37 -08:00
Bobby Holley
3060865577 Bug 1325734 - Parameterize the style traversal on TElement instead of TNode. r=emilio
This works around the issue described in https://github.com/rust-lang/rust/issues/38917
2017-01-09 11:51:36 -08:00
bors-servo
50bba770d6 Auto merge of #14789 - Manishearth:supports, r=SimonSapin
Support @supports

fixes #14786

cc @heycam @upsuper
r? @SimonSapin

<!-- 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/14789)
<!-- Reviewable:end -->
2017-01-09 10:54:38 -08:00
Simon Sapin
b5d9210f16 Fix too many parens in @supports serialization. 2017-01-09 19:35:00 +01:00
Cameron McCormack
3e0e2bcd2c Don't inherit all properties for pre-computed pseudos if there are no matching rules. 2017-01-09 17:55:40 +08:00
Cameron McCormack
252766b76b stylo: Regenerate bindings. 2017-01-09 11:12:21 +08:00
Cameron McCormack
f24e4543fe stylo: Update glue for recent changes. 2017-01-09 11:11:55 +08:00
Nazım Can Altınova
f1693013b2 Re-export SpecifiedValue instead of computed_value::T on other longhands 2017-01-08 17:19:12 +03:00
Nazım Can Altınova
227737c685 Convert animation-iteration-count longhand into vector_longhand 2017-01-08 17:19:09 +03:00
Nazım Can Altınova
3934f505d6 Convert animation-name longhand into vector_longhand 2017-01-08 17:19:07 +03:00
Nazım Can Altınova
164e8f5071 Convert transition-property longhand into vector_lonhhand 2017-01-08 17:19:04 +03:00
Nazım Can Altınova
8e21d65303 Convert transition-timing-function longhand into vector_longhand 2017-01-08 17:19:01 +03:00
Nazım Can Altınova
77368ac48c Fix SingleSpecifiedValue in vector_longhand 2017-01-08 16:29:50 +03:00
Nazım Can Altınova
55ae25c3ae Convert transition-duration longhand into vector_longhand 2017-01-08 16:29:48 +03:00
Manish Goregaokar
62bea28031 Add CSS.supports() 2017-01-07 23:17:55 -08:00
Manish Goregaokar
b4a83b6cec CSSOM bits for @supports: CSSConditionRule and CSSSupportsRule, with conditionText attribute 2017-01-07 23:17:52 -08:00
Manish Goregaokar
1b0842e228 Support @supports (fixes #14786) 2017-01-07 23:17:50 -08:00
bors-servo
5d796a5453 Auto merge of #14905 - heycam:content, r=Manishearth
stylo: support content property

This is the Servo-side of https://bugzilla.mozilla.org/show_bug.cgi?id=1315155, which @Manishearth has already reviewed.

<!-- 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/14905)
<!-- Reviewable:end -->
2017-01-07 17:56:17 -08:00
bors-servo
496447a363 Auto merge of #14899 - canaltinova:transition-timing, r=Manishearth
Fix serialization of timing-function

<!-- Please describe your changes on the following line: -->
`transition-timing-function` and `animation-timing-function` properties corrected to reflect [the spec](https://drafts.csswg.org/css-transitions/#serializing-a-timing-function). It was converting function keywords to `cubic-bezier` or `steps` functions directly. But we needed to store it to use in the serialization step.

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

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

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

<!-- 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/14899)
<!-- Reviewable:end -->
2017-01-07 16:50:27 -08:00
bors-servo
2225ccd464 Auto merge of #14904 - emilio:non-common-attrs, r=bholley
Allow sharing non-common style affecting attribute selectors.

Something I just noticed while re-reading that code is that we prevent sharing among siblings with different non-common attributes, even though we already have the infra to match those selectors:

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

<!-- 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/14904)
<!-- Reviewable:end -->
2017-01-07 15:28:15 -08:00
Nazım Can Altınova
96cf81ad5d Fix try_parse_one macro and parse function of TransitionTimingFunction 2017-01-08 02:21:20 +03:00
Nazım Can Altınova
e2f94d137a Fix serialization of transition-timing-function 2017-01-08 02:21:19 +03:00
bors-servo
d14158a592 Auto merge of #14893 - Manishearth:alias, r=emilio
Support property aliases

Aliases now get forwarded to their "original" property name at parse time. CSSOM continues to provide access through alias getters.

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

r? @heycam or @bholley

<!-- 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/14893)
<!-- Reviewable:end -->
2017-01-07 13:56:19 -08:00
Manish Goregaokar
33966a84fb Support property aliases 2017-01-07 13:17:00 -08:00
bors-servo
b6c137b36f Auto merge of #14896 - g1smo:tidy-assignments, r=jdm
Tidy assignments

<!-- Please describe your changes on the following line: -->
I've added a new tidy rule (no = in the beginning of line) + tests for it. Also cleaned up a few rust source files to accord with the new rule.

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

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

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

<!-- 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/14896)
<!-- Reviewable:end -->
2017-01-07 09:40:46 -08:00
bors-servo
df895cb80c Auto merge of #14889 - servo:rustup, r=jdm
Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06)

<!-- 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/14889)
<!-- Reviewable:end -->
2017-01-07 08:18:28 -08:00
Emilio Cobos Álvarez
c0cf847043
style: Isolate the soon-to-be style-backend-specific from the media_query module. 2017-01-07 12:34:43 +01:00
Emilio Cobos Álvarez
7788f43c7e
style: Remove unneeded allow's.
They're useless right now.
2017-01-07 12:34:30 +01:00
Cameron McCormack
95e5e79958 stylo: Stop setting the now-removed nsStyleContentData::mImageTracked. 2017-01-07 09:47:46 +08:00
Cameron McCormack
8f1f94d42b stylo: Regenerate bindings. 2017-01-07 09:46:34 +08:00
Emilio Cobos Álvarez
cf65f09794
style: Allow caching elements with non-common style affecting attributes.
We have already that check in place, see
`match_same_non_common_style_affecting_attribute_selectors`.
2017-01-07 01:53:16 +01:00
Emilio Cobos Álvarez
ac8547416d
style: Move relations_are_shareable to matching.rs
It's only used there.
2017-01-07 01:53:15 +01:00
Jure Podgoršek
bb91ca616c Tidy up rust code with regard to new rule (no = in beginning of line) 2017-01-06 20:57:16 +01:00
Simon Sapin
67aea3bba4 Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
Xidorn Quan
e7e3889422 Add :-moz-browser-frame pseudo-class 2017-01-06 21:26:12 +11:00
Xidorn Quan
0399f359c1 Add NonTSPseudoClass::is_internal function 2017-01-06 21:26:06 +11:00
Xidorn Quan
fa27ac0544 Add function to convert NonTSPseudoClass to CSSPseudoClassType 2017-01-06 21:25:45 +11:00
Xidorn Quan
0c913d5918 Make Gecko_ElementState return u16 2017-01-06 10:05:10 +11:00
Xidorn Quan
381651fd10 Change order of element state bits 2017-01-06 10:04:49 +11:00
bors-servo
36ddf763f6 Auto merge of #14351 - asajeffrey:servo-rand-share-fds, r=emilio
An in-memory RNG that shares its file descriptor.

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

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

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

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

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

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

<!-- 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/14351)
<!-- Reviewable:end -->
2017-01-05 06:32:23 -08:00
Alan Jeffrey
7ace30f9bd An in-memory RNG that shares its file descriptor. 2017-01-05 13:51:53 +00:00
bors-servo
65497b493a Auto merge of #14857 - upsuper:moz-top-layer, r=emilio
Add support for -moz-top-layer

<!-- Please describe your changes on the following line: -->
r? @Manishearth

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

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

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

<!-- 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/14857)
<!-- Reviewable:end -->
2017-01-05 04:45:40 -08:00