Commit graph

21295 commits

Author SHA1 Message Date
Boris Chiou
a8943d2ec5 style: Part 1: Support field_bound on Animate.
So we can derive Animate on more generic types.

Differential Revision: https://phabricator.services.mozilla.com/D16339
2019-01-13 21:58:36 +01:00
Cameron McCormack
7efbd9cde6 style: Remove unnecessary mem::transmute in MediaListKey.
Differential Revision: https://phabricator.services.mozilla.com/D16147
2019-01-13 21:58:28 +01:00
Ryan Hunt
c04a4140a7 style: Add 'overflow-anchor' CSS property.
https://drafts.csswg.org/css-scroll-anchoring/#exclusion-api

Differential Revision: https://phabricator.services.mozilla.com/D13265
2019-01-13 21:58:18 +01:00
bors-servo
c7cd1b83a1
Auto merge of #22648 - collares:ChannelSplitterNode, r=Manishearth
Implement DOM APIs for ChannelSplitterNode

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

Based on #21591. Fixes #21558. I tried to update the expected results for WPT using "./mach update-wpt"; let me know if I got something wrong.

---
<!-- 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 the second half of #21558

<!-- Either: -->
- [x] There are web-platform-tests tests for these changes
- [ ] 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/22648)
<!-- Reviewable:end -->
2019-01-12 14:11:26 -05:00
bors-servo
f2b224d610
Auto merge of #22666 - CYBAI:urlsearchparams-no-trailing-q, r=nox
Remove trailing ? when updating URLSearchParams

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #22639
- [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/22666)
<!-- Reviewable:end -->
2019-01-11 15:00:31 -05:00
bors-servo
055bfdb4cd
Auto merge of #22674 - servo:rustup, r=emilio
Fix new warnings in Rust nightly-2019-01-11

<!-- 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/22674)
<!-- Reviewable:end -->
2019-01-11 13:30:47 -05:00
german gomez
5605f235c6 Implement Ended media attribute
Signed-off-by: german gomez <germangb42@gmail.com>
2019-01-11 18:13:11 +01:00
bors-servo
90c0d27ce7
Auto merge of #22676 - ferjm:textrack.activecues, r=jdm
Expose TextTrack.activeCues

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

This only exposes the `activeCues` property to make sure that `/html/semantics/embedded-content/media-elements/track/track-element/track-active-cues.html` timeouts consistently.

<!-- 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/22676)
<!-- Reviewable:end -->
2019-01-11 11:42:15 -05:00
Fernando Jiménez Moreno
1033d6bc07 ImageContext.aborted does not need to be inside a Cell 2019-01-11 17:11:12 +01:00
Fernando Jiménez Moreno
9d5499bbfb Reftest for video poster frame 2019-01-11 17:11:12 +01:00
Fernando Jiménez Moreno
5c5b5aae0f Implement HTMLMediaElement poster attribute 2019-01-11 17:11:11 +01:00
Fernando Jiménez Moreno
69a79c7d75 Expose TextTrack.activeCues 2019-01-11 17:05:25 +01:00
lqd
87e6ef3dde
Typo fix in new doc-comment
Co-Authored-By: SimonSapin <simon.sapin@exyr.org>
2019-01-11 16:35:26 +01:00
Simon Sapin
3a710f22ed Document public macros.
Undocumented public macros emit warnings in nightly-2019-01-11,
and we #![deny] that warning.
2019-01-11 14:17:22 +01:00
Simon Sapin
9b98beb769 Remove unused macro 2019-01-11 14:02:28 +01:00
bors-servo
b49e7517a3
Auto merge of #22522 - ferjm:av.playback.improvements, r=Manishearth
HTMLMediaElement backoff protocol and other improvements to a/v playback

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

This PR implements a backoff protocol to keep us from dropping frames whenever it's possible. It also add some other improvements like:
- Clean up the implementation a little bit by adding all fetch request related state to `HTMLMediaElementFetchContext`.
- Make sure that we ignore responses from old requests.
- Set the stream to seekable iff there's support for range requests. This will likely change when we add the media cache.
- Implements part of [step 8 of the seek spec](https://html.spec.whatwg.org/multipage/media.html#dom-media-seek) where we bail out if the stream is not seekable.

<!-- 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/22522)
<!-- Reviewable:end -->
2019-01-11 08:00:39 -05:00
Fernando Jiménez Moreno
9a18074b88 Split media fetch context and fetch listener to prevent deadlocks 2019-01-11 13:58:48 +01:00
Fernando Jiménez Moreno
da32c8488c Do not let fetch request drive generation id increments 2019-01-11 10:44:43 +01:00
Emilio Cobos Álvarez
99f6d6f1b8 style: Three-value position syntax uses calc() as its computed value representation.
This restores the previous behavior of using calc().

