Commit graph

31644 commits

Author SHA1 Message Date
bors-servo
8f24005e17
Auto merge of #19933 - mrobinson:update-wr, r=emilio
Update WebRender

This allows servo to use the ExternalScrollId API from WebRender fixing
some issues related to duplicate scroll root ids.

Fixes #17176.
Fixes #19287.
Fixes #19648.

<!-- 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 #17176, #19287, and #19648.

<!-- 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/19933)
<!-- Reviewable:end -->
2018-02-06 09:12:58 -05:00
Martin Robinson
99eb457fc7 Update WebRender
This allows servo to use the ExternalScrollId API from WebRender fixing
some issues related to duplicate scroll root ids.

Fixes #17176.
Fixes #19287.
Fixes #19648.
2018-02-06 15:10:35 +01:00
bors-servo
9faf0cdce5
Auto merge of #19956 - servo:derive-all-the-things, r=emilio
Generate some PropertyDeclaration methods by hand 🐉🐲

We rely on https://github.com/rust-lang/rfcs/pull/2195 to make some enums share the same discriminants by definition.

This fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1428285.

<!-- 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/19956)
<!-- Reviewable:end -->
2018-02-06 08:12:33 -05:00
Anthony Ramine
1f0a1267bb Implement MallocSizeOf for PropertyDeclaration by hand
We merge arms with identical field types.
2018-02-06 14:11:20 +01:00
Anthony Ramine
456c18f767 Implement PartialEq for PropertyDeclaration by hand 🐉🐲
We first check that the discriminants are equal, then we pattern match only
on `*self` and use `PropertyDeclarationVariantRepr` to look into `other` directly.
2018-02-06 14:11:19 +01:00
Anthony Ramine
8ebf0f057f Merge common arms in PropertyDeclaration::to_css 2018-02-06 14:11:18 +01:00
Anthony Ramine
42ea822edf Make LonghandId just be the discriminants of PropertyDeclaration 🐉🐲
This relies on the fact that `#[repr(u16)]` on enums ensure the discriminant will
be the very first field of the enum value. This has always been the case, but it
has been formally defined only since https://github.com/rust-lang/rfcs/pull/2195.

https://bugzilla.mozilla.org/show_bug.cgi?id=1428285
2018-02-06 14:11:14 +01:00
Anthony Ramine
1ec5164900 Generate PropertyDeclaration just after processing all the Mako files 2018-02-06 13:46:33 +01:00
Anthony Ramine
7f98d8e017 Implement Clone for PropertyDeclaration by hand 🐉🐲
This makes the enum `#[repr(u16)]` and generate code that shares the same
Clone::clone call for all variants sharing the same field type.
2018-02-06 13:45:52 +01:00
Anthony Ramine
5195eb38f2 Make all PropertyDeclaration variants have only one field 2018-02-06 13:45:18 +01:00
bors-servo
984f3ccc41
Auto merge of #19960 - servo-wpt-sync:wpt_update_05-02-2018, r=jdm
Sync WPT with upstream (05-02-2018)

Automated downstream sync of changes from upstream as of 05-02-2018.
[no-wpt-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/19960)
<!-- Reviewable:end -->
2018-02-05 22:36:45 -05:00
WPT Sync Bot
210ff0c02a Update web-platform-tests to revision bb1f35100ad0aedeeb6897dd640b360f80498027 2018-02-05 22:35:36 -05:00
bors-servo
3a3a7cdc22
Auto merge of #19955 - emilio:number-pseudos-chrome, r=jwatt
style: Make input[type=number] pseudo-elements accessible to chrome.

Bug: 1433389
Reviewed-by: jwatt
MozReview-Commit-ID: 2ycajPYd3CV

<!-- 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/19955)
<!-- Reviewable:end -->
2018-02-05 09:50:35 -05:00
Emilio Cobos Álvarez
1221e9eb30
style: Update bindings. 2018-02-05 13:28:53 +01:00
bors-servo
575fecf810
Auto merge of #19953 - emilio:cleanup, r=wafflespeanut
style: Various cleanups

See each commit for details.

