Commit graph

24415 commits

Author SHA1 Message Date
Josh Matthews
2acd295ea6 dom: Implement Navigator.languages. 2020-07-14 11:50:59 -04:00
bors-servo
9fe92ecb4c
Auto merge of #27229 - paulrouget:devtools_protocol_update, r=jdm
devtools: TabDescription actor

We could do better by creating the browsing context actor lazily, but that's good enough to re-enable devtools with a recent version of Firefox. fix #27113.
2020-07-13 09:15:31 -04:00
Paul Rouget
da80d4ff01 devtools: TabDescription actor 2020-07-13 09:21:27 +02:00
bors-servo
242e7e2630
Auto merge of #27232 - asajeffrey:webxr-depth-stencil, r=Manishearth
Support depth and stencil in webxr

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

Creates a `DEPTH_STENCIL` attachment if one is provided by the webxr device.

---
<!-- 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 we don't reftest webxr

<!-- 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-07-10 19:36:45 -04:00
Alan Jeffrey
a9bb3f7181 Support depth and stencil in webxr 2020-07-10 18:35:09 -05:00
bors-servo
a77a1f7bf4
Auto merge of #27235 - asajeffrey:webxr-sessionavailable, r=jdm
Add a sessionavailable event that allows content to enter an XR session without a user gesture

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

This allows servo to implement immersive web apps. https://immersive-web.github.io/webxr/#application-launch

---
<!-- 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 I'm not sure we should have a WPT for something this non-standard.

<!-- 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-07-10 18:14:10 -04:00
Alan Jeffrey
63663fada9 Add a sessionavailable event that allows content to enter an XR session without a user gesture 2020-07-10 14:09:18 -05:00
bors-servo
fb243a32f0
Auto merge of #27152 - ferjm:mediadevices.enumeratedevices, r=Manishearth
Mediadevices.enumeratedevices

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #26877
2020-07-10 08:42:27 -04:00
Fernando Jiménez Moreno
c0fb6c8d23 Implement MediaDevices.enumerateDevices() 2020-07-10 13:18:26 +02:00
Josh Matthews
63528f6fdf dom: Generate iterator symbol for interfaces with indexed getters. 2020-07-09 23:22:48 -04:00
Josh Matthews
aa80f91399 dom: Use pref macro for IDL conditional guards. 2020-07-09 23:22:48 -04:00
Alan Jeffrey
a2142d7dbd Add support for webxr cubemap and spherical 360 rendering 2020-07-09 14:02:23 -05:00
Josh Matthews
76198e40a8 net: Replace ws-rs with async-tungstenite. 2020-07-08 10:33:17 -04:00
bors-servo
bdbbed7562
Auto merge of #27198 - jdm:http-origin-test-debug, r=asajeffrey
Add debug output for intermittently failing test.

This should help narrow down the cause of #26895.
2020-07-07 17:01:01 -04:00
Josh Matthews
97dc591c7b Add debug output for intermittently failing test. 2020-07-07 13:48:48 -04:00
bors-servo
e61628420b
Auto merge of #27193 - gterzian:fix_monitor_test_timeout, r=jdm
improve reliability of hang monitor tests

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

FIX https://github.com/servo/servo/issues/27191

---
<!-- 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-07-07 10:51:41 -04:00
bors-servo
1b38197812
Auto merge of #27192 - gterzian:no_body_no_channel, r=jdm
Net: in the absense of a request body, assume streaming it cannot fail

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

FIX https://github.com/servo/servo/issues/27185

---
<!-- 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-07-07 02:49:50 -04:00
bors-servo
cbbbe16936
Auto merge of #27088 - jdm:group, r=ferjm
Implement Console grouping APIs.

These are used by Hubs and other sites we want to run.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #9274
- [x] These changes do not require tests because we can't test stdout content or devtools messages.
2020-07-07 01:24:03 -04:00
Gregory Terzian
256167eff2 improve reliability of hang monitor tests 2020-07-07 12:45:14 +08:00
Gregory Terzian
7d4b25663f net: in the absense of a request body, assume streaming it cannot fail 2020-07-07 11:10:04 +08:00
bors-servo
4a0cd44ee5
Auto merge of #27184 - jdm:font-crash, r=asajeffrey
Bail out from font loading if no default font can be loaded.

The font loading setup in font-kit doesn't quite work in UWP yet. This change avoids panics in web content that calls fillText while that is the case.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #27166
- [x] These changes do not require tests because they only occur on platforms that we can't test.
2020-07-06 22:31:32 -04:00
Josh Matthews
2d7effddef Implement Console grouping APIs. 2020-07-06 19:36:26 -04:00
bors-servo
ec9308199e
Auto merge of #27180 - kunalmohan:segfault, r=kvark
Remove segfaults in WebGPU threads

<!-- Please describe your changes on the following line: -->
I have also increased the number of staging buffers for presentation.
Segfault occurred at 2 places-
1. RenderPipeline descriptor.
2. BufferMapAsync callback.

r?@kvark

---
<!-- 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-07-06 17:45:09 -04:00
Kunal Mohan
9e7e9433e4 Remove segfaults in WebGPU threads 2020-07-07 01:55:03 +05:30
bors-servo
22a7522a04
Auto merge of #27168 - jdm:gl-fake-context-lost, r=Manishearth
Add stub isContextLost API.

We don't support losing contexts yet, so it's not lying to say that the context is never lost.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #27116
- [x] There are tests for these changes
2020-07-06 14:56:50 -04:00
Josh Matthews
8e33806b9d canvas: Bail out from font loading if no default font can be loaded. 2020-07-06 12:37:32 -04:00
bors-servo
1cd78e78f6
Auto merge of #26998 - gterzian:improve_task_cancelling, r=jdm
Use a stronger atomic guarantee when cancelling tasks

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

