Commit Graph
454 Commits
Author SHA1 Message Date
Ahmad Saleem 0a3838aadc Bug 2043913 [wpt PR 60305] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=278381, a=testonly
Automatic update from web-platform-tests
WebKit export of https://bugs.webkit.org/show_bug.cgi?id=278381 (#60305)
--

wpt-commits: 1062d9c4af1ff6b2d4e4134d436c1c42cf74098c
wpt-pr: 60305
2026-06-04 07:40:37 +00:00
Sammy Gill b3a340783b Bug 2041568 [wpt PR 60072] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=314978, a=testonly
Automatic update from web-platform-tests
WebKit export of https://bugs.webkit.org/show_bug.cgi?id=314978 (#60072)
--

wpt-commits: d188b687d52c3ee8a85fbac0b349bdcdf535d9a3
wpt-pr: 60072
2026-05-29 15:58:54 +00:00
Sammy Gill 27c48f318f Bug 2041570 [wpt PR 60073] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=314969, a=testonly
Automatic update from web-platform-tests
WebKit export of https://bugs.webkit.org/show_bug.cgi?id=314969 (#60073)
--

wpt-commits: 3a1ecec2ee45a5de8838954b88121d0a1851a7db
wpt-pr: 60073
2026-05-29 15:58:52 +00:00
jj 41b46ed762 Bug 2040553 [wpt PR 59959] - Paint replaced normal-flow stacking contexts inline, a=testonly
Automatic update from web-platform-tests
Paint replaced normal-flow stacking contexts inline

ReplacedNormalFlowStackingContext elements (currently <video> and SVG
<foreignObject>) have self-painting PaintLayers. BoxFragmentPainter
skips fragments with self-painting layers during PaintForegroundPhases,
deferring them to PaintLayerPainter::PaintChildren which runs later.
This causes these elements to paint after sibling inline content.

Paint these layers inline during the normal content painting phase, and
skip them in PaintChildren. Hit-test them from the same inline position
so hit testing stays in sync with paint order. This generalizes the
existing SVGForeignObjectPainter pattern, which is now redundant and
removed.

This also fixes a PaintController CHECK hit when a static video gains
controls dynamically. In that case the video becomes a replaced
normal-flow stacking context, and leaving it to be painted later through
PaintChildren can reuse the same cached subsequence through the wrong
paint path.

Bug: 505772420
Change-Id: I3c6141d1ef6360b22b6dc7172593640417cd6e8d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7813580
Reviewed-by: Philip Rogers <[email protected]>
Commit-Queue: jj <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1632703}

--

wpt-commits: d5f1e15b56249d553c774b7810143ff2cb8eddbf
wpt-pr: 59959
2026-05-21 07:39:59 +00:00
Oriol Brufau 94f6b55d0b Bug 2035670 [wpt PR 59502] - layout: Keep all trailing whitespace after unparented table-levels, a=testonly
Automatic update from web-platform-tests
layout: Keep all trailing whitespace after unparented table-levels

A sequence of table-level boxes gets wrapped inside an anonymous table
box. This includes interleaved spaces (which table layout will skip),
but not trailing spaces, which need to be kept after the table.

We were only keeping the last such whitespace node, but it's possible
to have more than one whitespace node. So this patch keeps all nodes
after the last table-level element.

Signed-off-by: Oriol Brufau <[email protected]>

--

wpt-commits: 8198c88769e8dff2299a9614f7ead1005d41c1c8
wpt-pr: 59502
2026-05-08 08:37:01 +00:00
Ian Kilpatrick fb5eaf8690 Bug 2035073 [wpt PR 59457] - [layout] Remove the anonymous block before reparenting children., a=testonly
Automatic update from web-platform-tests
[layout] Remove the anonymous block before reparenting children.

There was a small functional change within:
https://chromium.googlesource.com/chromium/src/+/ca6e0f7e75fbe39b2322a5352fa10e2001671a02

We have a "full_remove_insert" parameter which is used to trigger a
safer set of invalidations, as well as invoking LayoutObject::AddChild
instead of reaching into the LayoutObjectChildList and changing it
directly.

We set this parameter to "true". When the anonymous block was attached
to its parent, and we tried to reparent the abspos to the parent
block-flow the following happened:
 - We'd invoke MoveAllChildrenTo(...., true);
 - This would try and reparent the abspos.
 - We'd invoke LayoutBlockFlow::AddChild
 - This would trigger the following line:
   "if (after_child && after_child->IsAnonymousBlockFlow())"

after_child was the thing we were tying to remove children from!

So the abspos would get re-inserted to the end of our anonymous block
child (which technically was correct as it was being placed before the
"before_child"). It'd process all the remaining children, then process
the abspos again, inserting it into the incorrect position now.

We want to leave this parameter to "true" always, so to fix this we just
need to remove "this" from its parent, then reparent all its children.
This means that the LayoutBlockFlow::AddChild logic doesn't see the
anonymous block-flow and doesn't get confused.

The layout-tree before and after this change.

Before:

