Skip to content

[pull] master from web-platform-tests:master#2254

Merged
pull[bot] merged 17 commits into
All-Blockchains:masterfrom
web-platform-tests:master
Jun 11, 2026
Merged

[pull] master from web-platform-tests:master#2254
pull[bot] merged 17 commits into
All-Blockchains:masterfrom
web-platform-tests:master

Conversation

@pull

@pull pull Bot commented Jun 11, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

alisonmaher and others added 17 commits June 10, 2026 21:09
Follow up to CL:7853073 that more correctly applies the max possible
contribution from an auto placed subgrid to every track.

A new `LargestAutoPlacedSubgridContribution` helper was added to compute
the largest per-track extra margin from the subgrid's accumulated
start/end extra margins and gutter-size delta, accounting for the
different kinds of subgrid span sizes.

For auto-placed subgrids, that contribution is multiplied by each set's
track count and broadcast to every set in the parent track collection.
This allowed us to removed the need to create a set to track mapping as
we were doing before.

We have a few new test passes, and various expected files needed to be
updated for the new expected behavior.

Bug: 343257585
Change-Id: I20aebc0abddd6c30ee7e1ac12317b2c80470d6fc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7903772
Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org>
Commit-Queue: Alison Maher <almaher@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1644835}
Document::IsFocusAllowed() used to return early based on the target
frame being a main frame or having transient user activation. In this
way, a restricted iframe could initiate a focus call whose target was
the main frame or an activated frame and bypass its own
focus-without-user-activation policy.

Now when BlockingFocusWithoutUserActivation is enabled, check transient
user activation on the initiator frame instead.

Keep the legacy target-based main-frame/activation short-circuit only
for the feature-disabled path, so existing behavior is preserved when
enforcement is off.

There's an issue filed on WHATWG/HTML about this here
whatwg/html#12470

Bug: 513330788, 40095111
Change-Id: I7b050ae1c46ca3400c0fcc0bcce4cfd04594d7ee
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7856510
Reviewed-by: Jacques Newman <janewman@microsoft.com>
Commit-Queue: Fernando Fiori <ffiori@microsoft.com>
Reviewed-by: Dan Clark <daniec@microsoft.com>
Auto-Submit: Fernando Fiori <ffiori@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1644919}
This aligns with Firefox to implement the clip behaviour of the select
element in the UA-stylesheet. See:
https://searchfox.org/firefox-main/rev/f19dd05bb08e26d46137ce52924e35ff7a501dfe/layout/style/res/forms.css#211

This is currently unspecified, and there is an open issue on the HTML
spec here: whatwg/html#10031

Behind the flag: SelectUsesUAClip

Additionally we need to specify overflow-clip-margin:content-box to
maintain our previous behaviour which differs slightly from Firefox.

Change-Id: Icdc61604603f5b15735958b1b95e408fb74e7b1b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7916526
Reviewed-by: David Baron <dbaron@chromium.org>
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1644964}
If a document is controlled by a Service Worker, its own Connection-
Allowlist headers will be checked in Blink before delegating the fetch
to the worker. If this fetch would violate the document's allowlist,
reports are now sent to the proper reporting endpoint.

Bug: 514301027
Fixed: 514301027
Change-Id: I717606f6c5da4b01bfdd1ab80e5c202f9054d7c2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7913564
Reviewed-by: Mike West <mkwst@chromium.org>
Reviewed-by: Shivani Sharma <shivanisha@chromium.org>
Commit-Queue: Andrew Verge <averge@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1644978}
In the files for this WPT, empty italics elements are used to allow
artificial spacing, but were not intended to otherwise impact the
layout. However, italics may impact the height by a small amount
dependent on the platform implementation, causing a difference between
the ref file (where both divs have <i> elements) and the primary file
(where only 1 div has <i> elements).

This change suppresses the italicizing style impact of these tags,
reducing them to their original intent (horizontal spacing control).

This in turn fixes the runs for Windows builds, where the sub-pixel
rounding for this font, at this size, in italics, was rounding up
(resulting in a total height of 38px), but for this font, at this size,
in *not* italics, was rounding down (resulting in a total height of
37px). The Windows runs would also pass if the font size was instead
slightly adjusted such that it didn't happen to hit this rounding
boundary (e.g. switching to 1em), but suppressing the italics entirely
is a more stable and accurate fix.

