Closed Bug 2048404 Opened 2 months ago Closed 2 months ago

[wpt-sync] Sync PR 60688 - Fix scroll button layout sibling traversal and rebuild order

Categories

(Core :: Layout: Scrolling and Overflow, task, P4)

task

Tracking

()

RESOLVED FIXED
154 Branch
Tracking Status
firefox154 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 60688 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/60688
Details from upstream follow.

Daniil Sakhapov <sakhapov@chromium.org> wrote:

Fix scroll button layout sibling traversal and rebuild order

The scroll buttons' layout sibling traversal sequence was incorrect,
which caused layout sibling queries in NextSiblingLayoutObjectInternal
to return the wrong layout sibling (e.g., scroll buttons appearing in
the wrong traversal sequence before the originating element instead of
after). During layout tree rebuild/reattachment, this incorrect sibling
traversal sequence resulted in parent-mismatched sibling insertion
DCHECKs and functional anchor-positioning failures on media query updates.

This CL fixes the traversal order in NextSiblingLayoutObjectInternal by
correctly utilizing the unified box tree sibling order sequence, placing
scroll-buttons and scroll-marker-groups after the originating element
in their logical layout sibling positions.

This resolves the mismatched parent sibling insertion issues safely and
correctly at the traversal level. A new unit test is also added to verify
correct out-of-flow scroll button layout sibling parent container sharing.

Fixed: 419755710
Change-Id: Icb88bf586f7c6b145ed3775505e50a9337a43a31
Reviewed-on: https://chromium-review.googlesource.com/7863625
WPT-Export-Revision: e88ea9da3a1500014cbf4b68787040afad5ebd87

Component: web-platform-tests → Layout: Scrolling and Overflow
Product: Testing → Core
Whiteboard: [wptsync downstream] → [wptsync downstream error]
Whiteboard: [wptsync downstream error] → [wptsync downstream]

CI Results

Ran 11 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 182 tests and 4 subtests

Status Summary

Firefox

OK : 66
PASS : 17[Gecko-linux2204-64-wayland-debug, Gecko-linux2204-64-wayland-opt] 34[Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt] 43[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview] 46[Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt]
FAIL : 1[GitHub] 136[Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt] 212[Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt] 214[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview]
TIMEOUT: 1[Gecko-linux2204-64-wayland-debug, Gecko-linux2204-64-wayland-opt] 2[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt]
ERROR : 1
NOTRUN : 1

Chrome

FAIL : 1

Safari

FAIL : 1

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

Tests Disabled in Gecko Infrastructure

Status: NEW → RESOLVED
Closed: 2 months ago
Resolution: --- → FIXED
Target Milestone: --- → 154 Branch
You need to log in before you can comment on or make changes to this bug.