Note that background-position / object-position, which test this, weren't
hitting the assertion because they use another codepath.

I didn't add more extensive tests for this because it's well tested for those
two properties, and because this is legacy anyway, see the comment in the test.

I did add the assertion to the codepath those two properties hit.

Differential Revision: https://phabricator.services.mozilla.com/D16176
2019-01-11 01:12:41 +01:00
Emilio Cobos Álvarez
119b316885 style: Rustfmt recent changes. 2019-01-11 00:57:26 +01:00
Emilio Cobos Álvarez
28cc747a0d style: Use a less-specific indexmap version. 2019-01-11 00:55:09 +01:00
Cameron McCormack
03507801cf style: Make GkAtoms opaque to avoid lld-link.exe errors.
Differential Revision: https://phabricator.services.mozilla.com/D15800
2019-01-11 00:50:46 +01:00
Cameron McCormack
63fd707bd3 style: Use atom handles in favour of atom pointers in style system code.
Differential Revision: https://phabricator.services.mozilla.com/D15078
2019-01-11 00:50:26 +01:00
Fernando Jiménez Moreno
9aced067aa Reset seeking flag if stream is not seekable 2019-01-10 19:09:32 +01:00
Fernando Jiménez Moreno
34c1f2587f Add fetch canceller to HTMLMediaElementFetchContext and clarify how we restart after a backoff 2019-01-10 19:09:32 +01:00
Fernando Jiménez Moreno
e7e390ee8e Backoff protocol for media fetch requests 2019-01-10 19:09:32 +01:00
Fernando Jiménez Moreno
f1d012d782 Make sure that we ignore responses from old requests 2019-01-10 19:09:32 +01:00
Fernando Jiménez Moreno
c8806767a0 Set media stream as seekable only if the server supports range requests 2019-01-10 19:09:32 +01:00
Fernando Jiménez Moreno
5112e0435c Update servo-media 2019-01-10 19:09:32 +01:00
Mauricio Collares
1209cf16a8 Always throw when asked to change some ChannelMergerNode properties 2019-01-10 11:58:17 -05:00
Mauricio Collares
ff0cf9e93a Implement DOM APIs for ChannelSplitterNode 2019-01-10 11:58:10 -05:00
bors-servo
160842b8c1
Auto merge of #22669 - georgeroman:ignore_children_of_void_when_serializing, r=jdm
Ignore children of void elements when serializing

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

<!-- 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/22669)
<!-- Reviewable:end -->
2019-01-10 10:28:13 -05:00
CYBAI
ae965d6d8d Set query to None when no search params 2019-01-10 22:43:29 +08:00
George Roman
f7db5743f4 Ignore children of void elements when serializing 2019-01-10 16:07:12 +02:00
bors-servo
4ac5b8a3ae
Auto merge of #22477 - ferjm:media_time_marches_on_step_6, r=jdm
Implement step 6 of media `time marches on` algorithm. Improves stability of media WPTs

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] There are tests for these changes

This should help with the WPTs problems observed in https://github.com/servo/servo/pull/22348#issuecomment-446369831

Unfortunately, GStreamer does not seem to be very reliable with Ogg (check https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/520) and most of the media-element WPTs uses a short ogv file, so I had to make our `canPlayType` report that it is not able to play this type to make the tests pick the alternative mp4 version of the same files. Once Ogg support for GStreamer improves, we should be able to revert this change.

<!-- 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/22477)
<!-- Reviewable:end -->
2019-01-10 06:52:57 -05:00
bors-servo
d8b025c6cc
Auto merge of #22656 - shanavas786:use-index-map, r=emilio
Remove OrderedMap in favor of IndexMap

<!-- 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: -->
- [ ] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #22643