Bug: 40886056
Change-Id: Iea32231eab4b70b85826623a38bb84d6d9f49b25
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7909589
Reviewed-by: Koji Ishii <kojii@chromium.org>
Commit-Queue: Hoch Hochkeppel <mhochk@microsoft.com>
Reviewed-by: Alison Maher <almaher@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1645003}
If the touch action causes scrolling or panning, there is no pointerup event;
a pointercancel event is fired instead. So we don't need to do additional checks.

Differential Revision: https://phabricator.services.mozilla.com/D304738

bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=2043435
gecko-commit: d89a257db94c47d003d4fe82dcbd450d0d6aa644
gecko-commit-git: 0ec94e83499231b925d74c1b6eff24d43400c703
gecko-reviewers: smaug, media-playback-reviewers, alwu
Items subgridded to a parent grid-lanes subgrid did not account for the
subgrid's accumulated start/end extra margins or gutter-size delta when
contributing to track sizing. As a result, tracks could be undersized.

This change folds the surrounding subgrid's extra margins into each
subgridded item's margin sum so the contribution flows naturally through
every contribution variant:

- For definite-placed items, apply the subgrid's start and end extra
 margins at the item's known set indices, matching the analogous path
 in display:grid.

- For auto-placed items, the placement is not yet known, so apply the
 largest possible per-track contribution using the existing helper
 that computes the largest auto-placed subgrid contribution.

This change also guards two min/max content size callers so that the
subgrid min/max sizes are only computed when the subgrid item's columns
axis is standalone. Without this, an orthogonal subgrid whose columns
axis is itself subgridded triggers a DCHECK.

A number of tests had their expectations updated and some had issues in
the test file that have been fixed, and all subgrid gap tests are now
passing.

Bug: 343257585
Change-Id: Ida1355e6a6fce96b18a8ea0c43b2c6263313c3f7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7904951
Reviewed-by: Ian Kilpatrick <ikilpatrick@chromium.org>
Commit-Queue: Alison Maher <almaher@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1644934}
In the crashtest, what's going on is that we try to share between two
cousins that happen to be in the same tree position, one on a shadow
tree and one outside.

The assert fires because well, shadow data is the same (None) for both,
but one matches light dom rules and another doesn't, so the revalidation
fires and finds the :first-child selector for one and not the other.

This doesn't cause a correctness issue on that crashtest because the
length comparison fails, but it does cause correctness issues that are
not caught by the assert (see the reftest).

Differential Revision: https://phabricator.services.mozilla.com/D305878

bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=2044746
gecko-commit: 2a3233eabd96abff840aa287181f5e45dffadf05
gecko-commit-git: 140f92d33fe27773374654b15f41958dbfe01c30
gecko-reviewers: firefox-style-system-reviewers, dshin
bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=2044746
gecko-commit: df6fafd76c751d15e89a9fa6b32c8f6e43acea67
gecko-commit-git: a9178d81a6a06a6cd9c9cde81fe072e269d7d12b
The `ruby-overhang-spaces-vertical-003.html` test fails in the wpt.fyi
Linux Docker environment due to a 1px mismatch, despite passing in the
Chromium infrastructure.

To resolve it, this CL updates the test to use the mplus font.

This CL has been tested by using the WPT docker image.
Docker Image: ghcr.io/web-platform-tests/wpt

web-platform-tests dashboard:
https://wpt.fyi/results/css/css-ruby?q=ruby-overhang-spaces-vertical-003.html

Bug: 499042741, 366873207
Change-Id: Ice3b660fc6d59c5399714409ed4c6ae00e63ece2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7916971
Reviewed-by: Koji Ishii <kojii@chromium.org>
Reviewed-by: Kent Tamura <tkent@chromium.org>
Commit-Queue: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1645149}
This CL removes the chrome-extension:// origin test because this URL
origin is not necessarily considered potentially trusthworthy. See
https://w3c.github.io/webappsec-secure-contexts/#is-origin-trustworthy

Note that this test was failing in
https://wpt.fyi/results/webmcp/imperative/exposedTo-invalid-origins.https.html