```
LayoutView 0x134021009d8                #document
  LayoutBlockFlow 0x13402100b60         HTML
    LayoutBlockFlow 0x13402100c50       BODY
*     LayoutBlockFlow (relative positioned) 0x13402100cf0 DIV style="position: relative;"
        LayoutBlockFlow 0x13402101210   DIV id="target" style="display: block;"
        LayoutBlockFlow (anonymous, children-inline) 0x134021012b0
          LayoutBlockFlow (inline) 0x13402100ed0  SPAN style="display: inline-block;"
          LayoutText 0x13402100f70      #text "\n  "
          LayoutBlockFlow (positioned) 0x13402100fe0  DIV class="abspos" style="background: green;"
          LayoutBlockFlow (positioned) 0x13402100de0  DIV class="abspos" style="background: red;"
        LayoutBlockFlow 0x134021010d0   DIV
```

After:

```
LayoutView 0x134021009d8                #document
  LayoutBlockFlow 0x13402100b60         HTML
    LayoutBlockFlow 0x13402100c50       BODY
*     LayoutBlockFlow (relative positioned) 0x13402100cf0 DIV style="position: relative;"
        LayoutBlockFlow (positioned) 0x13402100de0  DIV class="abspos" style="background: red;"
        LayoutBlockFlow 0x13402101210   DIV id="target" style="display: block;"
        LayoutBlockFlow (anonymous, children-inline) 0x134021012b0
          LayoutBlockFlow (inline) 0x13402100ed0  SPAN style="display: inline-block;"
          LayoutText 0x13402100f70      #text "\n  "
          LayoutBlockFlow (positioned) 0x13402100fe0  DIV class="abspos" style="background: green;"
        LayoutBlockFlow 0x134021010d0   DIV
```

Fixed: 505179602
Change-Id: I7f229a3d670d75e4290a88671d92ad73ec1dd34f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7791943
Auto-Submit: Ian Kilpatrick <[email protected]>
Commit-Queue: Ian Kilpatrick <[email protected]>
Reviewed-by: Morten Stenshorne <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1620382}

--

wpt-commits: 6489f94bc054e4aee18a9524e00e41474f82c2b8
wpt-pr: 59457
2026-05-05 08:42:16 +00:00
Ahmad Saleem b41856afd4 Bug 2031531 [wpt PR 59115] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=310587, a=testonly
Automatic update from web-platform-tests
WebKit export of https://bugs.webkit.org/show_bug.cgi?id=310587 (#59115)
--

wpt-commits: a93a1a1003630c3bc779a8d96df0ddef4a46c307
wpt-pr: 59115
2026-04-23 10:10:29 +00:00
Ahmad Saleem df97dca790 Bug 2031530 [wpt PR 59116] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=289438, a=testonly
Automatic update from web-platform-tests
WebKit export of https://bugs.webkit.org/show_bug.cgi?id=289438 (#59116)
--

wpt-commits: e3d610692e19f03602d298111c36800a565bb72f
wpt-pr: 59116
2026-04-23 10:10:26 +00:00
Ian Kilpatrick 13d98d3219 Bug 2026148 [wpt PR 58728] - [layout] Don't reinsert on float change if we are OOF-positioned., a=testonly
Automatic update from web-platform-tests
[layout] Don't reinsert on float change if we are OOF-positioned.

Previously we were unnecessarily reinserting into the layout tree if our
floating status changed, but we were also OOF-positioned.

This was "fine", except the reattach logic didn't support ::backdrop
pseudo-elements. ::backdrop pseudo-elements are *always* OOF-positioned
(see the corresponding logic in the StyleAdjuster).

As such we'd crash in LayoutTreeBuilderTraversal::NextSibling as it
didn't handle ::backdrop.

Adjust the logic in ComputedStyle::NeedsReinsertLayoutTree to skip the
floating change if the style is OOF-positioned.

Fixed: 495571483
Change-Id: Icbf1e44520d60ec3054428e69ada17518665aa35
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7697590
Commit-Queue: Ian Kilpatrick <[email protected]>
Reviewed-by: Morten Stenshorne <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1604461}

--

wpt-commits: 70136573f09434763635f934ba5f58b98a03e58d
wpt-pr: 58728
2026-04-09 19:27:10 +00:00
iulian moraru b43d572306 Revert "Bug 2026172 [wpt PR 58729] - Use new_audio_tracks.id in new_audio_tracks loop, a=testonly"
This reverts commit 9acbc18391.

Revert "Bug 2026159 [wpt PR 58735] - Update wpt metadata, a=testonly"

This reverts commit a5b665df07.

Revert "Bug 2026159 [wpt PR 58735] - Introduce the `overlap-join` keyword for the `rule-inset` property, a=testonly"

This reverts commit 002f90e74f.

Revert "Bug 2026158 [wpt PR 58714] - URL: add a few UTF-16 pitfalls, a=testonly"

This reverts commit 8932ec0396.

Revert "Bug 2025749 [wpt PR 58701] - Update wpt metadata, a=testonly"

