Commit graph

37712 commits

Author SHA1 Message Date
Fernando Jiménez Moreno
47872cdaa3 Do not add shadow tree styles to stylist 2019-04-26 10:17:47 +02:00
Fernando Jiménez Moreno
519cc2c317 Invalidate and flush shadow tree stylesheets where needed 2019-04-26 10:17:47 +02:00
Fernando Jiménez Moreno
18c1b8f690 Register/unregister shadow roots in documents when they are connected 2019-04-26 10:17:47 +02:00
Fernando Jiménez Moreno
cd07574235 Expose a way to flush shadow root stylesheets from layout 2019-04-26 10:17:47 +02:00
Fernando Jiménez Moreno
e9f0e76d3c Implement TShadowRoot::style_data 2019-04-26 10:17:47 +02:00
Fernando Jiménez Moreno
23b92d54d4 Remove stylesheets ownership from DocumentOrShadowRoot 2019-04-26 10:17:47 +02:00
Fernando Jiménez Moreno
3bb50cc479 ShadowRoot stylesheet list 2019-04-26 10:17:47 +02:00
Fernando Jiménez Moreno
0d6bd24245 Move stylesheets related code to DocumentOrShadowRoot 2019-04-26 10:17:47 +02:00
Fernando Jiménez Moreno
d2e1a3ab33 Adapt traversals for shadow dom 2019-04-26 10:17:46 +02:00
Fernando Jiménez Moreno
7c9e8aa4cc First bits of shadow dom layout 2019-04-26 10:17:46 +02:00
Fernando Jiménez Moreno
be06f1e9b3 Always get browsing context from document 2019-04-26 10:17:46 +02:00
Fernando Jiménez Moreno
2e5c058463 Implement concept of shadow including tree order 2019-04-26 10:17:46 +02:00
Fernando Jiménez Moreno
f6ba165882 Throw when trying to import or adopt a shadow root 2019-04-26 10:17:46 +02:00
Fernando Jiménez Moreno
6a85409ffe Throw NotSupported when trying to deep clone a shadow root 2019-04-26 10:17:46 +02:00
Fernando Jiménez Moreno
d6ddb08e23 Do not care about shadow roots when getting root element 2019-04-26 10:17:46 +02:00
Fernando Jiménez Moreno
c48ad0ff7e Introduce concept of composed parent node 2019-04-26 10:17:46 +02:00
Fernando Jiménez Moreno
1b036355ce Bind/unbind shadow host children to/from tree 2019-04-26 10:17:45 +02:00
Fernando Jiménez Moreno
df81debffc Set connected flag not only on elements 2019-04-26 10:17:45 +02:00
Fernando Jiménez Moreno
4740ce53a0 Make note_dirty_descendants jump around shadow roots 2019-04-26 10:17:45 +02:00
Fernando Jiménez Moreno
ea69bbc75b Node retargeting algorithm 2019-04-26 10:17:45 +02:00
Fernando Jiménez Moreno
441357b74e Add is_connected flag to node and use it to replace most uses of is_in_doc 2019-04-26 10:17:45 +02:00
Fernando Jiménez Moreno
640fc04743 Implement shadow-including root, set node as in doc when connected. Makes JS work in shadow trees 2019-04-26 10:17:45 +02:00
Fernando Jiménez Moreno
48975840dd Unify DocumentOrShadowRoot implementation 2019-04-26 10:17:45 +02:00
Fernando Jiménez Moreno
f3e707306f Test DOM isolation for shadow trees 2019-04-26 10:17:45 +02:00
Fernando Jiménez Moreno
ffdc9d255f Expose Element.AttachShadow under dom.shadowdom.enabled pref 2019-04-26 10:17:44 +02:00
Fernando Jiménez Moreno
091fcbecd1 Node shadow root owner 2019-04-26 10:17:44 +02:00
Fernando Jiménez Moreno
9022bd3d11 IS_IN_SHADOW_TREE flag 2019-04-26 10:17:44 +02:00
Fernando Jiménez Moreno
569b4fce10 Element attachShadow implementation 2019-04-26 10:17:44 +02:00
Fernando Jiménez Moreno
4304ee28dc Partial ShadowRoot implementation of DocumentOrShadowRoot 2019-04-26 10:17:44 +02:00
Fernando Jiménez Moreno
18ae0fcbd6 ShadowRoot interface 2019-04-26 10:17:44 +02:00
Fernando Jiménez Moreno
cbcf21c248 DocumentOrShadowRoot mixin 2019-04-26 10:17:44 +02:00
bors-servo
56c2e85cab
Auto merge of #23270 - Manishearth:audioparam-validation, r=ferjm
Add input validation for AudioParam methods

Waiting on a build to make WPT updates

Spec requires us to validate inputs, we aren't doing this here.

We don't need to check for things being finite since we already get the arguments as `Finite` values

<!-- 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/23270)
<!-- Reviewable:end -->
2019-04-26 03:32:48 -04:00
bors-servo
9b20187793
Auto merge of #23273 - servo-wpt-sync:wpt_update_26-04-2019, r=servo-wpt-sync
Sync WPT with upstream (26-04-2019)

