Commit graph

21295 commits

Author SHA1 Message Date
Manish Goregaokar
1b11a3063c Support attaching RAF callbacks 2018-12-21 16:02:24 -08:00
Manish Goregaokar
28dff81dbf Fill in XR frame/pose/view implementations 2018-12-21 15:47:28 -08:00
Manish Goregaokar
7e043a33f1 Support fetching viewport info 2018-12-21 14:43:41 -08:00
Manish Goregaokar
e259ff727e Simple presentation 2018-12-20 17:42:22 -08:00
Manish Goregaokar
70e8a19200 Fill in some of XRWebGLLayer 2018-12-20 17:28:03 -08:00
Manish Goregaokar
682c89a18c allow setting base layer 2018-12-20 15:44:26 -08:00
Bastien Orivel
1d0af2dc8d Disable gaol on arm targets 2018-12-20 21:23:19 +01:00
Bastien Orivel
16beb65d49 Disable gaol on android 2018-12-20 20:53:13 +01:00
Manish Goregaokar
d5911816e1 Fill in XR.requestSession 2018-12-19 19:56:52 -08:00
Manish Goregaokar
520bb23048 Basic XRRigidTransform interface 2018-12-19 16:50:27 -08:00
Manish Goregaokar
73c530344c Basic XRView interface 2018-12-19 16:48:44 -08:00
Manish Goregaokar
31feb1eca2 Basic XRViewerPose interface 2018-12-19 16:46:27 -08:00
Manish Goregaokar
581470016f Basic XRReferenceSpace interface 2018-12-19 16:24:38 -08:00
Manish Goregaokar
90e0ceb7ce Basic XRSpace interface 2018-12-19 15:42:46 -08:00
Manish Goregaokar
29e9672d4d Basic XRFrame interface 2018-12-19 15:42:27 -08:00
Manish Goregaokar
ebf9ccc9de Basic XRSession interface 2018-12-19 15:40:38 -08:00
Manish Goregaokar
376426a936 Move VR interface to XR
The WebVR spec no longer has a navigator.vr, but there is a navigator.XR in the XR spec. Instead of duplicating work I've combined the two.
2018-12-19 14:33:54 -08:00
bors-servo
c553c43ba1
Auto merge of #22395 - jdm:initial-iframe-size, r=Manishearth
Initialize iframe viewport immediately

This is probably a significant cause of unstable test results, and it finally bothered me enough to fix it. The solution isn't great for performance (a sync layout query every time a iframe is added to a document), but performance needs to follow correctness.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #14364 and fix #15689 and fix #15688.
- [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/22395)
<!-- Reviewable:end -->
2018-12-18 08:51:26 -05:00
cdeler
5060ebce8b #22484 Do not borrow HTMLImageElement::same_origin as mutable 2018-12-18 13:16:22 +03:00
bors-servo
a067620789
Auto merge of #22474 - csmoe:unregister, r=gterzian
Unregister components while exiting

r=@gterzian

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

<!-- 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/22474)
<!-- Reviewable:end -->
2018-12-17 21:22:41 -05:00
Josh Matthews
1c7cfafcc5 Don't alter query string when submitting form by POST. 2018-12-17 11:29:25 -05:00
Josh Matthews
27c25116d3 net: Suppress default ports in Origin header. 2018-12-17 11:29:24 -05:00
Dan Robertson
c46508e497
Update src/href attributes to be a USVString
The following IDLs have the src/href attributes typed as a DOMString
while in the spec the attribute has been updated to be a USVString:

 - HTMLIFrameElement
 - HTMLImageElement
 - HTMLInputElement
 - HTMLLinkElement
 - HTMLMediaElement
 - HTMLScriptElement
2018-12-17 15:28:42 +00:00
csmoe
5600a1dca1 unregister components while exiting 2018-12-17 16:37:03 +08:00
Emilio Cobos Álvarez
273705d7fb style: Fix tidy issues. 2018-12-16 13:35:09 +01:00
Olli Pettay
28719f2455 Move FragmentOrElement::mAttrs to Element.
Bug: 1512256
Reviewed-by: ehsan
2018-12-16 13:35:09 +01:00
Emilio Cobos Álvarez
27322abeda style: Minor build fixup after the Servo crossbeam_channel update. 2018-12-16 13:35:08 +01:00
Daniel Holbert
ee6bf98675 style: Include the 'unsafe' keyword in serializations of css-align properties.
Previously we'd omit it since it was merely an explicit way of requesting the
default behavior.  But the spec has changed such that it's not necessarily
equivalent to the default anymore:
https://drafts.csswg.org/css-align/#overflow-values

(Technically the behaviors are probably still equivalent in our implementation,
pending bug 1451380, but we don't have to publicize that via our
serialization.)

Differential Revision: https://phabricator.services.mozilla.com/D14599
2018-12-16 13:35:07 +01:00
Boris Zbarsky
3d78025e10 style: Fix serialization of explicitly case-sensitive attr selectors with a namespace.
Differential Revision: https://phabricator.services.mozilla.com/D14493
2018-12-16 13:35:07 +01:00
Emilio Cobos Álvarez
7f5a9e0f45 style: Handle nested slots correctly in slotted matching and invalidation.
The patch and test should be pretty much self-descriptive.

