Bug 1720813 [wpt PR 29685] - [LayoutNG] Consider OOF positioned nodes as IsManagedByLayoutNG., a=testonly
☠☠ backed out by dec0a179f851 ☠ ☠
authorIan Kilpatrick <ikilpatrick@chromium.org>
Sat, 17 Jul 2021 09:55:27 +0000
changeset 585881 836c9f7cb430f112cedbdbebb83750ec182a3f7a
parent 585880 a163466c7f99e6211f4c192a5cc97a02b6a70a60
child 585882 b6444ae3b8239365999053781a62af0e9fad0538
push id38620
push usercsabou@mozilla.com
push dateSun, 18 Jul 2021 09:08:29 +0000
treeherdermozilla-central@cc4e5ea0c986 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstestonly
bugs1720813, 29685, 1225548, 3033195, 902402
milestone92.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1720813 [wpt PR 29685] - [LayoutNG] Consider OOF positioned nodes as IsManagedByLayoutNG., a=testonly Automatic update from web-platform-tests [LayoutNG] Consider OOF positioned nodes as IsManagedByLayoutNG. positioned: fixed NG elements whose containing block was the LayoutView had issues (the legacy kind) with scrollbars. We can avoid these issues by letting IsManagedByLayoutNG return true when OOF. These are basically "managed" by NG as they are laid out via. the NGOutOfFlowLayoutPart. The other callers of IsManagedByLayoutNG should also be fine with this change. 1) https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/frame/local_frame_view.cc;l=1539?q=ismanagedbylayoutng&ss=chromium Should be fine, OOF doesn't need to be pre-laid-out. 2) https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/layout/depth_ordered_layout_object_list.cc;l=53?q=ismanagedbylayoutng&ss=chromium Should also be fine as OOF? Bug: 1225548 Change-Id: I42c4551382553ea52edc5f2ada94ce74d570c6bc Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3033195 Reviewed-by: Morten Stenshorne <mstensho@chromium.org> Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org> Cr-Commit-Position: refs/heads/master@{#902402} -- wpt-commits: 43315228ce863f064e2702e22804ecd381e5da70 wpt-pr: 29685
testing/web-platform/tests/css/css-position/position-absolute-dynamic-auto-overflow.html
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/css/css-position/position-absolute-dynamic-auto-overflow.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=1225548">
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div style="position: fixed; background: red; max-height: 150px; overflow-y: auto;">
+  <div id="target" style="width: 100px; background: green;"></div>
+</div>
+<script>
+document.body.offsetTop;
+const target = document.getElementById('target');
+target.style.height = '200px';
+document.body.offsetTop;
+target.style.height = '100px';
+</script>