Commit graph

1452 commits

Author SHA1 Message Date
Manish Goregaokar
dd7b69b6d8 Add support for basic MediaTrackConstraints 2019-03-04 15:31:47 +05:30
bors-servo
28c6dec62d
Auto merge of #22958 - Manishearth:attrs-on-types, r=nox
Add support for attributes on types in WebIDL

WebIDL moved `[Clamp]`, `[RangeEnforced]`, and `[TreatNullAs]` to applying directly to types in https://github.com/heycam/webidl/pull/286.

I implemented parser support for this upstream in [bug 1359269](https://bugzilla.mozilla.org/show_bug.cgi?id=1359269). This pull request downstreams those changes and updates codegen as well as any webidls to conform.

Needed to land #22874

r? @nox

<!-- 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/22958)
<!-- Reviewable:end -->
2019-03-04 03:36:27 -05:00
Manish Goregaokar
7b48df53a1 Update WebIDL.py to 4166cae81546
4166cae815

Pulls in changes from https://bugzilla.mozilla.org/show_bug.cgi?id=1359269
2019-03-04 14:03:31 +05:30
bors-servo
4ccbd1e87e
Auto merge of #22622 - sreeise:audio_video_tracks, r=jdm
Added AudioTrack, AudioTrackList, VideoTrack, and VideoTrackList inte…

…rfaces

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

Added AudioTrack, AudioTrackList, VideoTrack, VideoTrackList, and TrackEvent interfaces to support multiple media tracks.

---
<!-- 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 #22301  (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/22622)
<!-- Reviewable:end -->
2019-03-03 10:31:44 -05:00
sreeise
cac4aa56f7 Added AudioTrack, AudioTrackList, VideoTrack, VideoTrackList, and TrackEvent interfaces 2019-03-03 09:04:50 -05:00
Yuki Toyoda
c1e96b452d implement historical cancelBubble attribute for Event interface 2019-03-03 16:55:22 +09:00
bors-servo
4d8d54fc00
Auto merge of #22933 - pngai:implement-returnValue-attribute, r=jdm
Implement historical returnValue attribute for Event interface

<!-- Please describe your changes on the following line: -->
Implementation of `returnValue` attribute for Event 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 #22881 (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/22933)
<!-- Reviewable:end -->
2019-03-01 17:33:39 -05:00
Patrick Ngai
fcadff7bad Implement historical returnValue attribute for Event interface 2019-02-28 21:03:03 +08:00
bors-servo
42ebf46172
Auto merge of #22917 - ksqsf:master, r=KiChjang
Add optional annotations for initEvent method of Event interface

Added `optional` and default values to parameters `bubbles` and `cancelable` of `initEvent` of `Event`.

I tried to update test results, but there seem to be no differences at all.

I checked similar code where `optional` is used, and there seems to be no special handling in Rust. If that is not the case with this issue, please let me know and I'll commit more follow-ups.

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

<!-- Either: -->
- [x] There are tests for these changes OR

<!-- 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/22917)
<!-- Reviewable:end -->
2019-02-27 04:05:57 -05:00
_rika
fd2341bc78 Add optional annotations for initEvent method of Event interface 2019-02-26 18:10:43 +08:00
bors-servo
a28e15e4ea
Auto merge of #22347 - stevesweetney:master, r=ferjm
Implement HTMLMediaElement muted and defaultMuted attributes

<!-- Please describe your changes on the following line: -->
PR for issue  #22291

---
<!-- 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  #22291 (github issue number if applicable).
- [X] There are tests for these changes OR

<!-- 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/22347)
<!-- Reviewable:end -->
2019-02-25 05:05:09 -05:00
Manish Goregaokar
37872b8b9c Add XREnvironmentBlendMode 2019-02-19 16:08:39 +05:30
Steve Sweetney
02d3328d3c Implement HTMLMediaElement muted and defaultMuted attributes 2019-02-18 15:20:00 -05:00
George Roman
90b5d0d338 Implement the target attribute for HTMLAreaElement 2019-02-11 10:42:58 +02:00
kkpoon
d470373e1c Add PerformanceResourceTiming: redirectStart 2019-02-01 14:55:37 +08:00
bors-servo
6b648429f5
Auto merge of #22780 - Manishearth:webrtc, r=jdm
Initial webrtc and getUserMedia DOM support

This is able to reach the point where connections are properly negotiated and ready to exchange streams.

<s>The `toJSON()` stuff doesn't work yet, so most example code will need to be tweaked to manually construct JSON first before sending SDP and ICE messages over websockets. I'll add support for this soon. (This may need webidl tweaks to support `[Default]` and `toJSON()`)</s>

For some reason I haven't yet figured out, connections are one-way, Servo is able to receive streams but the other end doesn't see the streams Servo sends. I don't think this is due to https://github.com/servo/media/issues/191, but that bug is making it harder to test.

This implementation simply drops streams that it receives, without connecting them up to any output elements, since servo-media-player doesn't yet have mediastream support.

