Change the default value of `dom.webgpu.enabled` from `false` to `true` in Nightly builds.
Everything in `dom/webidl/WebGPU.webidl` that is `Exposed=(Window)` is also gated on the `dom.webgpu.enabled` pref, so it should not appear on `window` in beta or release builds.
Beyond that, WebGPU is not usable in beta or release builds regardless of the pref setting, because of these lines of code in `dom/webgpu/Instance.cpp`:
#ifdef RELEASE_OR_BETA
if (true) {
return "WebGPU is not yet available in Release or Beta builds.";
}
#endif
This function is the only way to create a `GPUAdapter`, which is the only way to access any interesting parts of the WebGPU API.
The mochitest `dom/webgpu/mochitest/test_disabled.html` checks that the value of the `dom.webgpu.enabled` pref is `false`. This is now only appropriate in beta and release builds, so change `dom/webgpu/mochitest/mochitest-no-pref.ini` accordingly.
Update feature gate description in `toolkit/components/featuregates/FeatureGate.toml`.
Differential Revision: https://phabricator.services.mozilla.com/D173475
Change the default value of `dom.webgpu.enabled` from `false` to `true` in Nightly builds.
Everything in `dom/webidl/WebGPU.webidl` that is `Exposed=(Window)` is also gated on the `dom.webgpu.enabled` pref, so it should not appear on `window` in beta or release builds.
Beyond that, WebGPU is not usable in beta or release builds regardless of the pref setting, because of these lines of code in `dom/webgpu/Instance.cpp`:
#ifdef RELEASE_OR_BETA
if (true) {
return "WebGPU is not yet available in Release or Beta builds.";
}
#endif
This function is the only way to create a `GPUAdapter`, which is the only way to access any interesting parts of the WebGPU API.
The mochitest `dom/webgpu/mochitest/test_disabled.html` checks that the value of the `dom.webgpu.enabled` pref is `false`. This is now only appropriate in beta and release builds, so change `dom/webgpu/mochitest/mochitest-no-pref.ini` accordingly.
Differential Revision: https://phabricator.services.mozilla.com/D173475
Since we can't synchronously load ESModules yet, we use a new
abstraction of ensureCustomElements to ensure we have access to the
moz-support-link widget in popup-notifications.inc. The previous pattern
of loading the widget via module script does not work in this case due
to browser.xhtml, as we do not want to block on this path.
Differential Revision: https://phabricator.services.mozilla.com/D170254
With these changes, it's no longer necessary to store the normalSize on
the window, since we never check it, nor check for resize events. This
also removes the flaky timeouts, and replaces them with an executeSoon.
For some of the fullscreen tests, the number of calls to enter and exit
fullscreen are not matched. Since that count is essential for the checks
of whether or not the screen is in the expected fullscreen, this defines a
method that can force the count to a specific value. This is used in some
of the fullscreen tests to get the expected results.
Differential Revision: https://phabricator.services.mozilla.com/D172852
Also update the devtools CSS db (using ./mach devtools-css-db), and update a
DOM test `test_interfaces.js` to make it aware of newly-exposed (and
Nightly-specific for now) ContentVisibilityAutoStateChangeEvent.
Differential Revision: https://phabricator.services.mozilla.com/D171514
Removed a bad test-case from RTCDataChannel-send.html that was trying to
create gigabyte-sized buffers to test the max message size for DataChannel.
Differential Revision: https://phabricator.services.mozilla.com/D169235
Also update a DOM test `test_interfaces.js` to make it aware of newly-exposed
(and Nightly-specific for now) ContentVisibilityAutoStateChangeEvent.
Differential Revision: https://phabricator.services.mozilla.com/D171514
We've done some updates to this test previously when we enable
ORB (without JS validation) already. Now, we have JS validation
added and more requests are blocked, so we need to change
the expectation for more sub-tests.
Differential Revision: https://phabricator.services.mozilla.com/D169278
These tests involve a bunch of no-cors fetch requests which use
`file_CrossSiteXHR_server.sjs` for sending the response back.
Depends on the request's URL, the response can possibly be
```
response.setHeader("Content-Type", "application/xml", false);
response.write("<res>hello pass</res>\n");
```
which will make JS validator to run and blocks.
The fix here is to toggle the pref of ORB when running the tests,
so we test both with ORB and without ORB behaviors, with different
expectations.
Differential Revision: https://phabricator.services.mozilla.com/D169277
We've done some updates to this test previously when we enable
ORB (without JS validation) already. Now, we have JS validation
added and more requests are blocked, so we need to change
the expectation for more sub-tests.
Differential Revision: https://phabricator.services.mozilla.com/D169278
These tests involve a bunch of no-cors fetch requests which use
`file_CrossSiteXHR_server.sjs` for sending the response back.
Depends on the request's URL, the response can possibly be
```
response.setHeader("Content-Type", "application/xml", false);
response.write("<res>hello pass</res>\n");
```
which will make JS validator to run and blocks.
The fix here is to toggle the pref of ORB when running the tests,
so we test both with ORB and without ORB behaviors, with different
expectations.
Differential Revision: https://phabricator.services.mozilla.com/D169277
We've done some updates to this test previously when we enable
ORB (without JS validation) already. Now, we have JS validation
added and more requests are blocked, so we need to change
the expectation for more sub-tests.
Differential Revision: https://phabricator.services.mozilla.com/D169278
These tests involve a bunch of no-cors fetch requests which use
`file_CrossSiteXHR_server.sjs` for sending the response back.
Depends on the request's URL, the response can possibly be
```
response.setHeader("Content-Type", "application/xml", false);
response.write("<res>hello pass</res>\n");
```
which will make JS validator to run and blocks.
The fix here is to toggle the pref of ORB when running the tests,
so we test both with ORB and without ORB behaviors, with different
expectations.
Differential Revision: https://phabricator.services.mozilla.com/D169277
We've done some updates to this test previously when we enable
ORB (without JS validation) already. Now, we have JS validation
added and more requests are blocked, so we need to change
the expectation for more sub-tests.
Differential Revision: https://phabricator.services.mozilla.com/D169278
These tests involve a bunch of no-cors fetch requests which use
`file_CrossSiteXHR_server.sjs` for sending the response back.
Depends on the request's URL, the response can possibly be
```
response.setHeader("Content-Type", "application/xml", false);
response.write("<res>hello pass</res>\n");
```
which will make JS validator to run and blocks.
The fix here is to toggle the pref of ORB when running the tests,
so we test both with ORB and without ORB behaviors, with different
expectations.
Differential Revision: https://phabricator.services.mozilla.com/D169277
These tests were accidentally disabled because some tests were
moved to another directory in bug 1798274, but their corresponding
annotations were not.
Differential Revision: https://phabricator.services.mozilla.com/D170488
Removed a bad test-case from RTCDataChannel-send.html that was trying to
create gigabyte-sized buffers to test the max message size for DataChannel.
Differential Revision: https://phabricator.services.mozilla.com/D169235