<!-- 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/19953)
<!-- Reviewable:end -->
2018-02-05 07:17:54 -05:00
Emilio Cobos Álvarez
b76bbdf501
style: Make input[type=number] pseudo-elements accessible to chrome.
Bug: 1433389
Reviewed-by: jwatt
MozReview-Commit-ID: 2ycajPYd3CV
2018-02-05 13:05:26 +01:00
Emilio Cobos Álvarez
2090371203
style: Cleanup indentation of Position::parse_quirky. 2018-02-05 13:02:56 +01:00
Emilio Cobos Álvarez
a03aa1b4b9
style: Cleanup the indentation of a function. 2018-02-05 13:02:55 +01:00
Emilio Cobos Álvarez
d4b238bada
style: Cleanup shape-outside code. 2018-02-05 13:02:54 +01:00
Emilio Cobos Álvarez
57ebb2c8af
style: Use debug_assert_eq!. 2018-02-05 13:02:54 +01:00
Emilio Cobos Álvarez
7178e9bf69
style: Remove stray space. 2018-02-05 13:02:53 +01:00
Emilio Cobos Álvarez
412f0133ca
style: Remove unneeded impl block. 2018-02-05 13:02:52 +01:00
Emilio Cobos Álvarez
c72a5623b1
style: Avoid double hash lookup when inserting in OrderMap. 2018-02-05 13:02:52 +01:00
bors-servo
2557274f7b
Auto merge of #19954 - emilio:insert-sheet, r=xidorn,hiro
style: Optimize @keyframes / @font-face rule insertions.

Bug: 1435214
Reviewed-by: xidorn,hiro

<!-- 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/19954)
<!-- Reviewable:end -->
2018-02-05 05:55:59 -05:00
Emilio Cobos Álvarez
001653080d
style: Update bindings. 2018-02-05 11:54:02 +01:00
Emilio Cobos Álvarez
1804f135ec
style: Optimize @keyframes rule insertions.
Bug: 1435214
Reviewed-by: xidorn,hiro
MozReview-Commit-ID: AHwhZynLBv
2018-02-05 11:54:01 +01:00
Emilio Cobos Álvarez
9c66b07b67
style: Make insertion of @font-face rules not necessarily restyle the whole document.
Bug: 1435214
Reviewed-by: xidorn
MozReview-Commit-ID: 5ewKiShUHNi
2018-02-05 11:24:40 +01:00
bors-servo
f2df3052d9
Auto merge of #19952 - servo-wpt-sync:wpt_update_04-02-2018, r=jdm
Sync WPT with upstream (04-02-2018)

Automated downstream sync of changes from upstream as of 04-02-2018.
[no-wpt-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/19952)
<!-- Reviewable:end -->
2018-02-04 23:22:42 -05:00
WPT Sync Bot
cd5bf022bd Update web-platform-tests to revision 68a256f49be380ca4add535ce8ece9de28820e6b 2018-02-04 21:05:56 -05:00
Anthony Ramine
3918c983e1 Use LonghandId::is_animatable in PropertyDeclaration::is_animatable 2018-02-04 23:23:21 +01:00
Anthony Ramine
90b37cfa21 Use less type aliases from longhands in PropertyDeclaration
This will help us reuse code between different variants in a later patch,
to implement Clone by hand to optimise it.
2018-02-04 22:57:53 +01:00
bors-servo
e54935c25a
Auto merge of #19949 - emilio:bye-cef, r=mbrubeck
ports: Remove leftover CEF config file.

<!-- 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/19949)
<!-- Reviewable:end -->
2018-02-04 13:45:30 -05:00
Emilio Cobos Álvarez
a6fa64fc79
ports: Remove leftover CEF config file. 2018-02-04 19:01:00 +01:00
bors-servo
7c112c7dcc
Auto merge of #19944 - o0Ignition0o:mach_run_bin, r=jdm
Add a --bin flag to the |mach run and rr-record commands

Add a --bin flag to the |mach run and rr-record commands to specify which servo binary to run

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

Step 1 for #19505.
This flag allows to specify a downloaded servo binary for the ./mach run and ./mach rr-record commands.
The base issue is mentored by @jdm

---
<!-- 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 | I would love to write tests on this, but I'm not really sure I can, since it's on ./mach commands