In the context of https://github.com/servo/servo/issues/22507

Note that the "other side" of these operations is at 0b61cfc3ae/components/script/task.rs (L102)

---
<!-- 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-07-06 11:11:25 -04:00
bors-servo
cf30457776
Auto merge of #27179 - jdm:rustup, r=SimonSapin
Update to 7/6 rustc.
2020-07-06 10:06:58 -04:00
Josh Matthews
6843d51a26 Update to 7/6 rustc. 2020-07-06 10:06:06 -04:00
bors-servo
d93e67a0bf
Auto merge of #27174 - muodov:form-invalid-event-removal, r=gterzian
Do not fire `invalid` event on form elements

This is a follow-up to my [previous PR](https://github.com/servo/servo/pull/27100) suggested by @gterzian.

`invalid` event on the `<form>` element has been [recently removed](https://github.com/whatwg/html/issues/4626) from the spec.

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

<!-- Either: -->
- [x] [WPT test](https://github.com/servo/servo/blob/master/tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/historical.window.js) marked as passing
2020-07-05 00:34:12 -04:00
bors-servo
f2e6f34a2b
Auto merge of #27173 - kunalmohan:gpu-queue-write, r=kvark
Implement GPUQueue write methods and update wgpu-core

<!-- Please describe your changes on the following line: -->
Implements `GPUQueue.writeBuffer` and `GPUQueue.writeTexture`.

r?@kvark

---
<!-- 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-07-04 21:32:43 -04:00
Maxim Tsoy
7fd903c214 Remove invalid event on a form element 2020-07-05 00:12:08 +02:00
Kunal Mohan
fae66089fa Implement GPUQueue.writeBuffer and GPUQueue.writeTexture 2020-07-04 21:49:32 +05:30
Kunal Mohan
8ef7f24541 Update wgpu-core and wgpu-types 2020-07-04 13:59:30 +05:30
bors-servo
8916a42180
Auto merge of #27163 - alarsyo:23053-layout-queries-disconnected-frames-panic, r=jdm
Return Option for Window's layout channel

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

`Window::layout_chan()` now returns an `Option<Sender<Msg>>`, returning `None` if the window is dead.

FIX #26969
FIX #26429
FIX #21208
FIX #19092
FIX #22559
FIX #22584
FIX #22652

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

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

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

This is my first contribution, I'm trying to figure things out!

This fix passes the test case shown in #23053, however I don't know what the behavior should be in `Document` and `ScriptThread` if `Window::is_alive()` is false : simply ignore it, don't do anything ? Or is this something that should not happen now that we return false in `Window::force_reflow()` ?

I'm not sure about the directory where the test case should go, any advice?
2020-07-04 01:30:27 -04:00
Josh Matthews
795560ad52 webgl: Add stub isContextLost API. 2020-07-03 14:47:06 -04:00
bors-servo
7fafd91593
Auto merge of #27154 - kunalmohan:async-presentation, r=kvark
WebGPU update presentation data asynchronously

<!-- Please describe your changes on the following line: -->
This PR aims to make updating Webrender presentation data non-blocking.
A callback is passed to the `buffer_map_async()` fn wherein the data is read and a message sent to the server itself to write the data into the shared `PresentationData` struct object.

r?@kvark

---
<!-- 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-07-03 14:01:55 -04:00
Antoine Martin
36fbbea2b5 Return Option for Window's layout channel 2020-07-03 20:00:26 +02:00
bors-servo
8800452e34
Auto merge of #27104 - utsavoza:ugo/issue-27030/28-06-2020, r=gterzian
Update referrer computation

The PR updates the request's referrer computation in consideration with the recent changes in [w3c/webappsec-referrer-policy#135](https://github.com/w3c/webappsec-referrer-policy/pull/135).

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #27030 and fix #14505
- [x] There are tests for these changes
2020-07-03 11:39:07 -04:00
Kunal Mohan
b672b78e19 WebGPU update presentation data asynchronously 2020-07-03 15:42:08 +05:30
bors-servo
4504eebdc3
Auto merge of #27143 - Manishearth:streamnodes, r=ferjm
Implement MediaStreamAudioDestinationNode, MediaStreamAudioSourceNode, MediaStreamTrackAudioSourceNode

Progress in https://github.com/servo/servo/issues/26097

This is a draft since we need the data channels stuff to land first

(also I need to make sure we're passing WPT)
2020-07-03 01:48:52 -04:00
Utsav Oza
1b9e84bd4c Ignore errors while setting username/password in strip_url_for_use_as_referrer 2020-07-03 10:33:07 +05:30
bors-servo
ee56d5d212
Auto merge of #27149 - paulrouget:key_events2, r=jdm
UWP: support virtual keyboard

Fix #26898 and fix #26680.

@jdm: can you test on the device?
2020-07-03 00:25:05 -04:00
Manish Goregaokar
718304709e Add AudioContext constructors for media stream nodes 2020-07-02 13:26:55 -07:00
Manish Goregaokar
0b998a1d1c Unpref MediaStream and MediaStreamTrack 2020-07-02 13:26:55 -07:00
Manish Goregaokar
6143173858 Add MediaStreamTrackAudioSourceNode 2020-07-02 13:26:55 -07:00
Manish Goregaokar
bc2267fb77 Add MediaStreamAudioSourceNode 2020-07-02 13:26:55 -07:00
Manish Goregaokar
2a838d935b Add MedaStreamAudioDestinationNode::stream 2020-07-02 13:26:55 -07:00
Manish Goregaokar
bf9614edf7 Add MediaStream::new_single() 2020-07-02 13:26:55 -07:00
Manish Goregaokar
6a001e7523 Add MediaStreamAudioDestinationNode 2020-07-02 13:26:55 -07:00