Commit graph

42538 commits

Author SHA1 Message Date
bors-servo
4b034ede46
Auto merge of #26752 - ferjm:datachannel, r=Manishearth
WebRTC data channels support

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

This depends on https://github.com/servo/media/pull/350 and contains the basic pieces to make a  simple test like https://ferjm.github.io/samples/src/content/datachannel/basic/ work
2020-06-30 13:53:32 -04:00
bors-servo
624559640f
Auto merge of #27122 - servo:dependabot/cargo/unicode-width-0.1.8, r=jdm
build(deps): bump unicode-width from 0.1.7 to 0.1.8

Bumps [unicode-width](https://github.com/unicode-rs/unicode-width) from 0.1.7 to 0.1.8.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/unicode-rs/unicode-width/commits/v0.1.8">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=unicode-width&package-manager=cargo&previous-version=0.1.7&new-version=0.1.8)](https://dependabot.com/compatibility-score/?dependency-name=unicode-width&package-manager=cargo&previous-version=0.1.7&new-version=0.1.8)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme

Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)

</details>
2020-06-30 12:03:01 -04:00
Fernando Jiménez Moreno
c2968fa2e5 Fix doc build 2020-06-30 17:38:18 +02:00
bors-servo
b7e1a9ae8b
Auto merge of #27118 - atouchet:icon, r=jdm
Update Servo logo files

<!-- Please describe your changes on the following line: -->
Update of #25846. Add new Servo logo files and remove some old versions.

Closes #25846

---
<!-- 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
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #___ (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. -->
2020-06-30 10:45:11 -04:00
Fernando Jiménez Moreno
27f439a71c Hide interfaces behind webrtc pref 2020-06-30 15:58:39 +02:00
bors-servo
db00c1f96e
Auto merge of #27114 - paulrouget:key_events, r=jdm
[UWP] Key events