This reverts commit d6aacbe602.

Revert "Bug 2025749 [wpt PR 58701] - [Connection-Allowlist] Use "redirects" param for subresource fetches., a=testonly"

This reverts commit ac0bb6b26f.

Revert "Bug 2026148 [wpt PR 58728] - [layout] Don't reinsert on float change if we are OOF-positioned., a=testonly"

This reverts commit d7020d35a5.

Revert "Bug 2026145 [wpt PR 58721] - Fix dynamic attribute updates and empty name caching for <map>, a=testonly"

This reverts commit 5bf9480d5f.

Revert "Bug 2026139 [wpt PR 58725] - Update wpt metadata, a=testonly"

This reverts commit 0c5f45cff8.

Revert "Bug 2026139 [wpt PR 58725] - PaintTiming: Fix first-paint-only tests, a=testonly"

This reverts commit 303433bcaa.

Revert "Bug 2026014 [wpt PR 58703] - Update CODEOWNERS, a=testonly"

This reverts commit 39d02a4fdf.

Revert "Bug 2025122 [wpt PR 58650] - WebKit export of https://bugs.webkit.org/show_bug.cgi?id=301919, a=testonly"

This reverts commit c4fa745f9e.

Revert "Bug 2026129 [wpt PR 58720] - Update wpt metadata, a=testonly"

This reverts commit 031628a0c6.

Revert "Bug 2026129 [wpt PR 58720] - Reflect <template for> as htmlFor, a=testonly"

This reverts commit 5595e3acff.
2026-04-04 21:29:44 +00:00
Ian Kilpatrick d7020d35a5 Bug 2026148 [wpt PR 58728] - [layout] Don't reinsert on float change if we are OOF-positioned., a=testonly
Automatic update from web-platform-tests
[layout] Don't reinsert on float change if we are OOF-positioned.

Previously we were unnecessarily reinserting into the layout tree if our
floating status changed, but we were also OOF-positioned.

This was "fine", except the reattach logic didn't support ::backdrop
pseudo-elements. ::backdrop pseudo-elements are *always* OOF-positioned
(see the corresponding logic in the StyleAdjuster).

As such we'd crash in LayoutTreeBuilderTraversal::NextSibling as it
didn't handle ::backdrop.

Adjust the logic in ComputedStyle::NeedsReinsertLayoutTree to skip the
floating change if the style is OOF-positioned.

Fixed: 495571483
Change-Id: Icbf1e44520d60ec3054428e69ada17518665aa35
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7697590
Commit-Queue: Ian Kilpatrick <[email protected]>
Reviewed-by: Morten Stenshorne <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1604461}

--

wpt-commits: 70136573f09434763635f934ba5f58b98a03e58d
wpt-pr: 58728
2026-04-04 20:09:32 +00:00
Ian Kilpatrick f2723f2022 Bug 2024804 [wpt PR 58616] - [layout] Fix anonymous LayoutInline crash with new reinsert logic., a=testonly
Automatic update from web-platform-tests
[layout] Fix anonymous LayoutInline crash with new reinsert logic.

The new reinsert logic added in:
https://chromium-review.googlesource.com/c/chromium/src/+/7427180

Had an issue where the reinsert logic differed from the reattachment
logic.

The reinsert logic used:
LayoutTreeBuilderTraversal::NextSiblingLayoutObject

But the reattachment logic has additional logic within:
LayoutTreeBuild::NextLayoutObject

We should have been using the logic for reattachment. Extract this out
to a LayoutTreeBuilderTraversal::NextSiblingLayoutObjectForAttachment
and update the callsites.

Fixed: 492374383
Change-Id: I05996ffad7b756144361ce38d71f4aed078ac44b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7673932
Reviewed-by: Rune Lillesveen <[email protected]>
Commit-Queue: Ian Kilpatrick <[email protected]>
Reviewed-by: Morten Stenshorne <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1601964}

--

wpt-commits: 5a19456479f787f8b00b57b9705ac06a58498327
wpt-pr: 58616
2026-03-30 08:06:20 +00:00
Oriol Brufau 492bdf96b4 Bug 2019827 [wpt PR 58091] - layout: Fix bottom margin of block-in-inline getting ignored, a=testonly
Automatic update from web-platform-tests
layout: Fix bottom margin of block-in-inline getting ignored

In order to know whether a block box can collapse its bottom margin with
the bottom margin of its last child, we need to check its tentative
block size. Most usually, this will be the block size of the containing
block that is used when laying out the children.

However, anonymous blocks do not establish a containing block. So using
the containing block for children meant that we were using the tentative
block size of its parent. If that parent had a definite size, this would
prevent the anonymous block from collapsing bottom margins with its
children. This situation could happen when placing a block-level inside
of an inline box.

This patch fixes the problem by using an indefinite tentative block size
for anonymous blocks, instead of the containing block for children.

Signed-off-by: Oriol Brufau <[email protected]>

--

