Closed Bug 1806861 Opened 2 years ago Closed 2 years ago

[wpt-sync] Sync PR 37628 - Prevent OOFs in clipped containers from adding more fragmentainers.

Categories

(Core :: Layout, task, P4)

task

Tracking

()

RESOLVED FIXED
110 Branch
Tracking Status
firefox110 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

(Blocks 1 open bug, )

Details

(Whiteboard: [wptsync downstream])

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

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

Morten Stenshorne <mstensho@chromium.org> wrote:

Prevent OOFs in clipped containers from adding more fragmentainers.

If the containing block of an out-of-flow positioned box is inside a
overflow-clipped container inside a fragmentation context, prevent the
out-of-flow positioned box from generating additional fragmentainers.

An OOF will have its fragments placed as direct children of
fragmentainers, so any clipping caused by actual ancestor in the real
containing block chain will not be detected during layout. Therefore,
when reaching the last fragmentainer seen (so far), force the OOF node
to finish there, placing all its remaining content in the last
fragmentainer. Anything overflowing the clipped container will be
clipped during paint / pre-paint - normally. This isn't a perfect
solution, since the clipped container doesn't necessarily end in the
last fragmentainer created so far. It may end earlier. This is to say
that this fix doesn't catch every problem in this area. But hopefully
good enough for now.

Bug: 1399313
Change-Id: I27be47bd09d7212abd6aea0715e1cc8fe0b3440d
Reviewed-on: https://chromium-review.googlesource.com/4110949
WPT-Export-Revision: 7cc74af02c48409437d7be3ab2a239645654abfd

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

CI Results

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

Total 6 tests

Status Summary

Firefox

OK : 1
PASS: 1[Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview, Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt] 2[GitHub]
FAIL: 1[Gecko-android-em-7.0-x86_64-qr-debug-isolated-process-geckoview] 4[Gecko-android-em-7.0-x86_64-lite-qr-opt-geckoview, Gecko-android-em-7.0-x86_64-qr-debug-geckoview, Gecko-android-em-7.0-x86_64-qr-opt-geckoview, Gecko-linux1804-64-qr-debug, Gecko-linux1804-64-qr-opt, Gecko-windows10-32-2004-qr-debug, Gecko-windows10-32-2004-qr-opt, Gecko-windows10-64-2004-qr-debug, Gecko-windows10-64-2004-qr-opt, GitHub]

Chrome

OK : 1
PASS: 1
FAIL: 5

Safari

OK : 1
PASS: 3
FAIL: 2

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a062219709da
[wpt PR 37628] - Prevent OOFs in clipped containers from adding more fragmentainers., a=testonly
https://hg.mozilla.org/integration/autoland/rev/dc09f6c6c024
[wpt PR 37628] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 110 Branch
You need to log in before you can comment on or make changes to this bug.