There are a number of issues with the current gradient dithering
implementation, that cause many test failures and also fuzziness
rendering when enabling DirectComposition virtual surfaces. In
particular, the dither result is dependent on the offset of the
update rect within a render target.
For now, this patch disables gradient dithering by default. This
gives us:
- A heap of new test PASS results (or reduced fuzziness).
- Fixes a number of non-deterministic fuzziness bugs with DC.
- Improves performance of gradient rendering by a reasonable amount.
We can fix gradient dithering as a follow up, and re-enable if/when
we find content that would benefit from it significantly (we may
be able to improve gradients in other ways than dithering too).
Differential Revision: https://phabricator.services.mozilla.com/D60460
--HG--
extra : moz-landing-system : lando
This just reapplies the changes, with some context edits because the whitespace changed.
Differential Revision: https://phabricator.services.mozilla.com/D60471
--HG--
extra : moz-landing-system : lando
The changes are as follows:
1) Add an id (and a change in the test label) in the test that now ends up
reading:
const channel = pc.createDataChannel('', { negotiated: true, id: 42 });
2) Add some whitespace bits.
3) Removes a bogus test (thus fixing bug 1550497). The test is bogus because
`null` converts to 0 when converting to `unsigned short`, and that's a
perfectly valid id value.
Compared to upstream, that leaves the following local changes:
* Tests for the "id in the unsigned short range, maybe invalid, but
'negotiated' not set" case.
* A clarification for one of the test descriptions.
* Tests for the "id out of the unsigned short range" case.
These changes are upstreamed in https://github.com/web-platform-tests/wpt/pull/21285
Differential Revision: https://phabricator.services.mozilla.com/D60472
--HG--
extra : moz-landing-system : lando
This is a clean revert of the changes bug 1609859 made to
RTCPeerConnection-createDataChannel.html. It's separated out for review ease;
these changes are reinstated 2 changesets later.
Differential Revision: https://phabricator.services.mozilla.com/D60470
--HG--
extra : moz-landing-system : lando
This is unaffected by the differences in font metrics between platform back-ends,
so should be safe to ship without significant risk that it'll be unstable or need
to be revised in future.
Depends on D59679
Differential Revision: https://phabricator.services.mozilla.com/D59680
--HG--
extra : moz-landing-system : lando
This is extracted from the original patch by Richard Matheson; it's not strictly necessary
to implementing the additional TextMetrics attributes, but OTOH if we're going to potentially
expose baseline attributes, it seems sensible to make them somewhat more meaningful than the
fallbacks in the current code.
Eventually we should use baseline tables from the font, but (a) we don't have support for
that in the back-end font code, and (b) very few fonts provide the data anyway, so while this
isn't perfect, for now it's the best we can do.
Differential Revision: https://phabricator.services.mozilla.com/D59678
--HG--
extra : moz-landing-system : lando
Automatic update from web-platform-tests
[Import Maps] Migrate Jest-based parsing tests into JSON-based
This CL
- Converts Jest-based parsing tests into JSONs
(with minor refinement, and removing test cases depending
on interoperability issues of underlying URL parsers),
- Adjust the JSON schema for parsing tests, and
- Removes imported resolution tests.
The test failures
(virtual/import-maps-without-builtin-modules/external/wpt/import-maps/common/parsing.tentative.html)
are due to https://github.com/WICG/import-maps/issues/184, i.e.
whether `null` mappings are removed from parsed import map or not.
Bug: 1026809, https://github.com/WICG/import-maps/issues/170
Change-Id: If1e53cbeafd44c1de1a7fa38ef646fcd5721b495
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1982509
Reviewed-by: Domenic Denicola <domenic@chromium.org>
Commit-Queue: Hiroshige Hayashizaki <hiroshige@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731910}
--
wpt-commits: a5e2efd90b6766f33e94d92e1858a68f8c40c977
wpt-pr: 21064
Automatic update from web-platform-tests
[WPT/common/security-features] Allow `excluded_tests` based on `expectation` value
Previously: `excluded_tests` excluded selections
that have the same values for the fields included in `selection_pattern`.
However, as `selection_pattern` doesn't contain `expectation`,
`expectation` can't be used in `excluded_tests`, blocking [1].
After this CL: `excluded_tests` excluded selections
that have the same values for all the fields (except for `name`).
For this purpose, this CL:
- Sets `delivery_key` for `excluded_selection`, so that
selections and excluded selections have the same set of fields.
- Uses `dump_test_parameters()` rather than `selection_pattern`
for exclusion matching (`exclusion_dict`).
- Applies exclusions after all overrides are processed.
This is a fix for cases like:
- "default" selection A
- "override" selection B, overriding A
- exclusion pattern E, matching B but not A
Previously: E excludes B but not A, so A is generated.
After this CL: B overrides A, then E excludes B.
As A is already overridden, no selections are generated.
This CL doesn't change generated results, because before [1]
there are no cases hitting these issues.
[1] https://chromium-review.googlesource.com/c/chromium/src/+/1991066
Bug: 906850
Change-Id: Ifa36167df710edd89d4e572346a3f1b928710119
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1991074
Commit-Queue: Hiroshige Hayashizaki <hiroshige@chromium.org>
Reviewed-by: Mike West <mkwst@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731904}
--
wpt-commits: 61616b5bfd5e7c0e86e68b6e4fbb0192ba78d170
wpt-pr: 21185
Automatic update from web-platform-tests
[WPT/common/security-features] Keep field order of spec.src.json
For easier debugging for [1]:
[1] will dump merged spec JSONs into files.
Keeping the field order makes taking diff easy.
[1] https://chromium-review.googlesource.com/c/chromium/src/+/1991066
Bug: 906850
Change-Id: Ibef14a818a52b4c58ee60272ecb2c1c653842a93
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1991073
Commit-Queue: Hiroshige Hayashizaki <hiroshige@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Mike West <mkwst@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731900}
--
wpt-commits: 2f7ba1096225f74ae6ee4850df0db5aebf3534cf
wpt-pr: 21184
Automatic update from web-platform-tests
[WebNFC] Rename push NDEFWriter method to write
Following spec change at https://github.com/w3c/web-nfc/pull/526, this
CL renames NDEFWriter.push to NDEFWriter.write and NDEFPushOptions to
NDEFWriteOptions.
BUG=520391
Change-Id: Icfaec0609e8cb6145eef4f344519e2ff7b04159c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1993805
Reviewed-by: Rijubrata Bhaumik <rijubrata.bhaumik@intel.com>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Leon Han <leon.han@intel.com>
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/master@{#731890}
--
wpt-commits: 48483e8e5afed7db92b43a05c4e7963b613f6ba9
wpt-pr: 21143
Automatic update from web-platform-tests
Fail when calling createOffer in the wrong signaling state (#20845)
* Fail when calling createOffer in the wrong signaling state
close#16188 per https://github.com/w3c/webrtc-pc/issues/2145
--
wpt-commits: 841671e2b4e2bba13b76a805723c4cfb4560dbe9
wpt-pr: 20845
Automatic update from web-platform-tests
Use getNoiseStream instead of getUserMedia (#20862)
* Use getNoiStream instead of getUserMedia
Avoid dependency on device permission
May enable to switch the tests from https to http (since they should apply generally)
* Add dependency to RTCPC-helpers to addTransceiver test to use getNoiseStream
--
wpt-commits: 213a7607e8d6ba44d88f1774319e6c1c82ab1ccb
wpt-pr: 20862
Automatic update from web-platform-tests
Fix bidi-reordering not to break inline box nesting
This patch fixes bidi-reordering to compute children of
inline boxes correctly. r728439 <crrev.com/c/1980663> broke
the computation when two inline boxes are adjacent without any
text/spaces between them,
Bug: 1040884
Change-Id: I0368a94b3b2d4cabd62bd82e1114fcadabf81acc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2000399
Commit-Queue: Koji Ishii <kojii@chromium.org>
Reviewed-by: Yoshifumi Inoue <yosin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731860}
--
wpt-commits: 0902595fbf20511c455512fb1d268da7763496f5
wpt-pr: 21179
Automatic update from web-platform-tests
[WPT/common/security-features] Move per-project config into spec.src.json
[1] will enable sub projects inheriting parent's `spec.src.json`,
in order to generate similar but subtlely different tests.
As a preparation for [1],
this CL centralizes per-project configs into `spec.src.json`,
by moving config values from per-project `generate.py` into `spec.src.json`.
- `spec_directory` is now the current directory,
or specified by the `--spec` command line option,
while previously it is calculated based on the per-project `generate.py`'s path.
- Script paths (`helper_js`, `sanity_checker_js`, `spec_json_js`) are now hard-coded
(using `spec_directory`) in `common/security-features/tools/generate.py`.
- Other config values are moved into `spec.src.json`.
- `spec_json.js` is moved under `generic/`, to a little centralize
generator-related files into `generic/`.
Generated files are affected because:
- Scripts (like `test-case.sub.js`) are now referenced as relative paths
from generated test HTMLs.
- `disclaimer.template` is updated.
Generated files will be updated in a separate CL [2].
[1] https://chromium-review.googlesource.com/c/chromium/src/+/1991066/
[2] https://chromium-review.googlesource.com/c/chromium/src/+/1992955/
Bug: 906850
Change-Id: Id3b2a26b67296a1de2b682e07bdcf473f666cd25
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1989718
Commit-Queue: Hiroshige Hayashizaki <hiroshige@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731858}
--
wpt-commits: d0adb1443bac2da650b04db557cf38ae6b368071
wpt-pr: 21123
Automatic update from web-platform-tests
[FlexNG] Fix min-width: auto for flex item tables
This patch only modifies the min-width: auto case for tables by skipping
the flex-specific behavior and just using the table's preferred minimum
width as calculated by legacy. We now match legacy when tables are flex
items.
But I think when the spec was updated in
66241e4896,
legacy became incorrect in cases where min-width is specified. Compare
css/css-flexbox/table-as-item-fixed-min-width.html with
http://wpt.live/css/css-flexbox/table-as-item-auto-min-width.html . The
only difference is an additional min-width: 5px that should have no
effect but does, see https://i.imgur.com/yMxUdeI.png for how the new
test renders in legacy.
An older patchset (3) does what I think is the newly-correct behavior,
which also says that
http://wpt.live/css/css-flexbox/table-as-item-wide-content.html is
invalid -- the green square should be 500px wide.
Bug: 845235
Change-Id: Ica870fe3aa12fc1fbeb2388c0f2c69263c5e8860
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1995617
Commit-Queue: David Grogan <dgrogan@chromium.org>
Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731785}
--
wpt-commits: 04b48bfa0229518fe6c198d1eb3fb40a6ea8db7a
wpt-pr: 21137
Automatic update from web-platform-tests
Change EncryptionScheme to match latest spec
The current version of the EME spec
(https://w3c.github.io/encrypted-media/) has encryptionScheme as a
DOMString with an additional value allowed ("cbcs-1-9"). Updating
the code to match this.
This also moves the feature to stable now that it has been approved.
With this change the W3C test
(https://wpt.live/encrypted-media/clearkey-check-encryption-scheme.https.html)
passes.
Bug: 1035153
Test: Updated media_blink_unittests, browser_tests, and WPT tests pass
Change-Id: I00cb2ce8a4c4f52f95817471226b5e8129660247
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1972617
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Xiaohan Wang <xhwang@chromium.org>
Commit-Queue: John Rummell <jrummell@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731780}
--
wpt-commits: 48159f641f5208218a47d4dde463ac8f3e05e80a
wpt-pr: 21121
Automatic update from web-platform-tests
WebXR: add WPT for AR module.
This is adding tests for:
- isSessionSupported (immersive-ar on AR & VR devices).
- requestSession (immersive-ar on AR & VR devices).
- environmentBlendMode allowed values in AR & VR.
Bug: 949296
Change-Id: Idee7a1d03a0f9bc961e65a225e8fcc851c2eaa14
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2001196
Reviewed-by: Piotr Bialecki <bialpio@chromium.org>
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731752}
--
wpt-commits: 179c0be0909aa2d291b096ddfe672bb149abb64d
wpt-pr: 21175
Automatic update from web-platform-tests
WebIDL: [PutForwards] should not throw if [[Set]] has failed (#21039)
This tests https://github.com/heycam/webidl/pull/832.
Co-authored-by: Timothy Gu <timothygu99@gmail.com>
--
wpt-commits: 585514a9a7198148ba844895dbcd4c273f186cfe
wpt-pr: 21039
Automatic update from web-platform-tests
Add alignment.css ref to align-content-distribution tests
This CL:
* adds a required reference to the alignment.css resource file,
that provides alignment-related CSS classes used in several test cases.
Adding this reference fixes the align-content-distribution tests.
* changes the dimension of grids having 3 rows, .verticalLR and
.stretchedGrid classes, and gives them a new value of 300px width and
400px height (by using the class .width300height400).
This way each row width is now equal to 300px/3=100px, instead of
the previous dimension of 400px/3=133,33...px. The 133,33...px dimension
was, in fact, interpreted differently in different browsers,
thus making some tests fail in WebKit and Firefox.
* removes the -expected.txt files, related to align-content-distribution
tests, that were generated when these tests were failing.
Change-Id: I404dd188e8a2275042b4ace218c78a99e3248be5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1996303
Reviewed-by: Javier Fernandez <jfernandez@igalia.com>
Commit-Queue: Javier Fernandez <jfernandez@igalia.com>
Cr-Commit-Position: refs/heads/master@{#731689}
--
wpt-commits: bd72596a728176e5c00b21c2ca3193bc45516cf8
wpt-pr: 21174
Automatic update from web-platform-tests
Unborking the accept-ch-lifetime CH WPT
Due to some broswer-state related flakiness, the
"accept-ch-lifetime.tentative.https.html" test was split
into several different files. Also, all mentions of "lifetime"
in the tests was removed to keep up to date with the Client Hint
spec.
Change-Id: I1c06b82d8cbe8bd6e304f5c1fa1d058b100a825c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1994422
Reviewed-by: Yoav Weiss <yoavweiss@chromium.org>
Commit-Queue: Aaron Tagliaboschi <aarontag@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731583}
--
wpt-commits: a0217b3005ca5ba23f37889b730f7692e3d94e38
wpt-pr: 21144
--HG--
rename : testing/web-platform/tests/client-hints/resources/accept_ch_lifetime.html.headers => testing/web-platform/tests/client-hints/accept-ch-stickiness/resources/accept-ch.html.headers
rename : testing/web-platform/tests/client-hints/resources/clear-site-data.html.headers => testing/web-platform/tests/client-hints/accept-ch-stickiness/resources/clear-site-data.html.headers
rename : testing/web-platform/tests/client-hints/resources/http_equiv_accept_ch_lifetime.html.headers => testing/web-platform/tests/client-hints/accept-ch-stickiness/resources/http-equiv-accept-ch.html.headers
Automatic update from web-platform-tests
Create a test object in wheel event tests
When I tried to run mouse event wpt tests manually with mouse wheel,
uievents/order-of-events/mouse-events/wheel-basic-manual.html
uievents/order-of-events/mouse-events/wheel-scrolling-manual.html
I got the error "Harness status: Error done() was called without first
defining any tests". I create a test object inside these two tests and
call done() with these test objects.
Bug: 1040611
Change-Id: I1f11f1587540fb335f4361b2cbbd88c8794a5d72
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1993117
Reviewed-by: Navid Zolghadr <nzolghadr@chromium.org>
Commit-Queue: Lan Wei <lanwei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731538}
--
wpt-commits: 30b4a2b527324b03441d7afc7e24a1bc0edfb4a9
wpt-pr: 21118
Automatic update from web-platform-tests
DOM Overlay: update API to match current draft spec
The current draft spec https://immersive-web.github.io/dom-overlays/ has
several API shape changes compared to the currently-implemented
prototype, and this CL updates the implementation to match the new API.
Instead of asking applications to use the Fullscreen API to change
the active DOM overlay element, use a separate initialization dictionary
to configure this at session creation time, and make that unmodifiable
from that point on until the session ends.
Also add a domOverlayState XRSession attribute that shows that the
mode is working (this isn't obvious if it was requested as an optional
feature), and also the type of overlay (screen or floating).
This change is part of a series. The following parts are logically also
part of the API update, but split out to keep the size more manageable.
The next steps include renaming the feature name and implementing the
new event deduplication logic.
Bug: 991747
Change-Id: I032fba53f0180d791b0999ed93393bfb4467b3cd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1974596
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Mustaq Ahmed <mustaq@chromium.org>
Reviewed-by: Piotr Bialecki <bialpio@chromium.org>
Commit-Queue: Klaus Weidner <klausw@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731443}
--
wpt-commits: 62c94c1e9ed588bebd1ac6874108a4bd5bf80510
wpt-pr: 20928