Commit graph

30427 commits

Author SHA1 Message Date
CYBAI
dcdc384122 Implement normal for FontSettings 2017-11-20 21:38:50 +08:00
bors-servo
e4cfff8364 Auto merge of #19296 - emilio:bye-unstyled-only, r=heycam
style: Get rid of unstyled children only traversals.

They're useless now, provided we remove the hack to not traverse XBL-bound
elements on initial styling.

Bug: 1418456
Reviewed-by: heycam
MozReview-Commit-ID: AvBVdyF1wb6

<!-- 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/19296)
<!-- Reviewable:end -->
2017-11-20 04:18:30 -06:00
bors-servo
af6c2f93b9 Auto merge of #19294 - emilio:debug-detached-pseudo, r=heycam
style: Collect more debugging info when collecting rules of detached pseudos.

Called Option::unwrap() on a None value is not a helpful crash message.

This will hopefully help figure out what is causing bug 1418856.

<!-- 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/19294)
<!-- Reviewable:end -->
2017-11-20 02:29:59 -06:00
Emilio Cobos Álvarez
b1fecea0aa
style: Get rid of unstyled children only traversals.
They're useless now, provided we remove the hack to not traverse XBL-bound
elements on initial styling.

Bug: 1418456
Reviewed-by: heycam
MozReview-Commit-ID: AvBVdyF1wb6
2017-11-20 08:24:08 +01:00
bors-servo
9edb453447 Auto merge of #19293 - CYBAI:font-feature-settings-out-of-mako, r=emilio
style: Move font-feature-settings outside of mako

This is a sub-PR of #19015
r? emilio

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #19290
- [x] These changes do not require tests

<!-- 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/19293)
<!-- Reviewable:end -->
2017-11-20 00:48:16 -06:00
Emilio Cobos Álvarez
143341a061
style: Collect more debugging info when collecting rules of detached pseudos.
Called Option::unwrap() on a None value is not a helpful crash message.

This will hopefully help figure out what is causing bug 1418856.
2017-11-20 07:43:54 +01:00
bors-servo
63bd783c55 Auto merge of #19282 - CYBAI:use-macro-for-font-variant, r=canaltinova
Use macro to impl From for font variant

As I discussed in #19277, I'd like to change the implementation for `From` of font variant to use macro, `impl_gecko_keyword_conversions`.
r? @emilio

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes update `From` impl for font variant to use macro `impl_gecko_keyword_conversions`.
- [x] These changes do not require tests

<!-- 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/19282)
<!-- Reviewable:end -->
2017-11-19 21:43:25 -06:00
CYBAI
70033edccd style: Move font-feature-settings outside of mako 2017-11-20 11:26:09 +08:00
bors-servo
cea3fd6229 Auto merge of #19292 - heycam:moz-cc-comment, r=KiChjang
style: Add comment about -moz-control-character-visibility initial value.

<!-- 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/19292)
<!-- Reviewable:end -->
2017-11-19 20:18:57 -06:00
Cameron McCormack
780f63caf3 style: Add comment about -moz-control-character-visibility initial value. 2017-11-20 10:17:35 +08:00
bors-servo
db5fb74a4d Auto merge of #19288 - m-novikov:impl-eventtarget-constructor, r=KiChjang
Implement EventTarget constructor

Resolves #19283
Do "Wrap" functions only created for elements that aren't marked Abstract in .webidl file?
How can I see code that was generated from webidls?

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they are covered by webplatform 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. -->

<!-- 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/19288)
<!-- Reviewable:end -->
2017-11-19 18:18:48 -06:00
bors-servo
6361aed46d Auto merge of #19279 - canaltinova:force-broken-image, r=emilio
style: Move -moz-force-broken-image-icon out of mako

<!-- 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 part of #19015.

<!-- Either: -->
- [X] These changes do not require tests because these are just refactoring.

<!-- 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/19279)
<!-- Reviewable:end -->
2017-11-19 14:07:35 -06:00
Nazım Can Altınova
b2df766da8 style: Move -moz-force-broken-image-icon out of mako 2017-11-19 22:52:18 +03:00
Maxim Novikov
83c7f80baa Implement EventTarget constructor
Resolves #19283
2017-11-19 16:14:57 +01:00
CYBAI
3e9d49303f Use macro to impl From for font variant 2017-11-19 11:12:09 +08:00
bors-servo
60dca9cc44 Auto merge of #19182 - cgati:parse-xml, r=KiChjang
Treat application/xml like text/xml in ParserContext::process_response

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

* components/script/dom/servoparser/mod.rs updated to handle application/xml as text/xml, along with hoisting application/xhtml+xml from the unknown mime types match arm.
* tests updated via mach

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

<!-- Either: -->
- [X] These changes modify results in test files via the automated: `./mach test-wpt tests/wpt/web-platform-tests/dom/nodes --log-raw /tmp/servo && ./mach update-wpt /tmp/servo`
- [ ] 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/19182)
<!-- Reviewable:end -->
2017-11-18 15:09:15 -06:00
Christian Gati
53e518ea01
Treat application/xml like text/xml in ParserContext::process_response
Update wpt
2017-11-18 15:44:59 -05:00
bors-servo
011e52f6ed Auto merge of #19277 - CYBAI:font-variant-numeric-out-of-mako, r=emilio
style: Move font-variant-numeric outside of mako