<!-- 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/19944)
<!-- Reviewable:end -->
2018-02-04 10:13:52 -05:00
bors-servo
7f7a460a15
Auto merge of #19945 - servo:derive-all-the-things, r=emilio
Simplify counter CSS 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/19945)
<!-- Reviewable:end -->
2018-02-04 09:11:05 -05:00
Anthony Ramine
df11a7fec7 Simplify counter CSS properties 2018-02-04 14:52:38 +01:00
o0Ignition0o
c3b2751eef Add a --bin flag to the |mach run and rr-record commands to specify which servo binary to run 2018-02-04 13:00:30 +01:00
bors-servo
f84e9236ae
Auto merge of #19929 - terracotaPie:master, r=jdm
Verify that all values in include.ini represent real directories

<!-- Please describe your changes on the following line: -->
wpt manifest(include.ini) contains directories as headers. With this test in **test-tidy** we check if they are present in respective wtp test folders.

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

<!-- 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/19929)
<!-- Reviewable:end -->
2018-02-03 22:39:23 -05:00
Timur Borkhodoev
1027644cb6 Remove a expected fail test 2018-02-03 15:52:26 -05:00
bors-servo
2f8cd0fe22
Auto merge of #19941 - emilio:cleanup-style-builder, r=emilio
style: Handle correctly nested links.

Followup to #19935, since I'm dumb and missed some orange in my try run.

<!-- 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/19941)
<!-- Reviewable:end -->
2018-02-03 15:28:58 -05:00
Emilio Cobos Álvarez
2e08ab1492
style: Handle correctly nested links.
Followup to #19935, since I'm dumb and missed that orange.
2018-02-03 20:45:56 +01:00
bors-servo
bad455138f
Auto merge of #19938 - servo:single-keyword, r=emilio
Simplify single_keyword

<!-- 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/19938)
<!-- Reviewable:end -->
2018-02-03 14:27:18 -05:00
Anthony Ramine
70a99cef15 Derive ToComputedValue for keywords without extra specified values 2018-02-03 18:44:56 +01:00
bors-servo
a0d9d3633b
Auto merge of #19935 - emilio:cleanup-style-builder, r=nox
style: Cleanup StyleBuilder.

This is in preparation of a cascade optimization for custom properties.

This fixes various fishiness around our StyleBuilder stuff. In particular,
StyleBuilder::for_derived_style (renamed to for_animation) is only used to
compute specified values, and thus doesn't need to know about rules, visited
style, or other things like that.

The flag propagation that was done in StyleAdjuster is now done in StyleBuilder,
since we know beforehand which ones are always inherited, and it simplified the
callers and the StyleAdjuster code. It also fixed some fishiness wrt which flags
were propagated to anon boxes and text.

<!-- 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/19935)
<!-- Reviewable:end -->
2018-02-03 12:24:23 -05:00
Emilio Cobos Álvarez
349d6e7167
style: Cleanup StyleBuilder.
This is in preparation of a cascade optimization for custom properties.

This fixes various fishiness around our StyleBuilder stuff. In particular,
StyleBuilder::for_derived_style (renamed to for_animation) is only used to
compute specified values, and thus doesn't need to know about rules, visited
style, or other things like that.

The flag propagation that was done in StyleAdjuster is now done in StyleBuilder,
since we know beforehand which ones are always inherited, and it simplified the
callers and the StyleAdjuster code. It also fixed some fishiness wrt which flags
were propagated to anon boxes and text.

The text-decoration-lines bit is interesting, because the way it was implemented
in #17722 meant that display: contents elements did get HAS_DECORATION_LINES
flags only if its parent also had it, so in practice the Contents check
preserves behavior, but it's only an optimization looking at Gecko's call-sites,
so we can remove it too.

MozReview-Commit-ID: 6BHCyEO2U8c
2018-02-03 18:07:25 +01:00
Emilio Cobos Álvarez
7fb470c373
style: Remove some uses of StyleBuilder::for_derived_style.
for_derived_style(default_values) is effectively for_inheritance(default_values).

MozReview-Commit-ID: DfTeD49uTlp
2018-02-03 17:40:35 +01:00
Jon Leighton
e9b93985d5 Fix missing whitespace between functions 2018-02-03 16:55:53 +01:00
Anthony Ramine
ccc932ad10 Don't duplicate specified and computed keywords
The previous code would generate two distinct types for specified and
computed values if some variants had aliases.
2018-02-03 15:22:08 +01:00
Timur Borkhodoev
607306af91 Add update-wpt generated ini 2018-02-02 17:37:19 -05:00
Timur Borkhodoev
515300a20c Change bad namings 2018-02-02 15:39:59 -05:00