This is the initial work required for proper keyboard events.
The text controller implementation is very basic, just enough to show the virtual keyboard when it's needed, and have basic key events.
2020-06-30 09:41:15 -04:00
Fernando Jiménez Moreno
a4f1bc2efc Update test expectations 2020-06-30 15:19:40 +02:00
dependabot-preview[bot]
37ab65cf0a
build(deps): bump unicode-width from 0.1.7 to 0.1.8
Bumps [unicode-width](https://github.com/unicode-rs/unicode-width) from 0.1.7 to 0.1.8.
- [Release notes](https://github.com/unicode-rs/unicode-width/releases)
- [Commits](https://github.com/unicode-rs/unicode-width/commits/v0.1.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-30 08:01:22 +00:00
Alex Touchet
c379b65307
Update Servo logo files 2020-06-29 23:20:54 -07:00
bors-servo
b9404fcd48
Auto merge of #27016 - gterzian:fix_closing_window, r=jdm,paulrouget
Ensure clean shutdown of JS threads

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

FIX https://github.com/servo/servo/issues/26685
FIX https://github.com/servo/servo/issues/26996
FIX https://github.com/servo/servo/issues/9672
FIX #27027

---
<!-- 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
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #___ (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. -->
2020-06-30 02:06:57 -04:00
Paul Rouget
2dcb78de13 UWP: Basic key events 2020-06-30 07:30:54 +02:00
Gregory Terzian
44ebca72da ensure clean shutdown of all threads running JS 2020-06-30 13:22:38 +08:00
Fernando Jiménez Moreno
6ebb73d9a4 Fix rooting issue 2020-06-29 16:53:50 +02:00
Fernando Jiménez Moreno
7eb44f81f2 Fix data channels borrowing errors 2020-06-29 16:53:50 +02:00
Fernando Jiménez Moreno
b968852456 Do not register data channel twice 2020-06-29 16:53:50 +02:00
Josh Matthews
a6a00d5e65 Use newer Ubuntu docker image. 2020-06-29 16:53:50 +02:00
Josh Matthews
9506fb63f5 Use a more correct package name. 2020-06-29 16:53:49 +02:00
Josh Matthews
cbdf95eb34 Use correct package name. 2020-06-29 16:53:49 +02:00
Josh Matthews
57699d87df Install libpcre on CI. 2020-06-29 16:53:49 +02:00
Josh Matthews
9ee349dee9 Remove gstreamer installation from docker. 2020-06-29 16:53:49 +02:00
Fernando Jiménez Moreno
51a9438b62 Add 1.16 feature to gstreamer 2020-06-29 16:53:49 +02:00
Fernando Jiménez Moreno
db0b9eee98 Update gstreamer-webrtc 2020-06-29 16:53:49 +02:00
Fernando Jiménez Moreno
820ea452e7 Set data channels as closed on peer connection close 2020-06-29 16:53:49 +02:00
Fernando Jiménez Moreno
2dedcaeaaf Allow receiving binary data channel messages 2020-06-29 16:53:48 +02:00
Fernando Jiménez Moreno
f855fbb604 Allow sending binary messages 2020-06-29 16:53:48 +02:00
Fernando Jiménez Moreno
7db485aeb2 RTCDataChannel.readyState getter 2020-06-29 16:53:48 +02:00
Fernando Jiménez Moreno
9d456d5d17 Use data channel ids 2020-06-29 16:53:48 +02:00
Fernando Jiménez Moreno
960b010d30 Cleanups and tidy fixes 2020-06-29 16:53:48 +02:00
Fernando Jiménez Moreno
ace0d7795e Fix rooting issues with data channels callbacks 2020-06-29 16:53:48 +02:00
Fernando Jiménez Moreno
f5c930087e Implement ondatachannel event 2020-06-29 16:53:48 +02:00
Fernando Jiménez Moreno
2c5fc3b3c8 Allow sending strings through data channels 2020-06-29 16:53:47 +02:00
Fernando Jiménez Moreno
82260a9d2b On data channel message handler 2020-06-29 16:53:47 +02:00
Fernando Jiménez Moreno
5c6dcbf54e Trigger RTCErrorEvent on data channel error 2020-06-29 16:53:47 +02:00
Fernando Jiménez Moreno
84598a5173 Introduce RTCError and RTCErrorEvent 2020-06-29 16:53:47 +02:00
Fernando Jiménez Moreno
4e6d3e7cec WebRTCDataChannel initial support 2020-06-29 16:53:47 +02:00
Fernando Jiménez Moreno
5788882b16 Update servo-media and gstreamer 2020-06-29 16:53:42 +02:00
bors-servo
6861b6cf33
Auto merge of #27107 - paulrouget:darktheme, r=jdm
UWP: Dark theme support

Removed hard coded colors and replaced icons with builtin icon font.
Fix #27058
2020-06-29 10:35:01 -04:00
bors-servo
56e0e557a5
Auto merge of #27106 - paulrouget:defaulturl, r=jdm
[UWP] Better default url management

Fix #27046
2020-06-29 09:23:09 -04:00
Paul Rouget
71bd7a4199 Add key up/down C API 2020-06-29 10:28:34 +02:00
Paul Rouget
7653c6c9fc update keyboard-types crate 2020-06-29 10:27:54 +02:00
Paul Rouget
7f6f58fac3 UWP: Dark theme support 2020-06-29 10:07:40 +02:00
Paul Rouget
2ef6ba25dc Fix DEFAULT_URL 2020-06-29 06:31:32 +02:00
bors-servo
345238a352
Auto merge of #26927 - asajeffrey:webxr-layer-management, r=Manishearth
Support for webxr layer management

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

This adds layer management to servo's webxr implementation, and removes all the special-cased code for openxr surface creation and opaque framebuffers.

---
<!-- 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's all back-end plumbing

<!-- 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. -->
2020-06-28 17:38:50 -04:00
Alan Jeffrey
349619ed2d Support for webxr layer management 2020-06-28 16:37:45 -05:00
bors-servo
18f854aeb8
Auto merge of #27105 - servo-wpt-sync:wpt_update_28-06-2020, r=servo-wpt-sync
Sync WPT with upstream (28-06-2020)

Automated downstream sync of changes from upstream as of 28-06-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-06-28 09:57:35 -04:00
WPT Sync Bot
f0b9f552c9 Update web-platform-tests to revision c1518503b6d1a94bdd5bf6426b8279293b2325d2 2020-06-28 10:40:48 +00:00
bors-servo
af110ac21f
Auto merge of #27084 - kunalmohan:gpu-buffer-mapping, r=kvark
Implement GPUBuffer.mapAsync and update wgpu-core

<!-- Please describe your changes on the following line: -->
This PR covers the following-
1. update wgpu-core to use serializable `RenderPass` and `ComputePass`. Implement `DispatchIndirect`.
2. Implement `GPUBuffer.mapAsync()`.

The `mapAsync()` methods has the following flow-
1. A new promise is created in `mapAsync()` and a message sent to the server-side. This returns a promise.
2. On the server-side, a `struct BufferMapInfo` object stores the relevant info required to send data to the client-side on completion of mapping. This object is stored in a `buffer_maps: HashMap<id::BufferId, BufferMapInfo<'a>>,` in `WGPU`. `buffers_maps` basically stores the data for buffers with pending mapping.
3. `buffer_map_async()` command is issued with a callback responsible to send the data back to the client.
4. All the devices are polled every time the server receives a new message.
5. The data is sent back on completion and promise resolved through `AsyncWGPUListener` (similar to how the `requestDevice()` and `RequestAdapter` are processed).
6. On receiving the data, the client sends back a `BufferMapComplete` message to the server to remove the entry from `buffer_maps` hashmap.

I intended to implement `getMappedRange()`, too, in this PR but it's quite a task in itself (implementing intersecting ArrayBuffers). This already being a 500+ line PR, I thought it best to get this model approved first (also it will probably be easier to review this and `getMappedRange` separately). `getMappedRange` would come up in the next one.

---
<!-- 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
- [ ] 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. -->
2020-06-27 14:29:08 -04:00
bors-servo
223b6843db
Auto merge of #27102 - servo-wpt-sync:wpt_update_27-06-2020, r=jdm
Sync WPT with upstream (27-06-2020)

Automated downstream sync of changes from upstream as of 27-06-2020.
[no-wpt-sync]
r? @servo-wpt-sync
2020-06-27 13:46:26 -04:00
Kunal Mohan
db2d313a1b Fix ArrayBuffer creation in buffer mapping 2020-06-27 21:32:18 +05:30
Josh Matthews
0ab8826995
Add expected linux failure. 2020-06-27 11:16:20 -04:00