Since servo can neither effectively send nor receive streams this implementation isn't useful yet, however it is getting large and I figured I'd get it reviewed and landed early as a base.

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/22780)
<!-- Reviewable:end -->
2019-01-31 12:14:16 -05:00
Manish Goregaokar
ab04f0429b Add RTCSessionDescription::ToJSON 2019-01-29 11:37:00 -08:00
Manish Goregaokar
0d9f538561 Add RTCIceCandidate::ToJSON 2019-01-29 11:37:00 -08:00
Manish Goregaokar
2d8ac7825c Add RTCPeerConnection::AddStream 2019-01-29 11:37:00 -08:00
Manish Goregaokar
8b0719a6f2 Add MediaDevices::GetUserMedia 2019-01-29 11:37:00 -08:00
Manish Goregaokar
eee183d7f4 Add Navigator::MediaDevices 2019-01-29 11:37:00 -08:00
Manish Goregaokar
8b55d69fe1 Add empty MediaStream interface 2019-01-29 11:36:27 -08:00
Manish Goregaokar
bafbc0e1c0 Add empty MediaDevices interface 2019-01-29 11:36:27 -08:00
Manish Goregaokar
93a359e528 Add RTCPeerConnection::SetRemoteDescription 2019-01-29 11:36:27 -08:00
Manish Goregaokar
95cd67cb65 Add RTCPeerConnection::SetLocalDescription 2019-01-29 11:36:27 -08:00
Manish Goregaokar
cfc235bad2 Add createAnswer 2019-01-29 11:36:27 -08:00
Manish Goregaokar
c156289a0c Add createOfer 2019-01-29 11:36:27 -08:00
Manish Goregaokar
9521c3d5a4 Add RTCPeerConnection::AddIceCandidate 2019-01-29 11:36:27 -08:00
Manish Goregaokar
841dd1eb4b Fire negotiationneeded and icecandidate events 2019-01-29 11:36:27 -08:00
Manish Goregaokar
5bfa42094e Add RTCPeerConnectionIceEvent 2019-01-29 11:36:27 -08:00
bors-servo
65c2fcb460
Auto merge of #22777 - emilio:gecko-sync, r=emilio
style: Sync changes from mozilla-central.

<!-- 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/22777)
<!-- Reviewable:end -->
2019-01-29 08:19:14 -05:00
Manish Goregaokar
a43b9c0a8f Fill in RTCIceCandidate 2019-01-28 22:21:42 -08:00
Manish Goregaokar
be48cf23f9 Fill in RTCSessionDescription 2019-01-28 22:21:42 -08:00
Manish Goregaokar
69931934ac Add empty RTCIceCandidate interface 2019-01-28 22:21:42 -08:00
Manish Goregaokar
f8b3bac757 Add empty RTCSessionDescription interface 2019-01-28 22:21:42 -08:00
Manish Goregaokar
2dd69d0cb0 Add empty RTCPeerConnection interface 2019-01-28 22:21:42 -08:00
Emilio Cobos Álvarez
9909816c76 style: sort extern crates and fix servo build. 2019-01-29 03:17:24 +01:00
bors-servo
fe07d2c575
Auto merge of #22714 - aditj:patch-3, r=jdm
Added fetch_start functionality

<!-- Please describe your changes on the following line: -->
Added the fetch_start functionality in http_loader.rs (http_fetch function)

---
<!-- 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 #21258 (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/22714)
<!-- Reviewable:end -->
2019-01-28 18:45:26 -05:00
Adit Jain
77c9285780 Added fetch_start functionality in http_fetch
Added spec link for webidl.
Added fetch_start functionality to PRT .
Changed the fetch_start location
2019-01-24 23:18:54 +05:30
CYBAI
9d70f51356 Implement formdata event 2019-01-23 00:38:44 +08:00
Emilio Cobos Álvarez
90c0ec0cf7 Fix servo build and rustfmt recent changes.
We need to introduce another Cursor enum that is specific to embedder_traits and
that layout converts to to avoid dependency hell.
2019-01-20 16:31:01 +01:00
Fernando Jiménez Moreno
f5581a78ab Add media cache and implement HTMLMediaElement.buffering 2019-01-17 10:01:38 +01:00
Maharsh
0f17273276 Initial Steps OffScreenCanvas API 2019-01-15 22:45:34 -05:00
bors-servo
2cf9a00c99
Auto merge of #22399 - ferjm:poster.frame, r=jdm
Implement HTMLMediaElement poster attribute

- [X] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #22288
- [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/22399)
<!-- Reviewable:end -->
2019-01-14 17:35:23 -05:00
bors-servo
1f9b134794
Auto merge of #22348 - germangb:html_media_ended, r=ferjm
Implement Ended media attribute

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

This PR should implement:
* New method `HTMLMediaElement::earliest_possible_position()` for the [earliest possible position](https://html.spec.whatwg.org/multipage/media.html#earliest-possible-position)
* `Ended` attribute following https://html.spec.whatwg.org/multipage/media.html#ended-playback
* Queue steps for when the playback position reaches the end

This PR contains placeholders for the following issues (I can rebase changes after the corresponding PRs get merged)
- #22321 (Define the Loop attribute)
- #22293 (To identify playback direction. Either forwards or backwards)

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

<!-- 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/22348)
<!-- Reviewable:end -->
2019-01-14 06:35:45 -05: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
german gomez
5605f235c6 Implement Ended media attribute
Signed-off-by: german gomez <germangb42@gmail.com>
2019-01-11 18:13:11 +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