wpt-commits: 33ea3abc4b7ffe1d03cac6a985d72e035a898d70
wpt-pr: 58091
2026-03-10 15:41:26 +00:00
Oriol Brufau 1413193b32 Bug 2016539 [wpt PR 57757] - layout: Fix abspos position when it would be preceded by phantom line, a=testonly
Automatic update from web-platform-tests
layout: Fix abspos position when it would be preceded by phantom line

The static position of an abspos is the hypothetical position that it
would have had in the normal flow. If the abspos is inside inline layout
and it had a block-level original display, then the static position
is computed as if the abspos was a block-level that breaks the inline.

Usually this places the static position after the current line. However,
if the abspos is not preceded by any text, padding, border, margin,
preserved newline or atomic inline, then the static position should be
as if the abspos was preceded by a 0px tall phantom line. Previously we
weren't taking that into account.

Note that browsers aren't completely interoperable in corner cases.

Signed-off-by: Oriol Brufau <[email protected]>

--

wpt-commits: 25bb1370e7968664ae222f07478164b2b0ace1cf
wpt-pr: 57757
2026-03-04 09:08:30 +00:00
Oriol Brufau 85fdb609b5 Bug 2019468 [wpt PR 58060] - layout: Let OutsideMarker store an IndependentFormattingContext, a=testonly
Automatic update from web-platform-tests
layout: Let `OutsideMarker` store an `IndependentFormattingContext`

`OutsideMarker` was storing the `BlockFormattingContext` and the
`LayoutBoxBase` in separate fields. Now it will store an entire
`IndependentFormattingContext` in a single field.

In particular, this fixes the issue that `OutsideMarker::repair_style()`
wasn't calling `BlockFormattingContext::repair_style()`. Now we can just
rely on `IndependentFormattingContext::repair_style()`, which correctly
repairs the style of both the `BlockFormattingContext` and the
`LayoutBoxBase`.

Also, the `BlockLevelBox::repair_style()` was repairing the style of the
`LayoutBoxBase` twice, for all kinds of block-level boxes. This removes
the duplication.

Testing: Adding a new test
Fixes: 42779

Signed-off-by: Oriol Brufau <[email protected]>

--

wpt-commits: 0e65c24fb56462d7907e406d35b630a27d3974f4
wpt-pr: 58060
2026-03-04 09:08:02 +00:00
Oriol Brufau 5a89797198 Bug 2018623 [wpt PR 57978] - layout: Let TableSlotCell store an IndependentFormattingContext, a=testonly
Automatic update from web-platform-tests
layout: Let `TableSlotCell` store an `IndependentFormattingContext`

`TableSlotCell` was storing the `BlockFormattingContext` and the
`LayoutBoxBase` in separate fields. Now it will store an entire
`IndependentFormattingContext` in a single field.

In particular, this fixes the issue that `TableSlotCell::repair_style()`
wasn't calling `BlockFormattingContext::repair_style()`. Now we can just
rely on the correct `IndependentFormattingContext::repair_style()`.

Signed-off-by: Oriol Brufau <[email protected]>

--

wpt-commits: 0f8f58bca5a2efaffbc91e1660d5be8fe8678e0f
wpt-pr: 57978
2026-02-26 15:19:51 +00:00
Oriol Brufau 6454c69a29 Bug 2016559 [wpt PR 57759] - Improve performance of margin-collapse-through-for-various-height-values.tentative.html, a=testonly
Automatic update from web-platform-tests
Improve performance of `margin-collapse-through-for-various-height-values.tentative.html`

I tried to do it well when I wrote the test, but I didn't realize that
promise tests run one after the other, not in parallel.

--

wpt-commits: 6679fbba8742fdcc1b356d12bc6f15356515475d
wpt-pr: 57759
2026-02-18 09:32:04 +00:00
Morten Stenshorne a5c6aecb80 Bug 2016060 [wpt PR 57703] - Correct table-page-break-inside-avoid-8-print.html expectation., a=testonly
Automatic update from web-platform-tests
Correct table-page-break-inside-avoid-8-print.html expectation.

It expected break-inside:avoid on a table section to be disregarded,
which is incorrect. Add new ref.

Bug: 483352765
Change-Id: Ieebeded9cb926e76c055fb136ecddb9c4a44d0fa
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7564630
Commit-Queue: Morten Stenshorne <[email protected]>
Reviewed-by: Rune Lillesveen <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1583078}

--