<!-- Either: -->
- [x] These changes do not require tests because its just refactoring

<!-- 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/22656)
<!-- Reviewable:end -->
2019-01-10 05:29:24 -05:00
bors-servo
106f1377d2
Auto merge of #22599 - aditj:patch-1-re, r=ferjm
Implement performance interface extension for PerformanceResourceTiming

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

(There is a previous closed pull for this #22431)
Implemented the following :
a) Added the maxSize Field to the PerformanceEntryList structure.
b) Implemented the clearResourceTimings, setResourceTimingBufferSize, onresourcetimingbufferfull fuctions for the Performance Structure according to the Interface Specification given at : https://w3c.github.io/resource-timing/#sec-extensions-performance-interface

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

<!-- 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/22599)
<!-- Reviewable:end -->
2019-01-10 03:10:06 -05:00
Shanavas M
b763d6737c Remove OrderedMap in favor of IndexMap 2019-01-10 12:57:09 +05:30
bors-servo
2e15cf0f81
Auto merge of #22638 - CYBAI:urlsearchparams-sort, r=nox
Implement URLSearchParams.prototype.sort()

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #22545
- [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/22638)
<!-- Reviewable:end -->
2019-01-09 21:37:57 -05:00
Anthony Ramine
3ccda7f90c Make a bunch of layout queries morally safer 2019-01-09 14:12:54 +01:00
Anthony Ramine
ddef6211b3 Move is_image_data to the layout crate
It's only used there.
2019-01-09 13:15:04 +01:00
Anthony Ramine
1120da6033 Remove unstable unused feature in script_layout_interface 2019-01-09 13:10:41 +01:00
Fernando Jiménez Moreno
f7eeb26f0a Force the usage of mp4 for media-element WPTs 2019-01-09 09:28:43 +01:00
Fernando Jiménez Moreno
6c2c3f75b9 Implement step 6 of media element 'time marches on' algoritm 2019-01-09 09:28:42 +01:00
bors-servo
44cbe969e2
Auto merge of #22649 - Manishearth:xr-promises, r=jdm
Make XR/VR presenting code async

Previously we only pretended to be async, we returned promises that were already resolved because we synchronously blocked on the channel.

This:

 - Moves XR presentation to session creation (where it belongs, see https://github.com/immersive-web/webxr/issues/453)
 - Factors out common presentation code in a way that supports asynchronously resolving promises
 - Uses this for `VRDisplay::RequestPresent()` and `XR::RequestSession()`

r? @jdm

<!-- 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/22649)
<!-- Reviewable:end -->
2019-01-08 20:42:37 -05:00
adit
3ca82471c8 Implement performance interface extension for PerformanceResourceTiming 2019-01-09 01:09:08 +05:30
bors-servo
e7a0a4437b
Auto merge of #22640 - heh9:master, r=jdm
Make create_typed_array an unsafe function

<!-- Please describe your changes on the following line: -->
Make `create_typed_array` function in `components/script/dom/vrframedata.rs` an unsafe function as it accepts an unsafe pointer
Wrapped the function calls into an unsafe block in `components/script/dom/xrview.rs` and `components/script/dom/vrframedata.rs`

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because the reporter of the issue said it's fine if it compiles with no warning or errors

<!-- 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/22640)
<!-- Reviewable:end -->
2019-01-08 12:38:08 -05:00
bors-servo
bab4e9efa5
Auto merge of #22634 - aditj:aditj-patch-2, r=ferjm
Comments

Regarding  clarify layout-thread exit workflow (Specifically:when will a Exit message be received )

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because they add comments to the code and don't affect the code itself.

<!-- 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/22634)
<!-- Reviewable:end -->
2019-01-08 10:44:12 -05:00
bors-servo
7c8de38572
Auto merge of #22563 - dlrobertson:htmltextelement, r=ferjm
script: Implement the HTMLTrackElement API

Implement the basics of the HTMLTrackElement and update the wpt tests.

- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

Fixes: https://github.com/servo/servo/issues/22313

<!-- 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/22563)
<!-- Reviewable:end -->
2019-01-08 09:15:21 -05:00
Dan Robertson
c4802076b3
script: Implement the HTMLTrackElement API
Implement the basics of the HTMLTrackElement and update the wpt tests.
2019-01-08 13:23:38 +00:00