This is a sub-PR of #19015
r? @emilio

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #19276
- [x] These changes do not require tests

<!-- 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/19277)
<!-- Reviewable:end -->
2017-11-18 13:22:10 -06:00
CYBAI
a38de8b540 style: Move font-variant-numeric outside of mako 2017-11-18 17:57:22 +08:00
bors-servo
b2b51d333e Auto merge of #19252 - servo:jdm-patch-2, r=SimonSapin
Add pulseaudio requirement to readme.

Update known requirements for building.

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

<!-- 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/19252)
<!-- Reviewable:end -->
2017-11-18 02:55:28 -06:00
bors-servo
a757fb14cf Auto merge of #19267 - emilio:ua-props, r=upsuper
style: Replace "internal" properties with "enabled_in"

This allows enabling properties in ua sheets and chrome differently.

The setup is:

  * enabled_in needs to be one of the four values:
    ["", "ua", "chrome", "content"]

  * "chrome" implies "ua", and implies that they're explicitly enabled.

  * "" implies the property will never be parsed.

  * "content" implies the property is accessible unconditionally, modulo a pref.

Experimental still keeps trumping over those when the pref is enabled.

This PR replaces uses of internal="" by enabled_in="ua" or enabled_in="".

This may seem that it changes behavior, but since the properties where I added
enabled_in="" already unconditionally error from parse it's not.

Next step is annotating chrome-only properties.

<!-- 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/19267)
<!-- Reviewable:end -->
2017-11-18 01:48:12 -06:00
bors-servo
7b886b4479 Auto merge of #19263 - heycam:attr-ws, r=SimonSapin
selectors: Allow white space in the brackets of an attribute selector.

<!-- 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/19263)
<!-- Reviewable:end -->
2017-11-18 00:47:57 -06:00
Cameron McCormack
523ffd587d selectors: Allow white space in the brackets of an attribute selector. 2017-11-18 14:47:33 +08:00
Emilio Cobos Álvarez
01e41d0439
style: Replace "internal" properties with "enabled_in"
This allows enabling properties in ua sheets and chrome differently.

The setup is:

  * enabled_in needs to be one of the four values:
    ["", "ua", "chrome", "content"]

  * "chrome" implies "ua", and implies that they're explicitly enabled.

  * "" implies the property will never be parsed.

  * "content" implies the property is accessible unconditionally, modulo a pref.

Experimental still keeps trumping over those when the pref is enabled.

This PR replaces uses of internal="" by enabled_in="ua" or enabled_in="".

This may seem that it changes behavior, but since the properties where I added
enabled_in="" already unconditionally error from parse it's not.

Next step is annotating chrome-only properties.
2017-11-18 05:15:19 +01:00
bors-servo
07fd6155aa Auto merge of #19254 - olmanz:issue19179, r=jdm
Move custom elements stuff to their own dom::bindings submodule

<!-- Please describe your changes on the following line: -->
r? jdm
Moved the following functions from components/script/dom/bindings/interface.rs to a new file components/script/dom/bindings/htmlconstructor.rs:

- html_constructor()
- get_constructor_object_from_local_name()
- pop_current_element_queue()
- push_new_element_queue()

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

<!-- Either: -->
- [X] These changes do not require 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. -->

<!-- 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/19254)
<!-- Reviewable:end -->
2017-11-17 16:06:38 -06:00
bors-servo
b4c274d190 Auto merge of #19253 - CYBAI:font-variant-ligatures-out-of-mako, r=emilio
style: Move font-variant-ligatures outside of mako

This is a sub-PR of #19015
r? @emilio

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #19246
- [x] These changes do not require tests

<!-- 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/19253)
<!-- Reviewable:end -->
2017-11-17 15:03:14 -06:00
bors-servo
53fb5cd132 Auto merge of #19269 - jdm:wptfix, r=emilio
Fix error reporting codepath for WPT.

I have a PR upstream too (https://github.com/w3c/web-platform-tests/pull/8300), but this will avoid the issue locally until the next upstream sync.

<!-- 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/19269)
<!-- Reviewable:end -->
2017-11-17 13:55:56 -06:00
Josh Matthews
9538356d65 Fix error reporting codepath for WPT. 2017-11-17 13:50:56 -05:00
bors-servo
bd6caef234 Auto merge of #19264 - emilio:unused-arg, r=mbrubeck
style: Remove unused argument in element_needs_traversal.

<!-- 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/19264)
<!-- Reviewable:end -->
2017-11-17 10:03:05 -06:00
Emilio Cobos Álvarez
7ea98a577b
style: Remove unused argument in element_needs_traversal. 2017-11-17 16:56:26 +01:00
olmanz
b08d455b75 Fixed tidy-test errors 2017-11-17 11:20:10 +01:00
bors-servo
7b0006ece6 Auto merge of #19262 - heycam:visited-links-enable, r=TYLin
style: Look up Gecko visited style pref directly