wpt-commits: 4a95e407d944f50158dc851c43589e3fae8a9f2e
wpt-pr: 57703
2026-02-16 09:30:43 +00:00
jugglinmike 8a919430d2 Bug 2012361 [wpt PR 57328] - Map "Color" to web-features, a=testonly
Automatic update from web-platform-tests
Map "Color" to web-features (#57328)

--

wpt-commits: 32006ad1c817b401a0ad454e8d786744f9a98ff1
wpt-pr: 57328
2026-01-29 12:16:58 +00:00
Stalgia Grigg 368da1d0ae Bug 2004808 [wpt PR 56570] - Map text-transform, text-size-adjust, text-underline-position, text-orientation, and text-justify, a=testonly
Automatic update from web-platform-tests
Map `text-transform`, `text-size-adjust`, `text-underline-position`, `text-orientation`, and  `text-justify` (#56570)

--

wpt-commits: 84862dbc01ec74a652c4573165d81c87ab7cc140
wpt-pr: 56570
2026-01-27 08:12:25 +00:00
Stalgia Grigg df0de6ba0a Bug 2012092 [wpt PR 56431] - Map text-decoration, text-decoration-line-blink, `text-decoration…, a=testonly
Automatic update from web-platform-tests
Map `text-decoration`, `text-decoration-line-blink`, `text-decoration… (#56431)

--

wpt-commits: 416658dc89d1eea5f0fc4991f135ff3ce1281d02
wpt-pr: 56431
2026-01-27 08:12:17 +00:00
Stalgia Grigg c32f3ef55f Bug 2006450 [wpt PR 56787] - Map outlines web-feature, a=testonly
Automatic update from web-platform-tests
Map `outlines` web-feature (#56787)

Feature: `outlines`
Reference: https://github.com/web-platform-dx/web-features/blob/main/features/outlines.yml

Differentiation logic:
The `outlines` feature covers the longhand properties (`outline-width`, `outline-style`, `outline-color`, `outline-offset`). The `outline` feature covers the shorthand property. To prevent overlap, I remapped some of the the `outline` feature mapping to explicitly exclude the longhand patterns (e.g., `!outline-width-*`).

Co-authored-by: Chris Cuellar <[email protected]>
--

wpt-commits: 44ac9fbc30bd098da0598d855b8184b4f913f961
wpt-pr: 56787
2026-01-27 08:12:13 +00:00
Stalgia Grigg 24e6dc8d2d Bug 2005082 [wpt PR 56619] - Map cursor web-feature, a=testonly
Automatic update from web-platform-tests
Map `cursor` web-feature (#56619)

Feature: `cursor`
Reference: https://github.com/web-platform-dx/web-features/blob/main/features/cursor.yml

Notable exclusions

1. Image orientation tests (cross-feature)
    - `css/css-images/image-orientation/image-orientation-cursor.html`

Co-authored-by: Philip Jägenstedt <[email protected]>
--

wpt-commits: 8e25c28d31ed5d7eb036c5c809ae0b175dd9b8df
wpt-pr: 56619
2026-01-23 14:41:55 +00:00
Ian Kilpatrick 76ff11af92 Bug 2011122 [wpt PR 57228] - [layout] Fix nullptr dereference within FirstLineStyleWithoutFallback, a=testonly
Automatic update from web-platform-tests
[layout] Fix nullptr dereference within FirstLineStyleWithoutFallback

With http://crrev.com/c/7427180 its now possible to not have a parent
within FirstLineStyleWithoutFallback.

Add a nullptr check to avoid a nullptr dereference.

Bug: 476169479
Change-Id: I89d130674445239bb4003a5890a9056b9dba3779
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7489700
Reviewed-by: Koji Ishii <[email protected]>
Commit-Queue: Ian Kilpatrick <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1570988}

--

wpt-commits: b5b626509a9fffa6eea011a11b9bf6d6cfba9c13
wpt-pr: 57228
2026-01-23 14:40:36 +00:00
Ian Kilpatrick acd70c888b Bug 2010974 [wpt PR 57218] - [layout] Avoid <fieldset> crash for float state change., a=testonly
Automatic update from web-platform-tests
[layout] Avoid <fieldset> crash for float state change.

With http://crrev.com/c/7427180 its now possible to add a child to a
<fieldset> with a before_child being non-null.

We can reuse the existing logic added in http://crrev.com/c/2975047 to
select the correct before_child based on the DOM-tree.

Just avoid the if-stmt which was preventing this.
This unifies code and makes it easier to reason about.

Bug: 476180594
Change-Id: Iada4d8f7bcdab79a25d514c2ef986d2ea68eba60
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7488680
Commit-Queue: Ian Kilpatrick <[email protected]>
Reviewed-by: David Grogan <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1570611}

--

wpt-commits: f5447f6092e834d1df4b343e5f72866f7a63db74
wpt-pr: 57218
2026-01-23 14:40:23 +00:00
Ian Kilpatrick 6b0bb5eb4e Bug 2010660 [wpt PR 57186] - Reapply "[layout] Reinsert LayoutObjects which undergo a in-flow state change.", a=testonly
Automatic update from web-platform-tests
Reapply "[layout] Reinsert LayoutObjects which undergo a in-flow state change."

This reverts commit 07002c40c631b6ee35ee32d2bbccacc75e9052a0.

This patch reinserts layout-objects into the layout-tree when their
out-of-flow state changes. (E.g. a change from position:static to
position:absolute or float:left to float:none).

When their out-of-flow state changes we'll remove it from the
layout-object tree, update the style, then reinsert into the tree. This
is similar to layout-tree reattachment, except the layout-object (and
related objects/caches) are kept around.

This simplifies our logic when style changes in this way. Previously
we'd need to mutate the layout tree during LayoutObject::SetStyle which
was complex and error prone, and a source of bugs.

See removal patch for complexity we can remove:
https://chromium-review.googlesource.com/c/chromium/src/+/7263470

All behaviour changes should be behind the flag:
LayoutReinsertOnInFlowStateChange

Bug: 469120960
Change-Id: I983967e03d10552ad2f8cd1f70b4c3c2ea079836
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7427180
Commit-Queue: Ian Kilpatrick <[email protected]>
Reviewed-by: Morten Stenshorne <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1569882}

--

wpt-commits: 3166e6fb4107f8a51457bd73619356f2d6172d1d
wpt-pr: 57186
2026-01-21 10:44:46 +00:00
Stalgia Grigg e1075b5b3c Bug 2004357 [wpt PR 56510] - Map list-style web-feature, a=testonly
Automatic update from web-platform-tests
Map `list-style` web-feature (#56510)

Feature: `list-style`
Reference: https://github.com/web-platform-dx/web-features/blob/main/features/list-style.yml

Notable exclusions

1. Counters and Counter Styles
   - `css/css-counter-styles/*` - Tests for `@counter-style`
   - `css/css-lists/counter-*`, `css/css-lists/counters-*` - Tests for `counter-reset`, `counter-increment`, `counter-set`
   - `css/CSS2/lists/counter-*`, `css/CSS2/lists/increment-counter-*`, `css/CSS2/lists/reset-counter-*` - Tests for counter properties

2. Marker Pseudo-element
   - `css/css-pseudo/marker-*` - Tests for `::marker` pseudo-element selector and properties
--

wpt-commits: 4e8efd1d525d777207c0cfb301087badda68a552
wpt-pr: 56510
2026-01-21 10:44:32 +00:00
Stalgia Grigg 3bdba98a20 Bug 2004349 [wpt PR 56504] - Map link-selectors web-feature, a=testonly
Automatic update from web-platform-tests
Map `link-selectors` web-feature (#56504)

Feature: `link-selectors`
Reference: https://github.com/web-platform-dx/web-features/blob/main/features/link-selectors.yml

Notable exclusions

1. Tests for `@scope` focusing on `css-cascade`
   - `css/css-cascade/scope-visited.html`
   - `css/css-cascade/scope-visited-cssom.html`

2. Tests for `all`, `revert`, `unset` properties focusing on `css-cascade`
   - `css/css-cascade/all-prop-initial-visited.html`
   - `css/css-cascade/all-prop-revert-visited.html`
   - `css/css-cascade/all-prop-unset-visited.html`

3. Tests where `:visited` or `:link` are used primarily as setup for testing other features (e.g., backgrounds, acid tests)
   - `acid/*`
   - `css/CSS2/backgrounds/*`

4. Tests primarily about `:has()` interaction with link pseudo-classes (mapped to `has`)
   - `css/selectors/has-visited.html`
   - `css/selectors/invalidation/link-pseudo-in-has.html`
   - `css/selectors/invalidation/link-pseudo-class-in-has.html`

7. Tests primarily about `:not()` interaction with link pseudo-classes (mapped to `not`)
   - `css/selectors/not-links.html`

Notable inclusions

1. Tests for privacy restrictions on `:visited` (color, stroke, fill, emphasis).
   - `css/selectors/text-*-visited-inheritance.html`
   - `css/selectors/caret-color-visited-inheritance.html`, This test was remapped from `caret-color` to `link-selectors`
   - These verify the specific behavior of `:visited` styles being restricted.

2. Tests for partitioned visited links (privacy feature)
   - `css/selectors/partitioned-visited-manual.tentative.html`

3. Tests for invalidation of `:any-link`
   - `css/selectors/invalidation/any-link-*.html`
--

wpt-commits: 605bc54009057067a128bd5d9ecea201aff352d8
wpt-pr: 56504
2026-01-21 10:44:30 +00:00
Oriol Brufau 5031fe48a7 Bug 2009498 [wpt PR 57116] - layout: Let floats know that margins can collapse thru phantom lines, a=testonly
Automatic update from web-platform-tests
layout: Let floats know that margins can collapse thru phantom lines

Phantom line boxes allow margins to collapse through them. But in the
sequential layout state we were assuming that was not the case, so we
were placing floats incorrectly.

Signed-off-by: Oriol Brufau <[email protected]>

--

wpt-commits: 1053d9a4de53cc10423b1d2c7ce2da8cc51ffc44
wpt-pr: 57116
2026-01-21 10:43:51 +00:00
Chris Cuellar 07d3c33f1e Bug 2007030 [wpt PR 56873] - classifies "relative-positioning" web feature, a=testonly
Automatic update from web-platform-tests
classifies "relative-positioning" web feature (#56873)

--

wpt-commits: 8b3d7ec5d33f1ad2ff943e1a97b9e652a0f218e2
wpt-pr: 56873
2026-01-16 07:54:21 +00:00
jugglinmike 998344cdf5 Bug 2005088 [wpt PR 56622] - Map "Content" to web-features, a=testonly
Automatic update from web-platform-tests
Map "Content" to web-features (#56622)

--

wpt-commits: dfa20e19de07064a8e396a11f2eb87d112573458
wpt-pr: 56622
2026-01-16 07:54:01 +00:00
jugglinmike 903039e821 Bug 2008828 [wpt PR 57026] - Map "margin" to web-features, a=testonly
Automatic update from web-platform-tests
Map "margin" to web-features (#57026)

--

wpt-commits: 75e26abd1c57f9a082641b85d4ae313f2137e89a
wpt-pr: 57026
2026-01-16 07:53:52 +00:00
jugglinmike 8ac1cdcfbd Bug 2008666 [wpt PR 57000] - Map "@import" to web-features, a=testonly
Automatic update from web-platform-tests
Map "@import" to web-features (#57000)

--

wpt-commits: 8834135de9441ba1110b7c28ec4279421761781a
wpt-pr: 57000
2026-01-16 07:53:35 +00:00
Howard Edwards ac9798ac4a Bug 2005334 [wpt PR 56654] - Map font-style web feature, a=testonly
Automatic update from web-platform-tests
Map "font-style" to web-features (#56654)

Co-authored-by: Mike Pennisi <[email protected]>
--

wpt-commits: 03884af8547bb0604fad0740d342e807a3257c05
wpt-pr: 56654
2026-01-16 07:53:30 +00:00
Howard Edwards a7e3117ee7 Bug 2005329 [wpt PR 56651] - Map font-shorthand web feature, a=testonly
Automatic update from web-platform-tests
Map "Font shorthand" to web-features (#56651)

--

wpt-commits: df37f5601136367eb95656b7680e9b7dec8564bd
wpt-pr: 56651
2026-01-16 07:53:19 +00:00
jugglinmike 51c96b8c08 Bug 2004811 [wpt PR 56571] - Map "box-sizing" to web-features, a=testonly
Automatic update from web-platform-tests
Map "box-sizing" to web-features (#56571)

--

wpt-commits: e7f1b842c259292b844f80035d7b47611e186716
wpt-pr: 56571
2026-01-16 07:52:47 +00:00
Kevin Ellis 356af513b9 Bug 2009444 [wpt PR 57108] - Fix null deref in ApplyIterationAccumulation, a=testonly
Automatic update from web-platform-tests
Fix null deref in ApplyIterationAccumulation

Addresses 3 Clusterfuzz failures due to null dereferencing.

Bug: 467450081, 467312393, 467312393
Change-Id: I86fad1fe41326c78bed290db0c35c56be364b64f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7422843
Commit-Queue: Kevin Ellis <[email protected]>
Reviewed-by: David Awogbemila <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1567027}

--

wpt-commits: eb7236e6e285c3bac168dd6da8199df610a04aae
wpt-pr: 57108
2026-01-13 16:22:41 +00:00
Oriol Brufau 0c48c5e08a Bug 2008526 [wpt PR 56983] - layout: Consider margin of preceding block when placing abspos inside inline, a=testonly
Automatic update from web-platform-tests
layout: Consider margin of preceding block when placing abspos inside inline

Now that we may have block-level boxes inside an inline formatting
context, absolutely positioned boxes need to consider that margin.

Signed-off-by: Oriol Brufau <[email protected]>

--

wpt-commits: fb675eb421ec07d27e69fde7b0d0b5e2a3b39097
wpt-pr: 56983
2026-01-13 16:22:35 +00:00
Howard Edwards ebe673282b Bug 2006396 [wpt PR 56780] - Map layout-direction-override web feature, a=testonly
Automatic update from web-platform-tests
Map `layout-direction-override` web feature (#56780)

--

wpt-commits: e9e406b246e0e8b6408e850649738a1c94f33bc2
wpt-pr: 56780
2026-01-13 16:22:26 +00:00
Howard Edwards 2fc04eff74 Bug 2006411 [wpt PR 56782] - Map letter-spacing web feature, a=testonly
Automatic update from web-platform-tests
Map "letter-spacing" to web-features (#56782)

--

wpt-commits: ed49cc00cfe13c8b52a7918f947c64e957a94d77
wpt-pr: 56782
2026-01-13 16:22:24 +00:00
jugglinmike 542dfe2d5c Bug 2008769 [wpt PR 57014] - Map "inherit" to web-features, a=testonly
Automatic update from web-platform-tests
Map "inherit" to web-features (#57014)

--

wpt-commits: d9a6de99ce492ce7f14b06ef829b6103b8ee9b8e
wpt-pr: 57014
2026-01-13 16:21:21 +00:00
Stalgia Grigg f1ce8bed70 Bug 2002599 [wpt PR 56304] - Map "static-positioning" web-feature, a=testonly
Automatic update from web-platform-tests
Map "static-positioning" web-feature (#56304)

Feature: `static-positioning`
Reference: https://github.com/web-platform-dx/web-features/blob/main/features/static-positioning.yml

**Notable exclusions**

1. Tests about "static position" (for absolutely positioned elements) rather than `position: static`

   - `css/css-position/static-position/*` - Tests the static position calculation for absolutely positioned elements, not the `position: static` value
   - `css/css-position/multicol/static-position/*` - Tests static position in multicolumn contexts for absolutely positioned elements
   - `css/CSS2/positioning/absolute-*` - Tests about absolutely positioned elements that mention "static position" in their calculations

2. Tests about containing blocks for static positioned elements

   - `css/CSS2/box-display/containing-block-004.xht`, `containing-block-005.xht`, `containing-block-006.xht` - Primary focus: containing block calculation, not static positioning behavior

3. Tests about other positioning features that happen to mention static positioning

   - `css/CSS2/positioning/position-fixed-006.xht` - Tests that root elements may treat non-static positions as static (about fixed positioning, not static)
   - `css/CSS2/floats-clear/floats-133.xht` - Tests floats with position:static (primary focus: floats)
   - `css/CSS2/normal-flow/blocks-022.xht` - Tests block widths with position:static (primary focus: block box model)

4. Parsing and computed value tests for the position property, don't use "static" as value

   - `css/css-position/parsing/position-valid.html`
   - `css/css-position/parsing/position-computed.html`
   - `css/css-position/animations/position-interpolation.html`

5. Tests about cross-cutting concerns

   - `css/css-position/inheritance.html` - Uses static as initial value, but tests inheritance
--

wpt-commits: 8d2a0bbacbc01b64aa53b53a0740ed0d0846fad3
wpt-pr: 56304
2026-01-13 16:21:19 +00:00
Howard Edwards f4a6045885 Bug 2006186 [wpt PR 56753] - Map lang web feature, a=testonly
Automatic update from web-platform-tests
Map `lang` web feature (#56753)

--

wpt-commits: d4913bd5c704e987b9e1cce44ecba5a5d7f0c2d8
wpt-pr: 56753
2026-01-13 16:21:09 +00:00
Mx Corey Frang 6f7d5cf634 Bug 2005924 [wpt PR 56731] - Classify physical-properties web feature, a=testonly
Automatic update from web-platform-tests
Classify physical-properties web feature (#56731)

--

wpt-commits: 3c01bb5f6c2f30c6406108914aa89b8343a244e7
wpt-pr: 56731
2026-01-13 16:20:52 +00:00
Mx Corey Frang 8b4b364986 Bug 2005636 [wpt PR 56694] - Classify page-setup, a=testonly
Automatic update from web-platform-tests
Classify page-setup (#56694)

--

wpt-commits: 59feb1a1139df81c174d912ff8a478cf3d6915db
wpt-pr: 56694
2026-01-09 23:29:04 +00:00
Chris Cuellar a6eb5d12f9 Bug 2009056 [wpt PR 57053] - maps "vertical-align" web feature, a=testonly
Automatic update from web-platform-tests
maps "vertical-align" web feature (#57053)

`vertical-align` web feature docs: https://github.com/web-platform-dx/web-features/blob/main/features/vertical-align.yml
--

wpt-commits: 3c0f70d354c0f2804108cb58e1b8b14d78e8f1e3
wpt-pr: 57053
2026-01-09 23:28:42 +00:00
jugglinmike 3c30cc853f Bug 2004575 [wpt PR 56533] - Map CSS-column-related tests to web-features, a=testonly
Automatic update from web-platform-tests
Map CSS-column-related tests to web-features (#56533)

--

wpt-commits: fd862e7b72ca865631bd58266129410e88e1784e
wpt-pr: 56533
2026-01-09 23:28:30 +00:00
Chris Cuellar 6a4748b20b Bug 2001754 [wpt PR 56201] - classifies "visibility" web feature, a=testonly
Automatic update from web-platform-tests
classifies "visibility" web feature (#56201)

--

wpt-commits: b35ebf36ea6b852af43ff0420f506b3c894fe412
wpt-pr: 56201
2026-01-09 23:28:21 +00:00
Howard Edwards 70e97c7f87 Bug 2006460 [wpt PR 56790] - Map line-height web feature, a=testonly
Automatic update from web-platform-tests
Map `line-height` web feature (#56790)

* Map "line-height" to web-features

* Update linebox/WEB_FEATURES.yml

---------

Co-authored-by: Mike Pennisi <[email protected]>
--

wpt-commits: 054a8af239477f505658602086bd026376bf9553
wpt-pr: 56790
2026-01-09 23:28:05 +00:00
Mx Corey Frang 73280107ce Bug 2005633 [wpt PR 56692] - Classify padding, a=testonly
Automatic update from web-platform-tests
Classify padding (#56692)

Co-authored-by: Mike Pennisi <[email protected]>
--

wpt-commits: 7cfec2808b1d415fe78b1a9b5e9f4e8a620dbd2e
wpt-pr: 56692
2026-01-09 23:28:01 +00:00