Automated downstream sync of changes from upstream as of 26-04-2019.
[no-wpt-sync]
2019-04-26 01:35:36 -04:00
WPT Sync Bot
efca990ffe Update web-platform-tests to revision d3cf77a7b8c20c678b725238eaa8a72eca3787ae 2019-04-26 01:35:21 -04:00
bors-servo
b73956cc37
Auto merge of #23090 - miller-time:nav-fetch-referrer, r=gterzian
Add referrer to navigation fetch request

<!-- Please describe your changes on the following line: -->
Implement step 13 of [following hyperlinks](https://html.spec.whatwg.org/#following-hyperlinks-2) and step 14.3 of [window open](https://html.spec.whatwg.org/#window-open-steps), as well as other referrer- and fetch-related updates.

---
<!-- 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 #22890 (GitHub issue number if applicable)

<!-- Either: -->
- [ ] 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/23090)
<!-- Reviewable:end -->
2019-04-25 20:21:23 -04:00
Manish Goregaokar
8a8a9f7135 Add input validation for AudioParam methods 2019-04-25 16:00:11 -07:00
bors-servo
880f3b8b7a
Auto merge of #23268 - asajeffrey:magicleap-package-fixes, r=jdm
Magicleap package fixes

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

A couple of fixes for magicleap packaging...
* Move the setting of the debuggable flag into the `.package` file where it belongs,
* Allow compiling with v0.20.0 of the SDK.

---
<!-- 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 fixes the build

<!-- 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/23268)
<!-- Reviewable:end -->
2019-04-25 18:25:19 -04:00
bors-servo
36bb42525a
Auto merge of #23256 - jdm:clang-cl, r=asajeffrey
Use clang-cl for Windows builds

Depends on https://github.com/servo/mozjs/pull/178.

<!-- 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/23256)
<!-- Reviewable:end -->
2019-04-25 14:35:59 -04:00
Alan Jeffrey
73a874f742 Work around deprecated API when packaging for magicleap 2019-04-25 13:02:56 -05:00
Alan Jeffrey
82fcab38a4 Move debuggable flag setting for magicleap package to package file 2019-04-25 12:56:37 -05:00
bors-servo
caac107ae8
Auto merge of #23262 - paulrouget:cursor-update, r=jdm
Update SetCursor behavior

We were initially sending a SetCursor message on every mouse move because of a winit bug, which is now fixed.

Also, we had a layout SetCursor message that was never used.

Fix #18599

<!-- 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/23262)
<!-- Reviewable:end -->
2019-04-25 12:28:08 -04:00
bors-servo
e877dc2759
Auto merge of #23263 - servo:rustup, r=jdm
Upgrade to rustc 1.36.0-nightly (e305df184 2019-04-24)

This includes a `size_of` regression for a few DOM types, due to https://github.com/rust-lang/rust/pull/58623 which replaces the implementation of `HashMap` in the standard library to Hashbrown.

Although `size_of<HashMap>` grows, it’s not obvious how total memory usage is going to be impacted: Hashbrown only has one `u8` instead of one `usize` of overhead per hash table bucket for storing (part of) a hash, and so might allocate less memory itself.

Hashbrown also typically has better run time performance: https://github.com/rust-lang/hashbrown#performance

Still, I’ve filed https://github.com/rust-lang/hashbrown/issues/69 about potentially reducing the `size_of<HashMap>` regression.

<!-- 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/23263)
<!-- Reviewable:end -->
2019-04-25 10:58:23 -04:00
Josh Matthews
0136e5a2db Update mozjs. 2019-04-25 10:55:17 -04:00
Josh Matthews
c038ba4c7c Force the use of clang-cl.exe for Windows builds. 2019-04-25 10:55:16 -04:00
Simon Sapin
51d6b6350e Upgrade to rustc 1.36.0-nightly (e305df184 2019-04-24)
This includes a `size_of` regression for a few DOM types,
due to https://github.com/rust-lang/rust/pull/58623 which replaces the
implementation of `HashMap` in the standard library to Hashbrown.

Although `size_of<HashMap>` grows, it’s not obvious how total memory usage
is going to be impacted: Hashbrown only has one `u8` instead of one `usize`
of overhead per hash table bucket for storing (part of) a hash,
and so might allocate less memory itself.

Hashbrown also typically has better run time performance:
https://github.com/rust-lang/hashbrown#performance

Still, I’ve filed https://github.com/rust-lang/hashbrown/issues/69
about potentially reducing the `size_of<HashMap>` regression.
2019-04-25 13:52:09 +02:00
Aron Zwaan
e2e6e2ac94 Pass InCompartment by value 2019-04-25 11:37:35 +02:00
Paul Rouget
7858ede29f Update SetCursor behavior 2019-04-25 09:39:16 +02:00
bors-servo
07d1559141
Auto merge of #23250 - servo-wpt-sync:wpt_update_24-04-2019, r=servo-wpt-sync
Sync WPT with upstream (24-04-2019)

Automated downstream sync of changes from upstream as of 24-04-2019.
[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/23250)
<!-- Reviewable:end -->
2019-04-24 20:25:39 -04:00
bors-servo
0b1a790683
Auto merge of #23252 - servo:jdm-patch-36, r=SimonSapin
Allow mac WPT jobs to run longer than 60 minutes

This should fix #23251 which has been hitting us lately as we run more 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/23252)
<!-- Reviewable:end -->
2019-04-24 17:35:35 -04:00
Josh Matthews
817aa49dc7
Update cmake for MSVC builds. 2019-04-24 15:07:31 -04:00