Servo side part of https://bugzilla.mozilla.org/show_bug.cgi?id=1418217 reviewed there by TYLin.

<!-- 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/19262)
<!-- Reviewable:end -->
2017-11-17 03:12:48 -06:00
Cameron McCormack
e286ad7dca style: Regenerate Gecko bindings. 2017-11-17 17:12:10 +08:00
Cameron McCormack
509007febb style: Read visited links pref directly. 2017-11-17 15:42:39 +08:00
CYBAI
3ff497aaff style: Move font-variant-ligatures outside of mako 2017-11-17 10:12:46 +08:00
bors-servo
e61a4d04e9 Auto merge of #19260 - glennw:update-wr-bindings-opaque, r=emilio
Update WR (opaque image optimizations, property binding optimizations)

<!-- 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/19260)
<!-- Reviewable:end -->
2017-11-16 18:38:48 -06:00
Glenn Watson
cdc163533c Update WR (opaque image optimizations, property binding optimizations) 2017-11-17 10:38:04 +10:00
bors-servo
b5a205d92e Auto merge of #19257 - asajeffrey:test-perf-include-date-in-csv, r=jdm
Include a YYYYMMDD date field in the raw test-perf CSV to make Google Data Studio happy

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

AFAICT Google Data Studio needs a YYYMMDD date string in the raw data to be able to provide time-indexed graphs. `TODATE` is not converting unix timestamps to YYYYMMDD.

https://www.en.advertisercommunity.com/t5/Data-Studio/Can-Data-Studio-Date-Dimension-use-epoch-in-seconds-from/td-p/839649

This PR is a workaround, and includes a date field in the raw CSV.

---
<!-- 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 this is test infrastructure

<!-- 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/19257)
<!-- Reviewable:end -->
2017-11-16 16:46:26 -06:00
Alan Jeffrey
ed36323e0b Include a YYYYMMDD date field in the raw test-perf CSV to make Google Data Studio happy. 2017-11-16 16:36:10 -06:00
bors-servo
fa61bfb83a Auto merge of #19236 - glennw:update-wr-pic, r=jdm
Update WR (hit test fix, render target pool optimizations, picture tree)

<!-- 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/19236)
<!-- Reviewable:end -->
2017-11-16 15:11:10 -06:00
Glenn Watson
b5df1c1422 Update WR (hit test fix, render target pool optimizations, picture tree) 2017-11-17 06:43:42 +10:00
bors-servo
e07245caba Auto merge of #19235 - emilio:chrome-props, r=xidorn
style: Add infra to differentiate chrome and UA sheets.

This keeps the behavior of stuff being accessible from chrome stylesheets being
the same of content sheets except on the UA origin. That will be changed in a
followup.

<!-- 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/19235)
<!-- Reviewable:end -->
2017-11-16 14:01:39 -06:00
Emilio Cobos Álvarez
bbfb7a47eb
style: Add machinery to handle properties enabled in chrome. 2017-11-16 21:00:44 +01:00
olmanz
83adc7b769 Moved pop_current_element_queue() and push_new_element_queue() to htmlconstructor.rs 2017-11-16 19:14:12 +01:00
bors-servo
50f11e3584 Auto merge of #18984 - dsandeephegde:master, r=jdm
Initial steps of Mutation testing

<!-- Please describe your changes on the following line: -->
- Added one strategy of mutation which is replacing occurrences && to ||.
- Added test mapping framework for running mutation tests corresponding to a mutant.
- Added one test_mapping.json to map source file in a folder to WPT test.
- Added README mentioning about Mutation testing.
- Added CI script to invoke mutation test.
---
<!-- 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 #18529 (github issue number if applicable).
- [x] These changes do not require tests because it is a python script to run mutation test and does not change any behavior.

<!-- 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/18984)
<!-- Reviewable:end -->
2017-11-16 11:51:01 -06:00
Josh Matthews
ebe4f90aae
Add pulseaudio requirement to readme. 2017-11-16 12:14:58 -05:00
Sandeep Hegde
b8c6d144f3 Reveting accidental mutant commit 2017-11-16 10:55:13 -05:00
bors-servo
5c7e79e91c Auto merge of #19249 - tigercosmos:info, r=jdm
fix annotation URL

The annotation URL for `scroll_node` is wrong. (The origin URL is where it is called, not its implement.)
The implement is in https://drafts.csswg.org/cssom-view/#element-scrolling-members

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

<!-- 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/19249)
<!-- Reviewable:end -->
2017-11-16 07:49:20 -06:00
Emilio Cobos Álvarez
128bb02e1d
style: Remove now unused gecko_pref_ident. 2017-11-16 14:31:37 +01:00
Emilio Cobos Álvarez
2bd91d21d7
style: Replace Gecko's hacky EXPERIMENTAL set with the same mechanism as servo.
We can remove the PREF_foo bits in a bit.
2017-11-16 14:31:36 +01:00