Skip to content

Releases: web-platform-tests/wpt

merge_pr_50910

24 Feb 21:30
Compare
Choose a tag to compare

Prevent customizable select :focus-visible with mouse

This patch prevents select:focus-visible from matching when using the
mouse for customizable selects. appearance:auto selects will continue to
match :focus-visible when being clicked for now.

Bug: 393978931
Change-Id: Ic6c530a30cfc626564bcf041d9bf27f708675f52
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6221486
Reviewed-by: Traian Captan tcaptan@chromium.org
Commit-Queue: Joey Arhar jarhar@chromium.org
Cr-Commit-Position: refs/heads/main@{#1424080}

merge_pr_50909

24 Feb 20:31
Compare
Choose a tag to compare

[Blob URL] Add more delay to second iframe in subframe partitioning test

Hopefully this will help cut down on the remaining flakiness in the
test.

Bug: 390049422
Change-Id: Ife67023670f110563441ba6bf52b0c7e7e719333
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6293167
Commit-Queue: Andrew Williams awillia@chromium.org
Reviewed-by: Janice Liu janiceliu@chromium.org
Cr-Commit-Position: refs/heads/main@{#1424053}

merge_pr_50907

24 Feb 14:15
Compare
Choose a tag to compare

[functions] Let parameter defaults reference other parameters

Per "evaluate a custom function" [1], the default value of a parameter
may "see" other parameters, e.g. @function --f(--x, --y:var(--x)).
Before this CL, that var(--x) would resolve in the outer scope,
but now it's supposed to resolve against the actual argument value
passed for --x. At the same time, default values should not have
access to the actual locals of the function body, meaning that
they resolve in some gray area between the outer scope and inner
scope.

In this CL, that "gray area" is implemented by using a disposable
FunctionContext with the unresolved defaults set as the unresolved
locals. This is convenient, because we get all the needed "dependency
handling" (including cycle detection) for free.

Since various things now need to parse against a type (arguments,
defaults, and the 'result' descriptor), and because these various
things differ in how they are represented (some CSSVariableData,
some StringView), this CL aligns all of those things to use
CSSVariableData, and adjusts ResolveFunctionExpression accordingly.
This would be needed anyway, to actually transport various tainting
information, though that is not explicit handled/tested in this CL.

Finally, note that there is a drive-by fix in this CL: the "already
applied" branch of ApplyLocalVariables now actually skips the work
if it's already applied. This should ideally have a performance test,
which is tracked as a follow-up task (Issue 397164440).

[1] https://drafts.csswg.org/css-mixins-1/#evaluate-a-custom-function

Fixed: 397459622
Bug: 325504770, 397164440
Change-Id: Ic705209d25f4bee6149f2397bda78e1224b16901
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6276516
Commit-Queue: Anders Hartvoll Ruud andruud@chromium.org
Reviewed-by: Steinar H Gunderson sesse@chromium.org
Cr-Commit-Position: refs/heads/main@{#1423855}

merge_pr_50906

24 Feb 14:04
Compare
Choose a tag to compare

[functions] Ensure that referenced var in outer scope is applied

Dynamic scoping allows a var() to see local variables defined
higher up the call stack. If a local variable in some outer function
makes a function call, that inner function call may reference variables
in the outer function that are not yet resolved (i.e. do not yet
exist on FunctionContext::locals). We already handle this for references
within the same frame. Fixed by calling LookupAndApplyLocalVariable
on each frame visited during var()-dereferencing.

This has implications for cycle detection too, but that's not handled
in this CL (Issue 397485310).

Bug: 325504770, 397620596
Change-Id: I4aad9eeb885d19ccba116b89f40faf0cc721201c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6287713
Reviewed-by: Steinar H Gunderson sesse@chromium.org
Commit-Queue: Anders Hartvoll Ruud andruud@chromium.org
Cr-Commit-Position: refs/heads/main@{#1423847}

merge_pr_50904

24 Feb 13:25
Compare
Choose a tag to compare

[carousel] Fix AttachLayoutTree for ::scroll-marker expecting parent

If ::scroll-marker is inside the element that requires style recalc,
but not layout, context.parent is nullptr. So, we have to if()
attachment instead of CHECK(context.parent).

Fixed: 394980089
Change-Id: Iefdc99a1b65cabeb91d1cf5d7f79e47a0a787e0a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6298048
Reviewed-by: Rune Lillesveen futhark@chromium.org
Commit-Queue: Daniil Sakhapov sakhapov@chromium.org
Cr-Commit-Position: refs/heads/main@{#1423840}

merge_pr_50903

24 Feb 12:31
Compare
Choose a tag to compare

[functions] Parameters with defaults need not be trailing (WPT)

It's syntactically valid to define a function where a parameter without
a default appears after a parameter with a default, for example:

@function --foo(--x:1px, --y, --z:2px) { ... }

There is currently no way to actually invoke such a function while
making use of the non-trailing defaults, but apparently this may change
in the future if we rework how IACVT works for arguments.
Invoking --foo(var(--unknown), 42px) would make the containing
declaration invalid at computed-value time, but in the future
the argument may "capture" this invalid state, and instead trigger
the default.

Bug: 389974127
Change-Id: I8d7c41bde2401ac89ec0a011f098e6051772f7b6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6281007
Commit-Queue: Anders Hartvoll Ruud andruud@chromium.org
Reviewed-by: Steinar H Gunderson sesse@chromium.org
Cr-Commit-Position: refs/heads/main@{#1423827}

merge_pr_50901

24 Feb 17:31
Compare
Choose a tag to compare

Update the Sanitizer WebIDL.

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

bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1948896
gecko-commit: 5efb81454bba358d4f4bca92118030afb85aa016
gecko-reviewers: freddyb, webidl, smaug

merge_pr_50900

24 Feb 17:32
Compare
Choose a tag to compare

Part 1: Defer calling PersistNotification until alertshow

It's currently being called on creation instead of on show. That can cause unexpected order of persistence handling for tagged notifications, as closing previous same-tagged notification happens after the second notification creation, which means we persist the second one and then unpersist the first one. That's currently okay as each notification is being handled with UUID, but becomes a problem when we start to use deterministic notification IDs with which same tagged notifications share the same ID.

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

bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1932393
gecko-commit: ba3f072ed2828b4c4d2d4d7e171e6e4a65ba2f2c
gecko-reviewers: asuth

merge_pr_50899

24 Feb 14:24
Compare
Choose a tag to compare

layout: Ignore indefinite stretch on min and max sizing properties

We were always treating an indefinite stretch as the automatic size.
This instead treats it as 0px on min sizing properties, and as none
on max sizing properties, aligning with Blink and this recent CSSWG
resolution: w3c/csswg-drafts#11006

Signed-off-by: Oriol Brufau obrufau@igalia.com

merge_pr_50898

24 Feb 11:39
Compare
Choose a tag to compare

Fix canvas turbulence test again

Broke it by failing to revert a file in the canvas lang change.

Bug: 385006131
Change-Id: Icbaffade218093da34fc26b417c235081496faa8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6293806
Reviewed-by: Fredrik Söderquist fs@opera.com
Commit-Queue: Fredrik Söderquist fs@opera.com
Auto-Submit: Stephen Chenney schenney@chromium.org
Cr-Commit-Position: refs/heads/main@{#1423814}