Bug: 489045948
Change-Id: I5d2eb29ae63ec60871055a66acb1d9034a7b3421
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7902304
Reviewed-by: Dominic Farolino <dom@chromium.org>
Commit-Queue: Fr <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/main@{#1645170}
Ensure a consistent order of operations for all the new HTML insertion
methods (appendHTML, prependHTML, beforeHTML, afterHTML,
replaceWithHTML)

- The trusted types createHTML test should always come first
- ChildNode methods should then ensure the parent can accept HTML, or throw
- Correctly handle <template> in all the methods
  (e.g. `template.appendHTML`, `template.content.beforeHTML`)
- Assert some edge cases in WPT (e.g. trusted types moves nodes around)

See spec PR: whatwg/html#12528

Bug: 491743369
Change-Id: I5e587ae12faad3d706e2d993bd1aa88500b3e6be
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7915261
Commit-Queue: Noam Rosenthal <nrosenthal@google.com>
Reviewed-by: Philip Jägenstedt <foolip@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1645229}
Add a CSSNumericValue.parse() test for calc() multiplication.

The new test verifies that multiplication is reified as CSSMathProduct and can
contain nested CSSMathSum, CSSMathMin, and CSSMathMax expressions, matching the math expression reification algorithm.

Differential Revision: https://phabricator.services.mozilla.com/D304546

bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=2044316
gecko-commit: e3b733c7870fde2219a97aa8a30f7ace659f80d5
gecko-commit-git: 3a3572441ee324612748d515a778083057de4c75
gecko-reviewers: dshin
images

When an SVG with `vector-effect: non-scaling-stroke` is embedded via
`<image preserveAspectRatio="none">`, the stroke was incorrectly
scaled because `ComputeNonScalingStrokeTransform()` only accounted
for the CTM up to the SVG root. It did not include the additional
scaling applied by `SVGImage::DrawInternal()` when mapping the
source rect to the destination rect.

This CL fixes the issue by:

- Computing the container-to-destination scale in
`SVGImage::DrawInternal()` and storing it on `LayoutSVGRoot` as a
`container_scale_transform_`.

- Including that transform in
`LayoutSVGShape::ComputeNonScalingStrokeTransform()` so that
non-scaling-stroke accounts for the full CTM from the shape to
the host coordinate space.

The fix is behind the `SvgImageNonUniformScalingFix` runtime flag.

Bug: 40912001
Change-Id: I0a1041666b25eb3e285a133749fa7a253044ab47
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7320766
Reviewed-by: Virali Purbey <viralipurbey@microsoft.com>
Reviewed-by: Fredrik Söderquist <fs@opera.com>
Commit-Queue: Divyansh Mangal <dmangal@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1645331}
This fixes an edge case where we weren't aligned with the RFC and added
more web platform test coverage. The RFC explicitly states that
dictionaries with a matching match-dest take priority over those that
are wildcard matches.

Web Platform Test updates:
  - Improved the test cases that have unknown values in match-dest.
  - Improved the testing around valid and invalid characters in "id".
  - Tested more edge cases for dictionary match prioritization.

Bug: 521299806, 40255884
Change-Id: If8f544bfd5df70f6d2ffdd8870696ff1006361d8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7909546
Reviewed-by: Frédéric Wang Nélar <fwang@igalia.com>
Reviewed-by: Tsuyoshi Horo <horo@chromium.org>
Commit-Queue: Patrick Meenan <pmeenan@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1645339}
This fixes the compression dictionary registration tests to properly
handle the transferSize differences reported across browsers depending
on if the dictionary request required revalidation or not.

Change-Id: I9ea20bbe262533e67f7f4ba71b54dbf1c4a804c5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7925711
Commit-Queue: Patrick Meenan <pmeenan@chromium.org>
Reviewed-by: Frédéric Wang Nélar <fwang@igalia.com>
Cr-Commit-Position: refs/heads/main@{#1645340}
@pull pull Bot locked and limited conversation to collaborators Jun 11, 2026
@pull pull Bot added the ⤵️ pull label Jun 11, 2026
@pull pull Bot merged commit ae7c50b into All-Blockchains:master Jun 11, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.