Differential Revision: https://phabricator.services.mozilla.com/D14063
2018-12-16 13:35:06 +01:00
Boris Zbarsky
a519d9ecc3 style: Add support for 's' flag on attribute selectors.
We could keep using ParsedCaseSensitivity::CaseSensitive as a temporary stand-in
for "case-sensitive or maybe not depending on what HTML says" until we check the
attribute list, but it seems better to make that explicit.

Differential Revision: https://phabricator.services.mozilla.com/D14093
2018-12-16 13:35:05 +01:00
Emilio Cobos Álvarez
901c055519 style: Move overflow to use cbindgen.
It's one of the most annoying / hacky mako bits we have.

Differential Revision: https://phabricator.services.mozilla.com/D14084
2018-12-16 13:35:05 +01:00
Emilio Cobos Álvarez
3f58e0b069 style: Deduplicate a bit the malloc_size_of code for hashmaps / hashsets.
This allows to experiment with other hash maps easily rather than
depending on what hashglobe::fake::HashMap dereferences to.

In particular I wrote it while trying to get a build working with hashbrown.

Differential Revision: https://phabricator.services.mozilla.com/D14098
2018-12-16 13:35:04 +01:00
Emilio Cobos Álvarez
626172d64c style: Use cbindgen for a couple more CSS properties.
Differential Revision: https://phabricator.services.mozilla.com/D13886
2018-12-16 13:35:04 +01:00
bors-servo
8da0947a6b
Auto merge of #22439 - Eijebong:clippy, r=emilio
Fix all clippy warnings in style_derive

<!-- 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/22439)
<!-- Reviewable:end -->
2018-12-15 01:01:48 -05:00
Josh Matthews
496e2f621d mac: Treat CT returning 0 glyph indexes as failing to find indexes. 2018-12-14 15:50:29 -05:00
Josh Matthews
fc2d810bce Delay iframe and script element processing until the DOM is stable. 2018-12-14 13:12:49 -05:00
Josh Matthews
14b0de30db Prevent JS execution and layout operations while DOM in inconsistent state. 2018-12-14 13:12:47 -05:00
Josh Matthews
231a37be24 Initial window sizes are mandatory. 2018-12-14 13:12:46 -05:00
Josh Matthews
34e77f62af Ensure that all new iframes have a correct initial window size. 2018-12-14 13:00:47 -05:00
kingdido999
1bd4f9572d Clean up 2018-12-13 12:12:24 -08:00
kingdido999
3b855b1329 Avoid sending idle message more than once after a reflow is complete 2018-12-13 10:53:31 -08:00
Jérémy DEMANGE
ea0cb12256 Delete space after [package] 2018-12-13 12:05:32 -05:00
bors-servo
eab848df3e
Auto merge of #22433 - ferjm:player.eos.size, r=ceyusa
Improve implementation of media resource fetch algorithm

I have been observing inconsistent behaviors with my local tests depending of the media asset being played. I figured that we had these issues:

- We were setting the player EOS as soon as we got the first [process_response_eof](1046ae58a1/components/script/dom/htmlmediaelement.rs (L1596)). This is fine only if there is a single request. But that's not the case for multiple range requests or for seeks. Setting the player EOS makes the player appsrc reject any new buffers, and that breaks playback. Figuring out when is the right time to set the player EOS won't be a straight forward task, so my suggested fix for now is to simply not set it for now. It is a cleanup step that it would be nice to have but it is not mandatory.

- We were setting the input size more than once for multiple range requests and with the incorrect value. The fix uses the `content-length` or the `content-range` headers for single and range requests respectively.

- We were moving to the HaveEnoughData state if a fetch request succeded but no data was fetched from the network.

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- 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/22433)
<!-- Reviewable:end -->
2018-12-12 18:38:25 -05:00
Bastien Orivel
dd301c084d Fix all clippy warnings in style_derive 2018-12-12 21:32:52 +01:00
bors-servo
2e01a23bad
Auto merge of #22432 - servo:encoding, r=SimonSapin
Make the parser decode input from document's encoding

<!-- 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/22432)
<!-- Reviewable:end -->
2018-12-12 15:17:32 -05:00
Fernando Jiménez Moreno
8818898240 Do not move to HaveEnoughData state if no media data is fetched from the network 2018-12-12 18:08:40 +01:00
Fernando Jiménez Moreno
707b490c0f Signal EOS if media request fails 2018-12-12 16:52:37 +01:00
Lucas Fantacuci
ad3ec61d2f Implementing volume attribute into HTMLMediaElement 2018-12-12 11:50:35 -02:00
Anthony Ramine
a2abfc6301 Make the parser decode input from document's encoding
The document's encoding is only computed from the Content-Type header for now,
with no sniffing at all.
2018-12-12 13:50:27 +01:00