Bug 1646422 [wpt PR 24198] - blink: make LayoutBlock::RemovePositionedObject remove other objects, a=testonly
authorScott Violet <sky@chromium.org>
Mon, 22 Jun 2020 10:44:25 +0000
changeset 600932 eae3eced148f41177408b1949e9f7c4707f26271
parent 600931 fb8880027ccc3461bfc050029fc16353b47c5c6d
child 600933 f468703d8535544aa322cf833519cb2f7eec8003
push id13310
push userffxbld-merge
push dateMon, 29 Jun 2020 14:50:06 +0000
treeherdermozilla-beta@15a59a0afa5c [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstestonly
bugs1646422, 24198, 1092887, 2248136, 779840
milestone79.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 1646422 [wpt PR 24198] - blink: make LayoutBlock::RemovePositionedObject remove other objects, a=testonly Automatic update from web-platform-tests blink: make LayoutBlock::RemovePositionedObject remove other objects This changes RemovePositionedObjects to remove any fixed-pos descendants. This ensures that if the removed object is added back, it doesn't end up after any descendants, which would cause out of order layout. BUG=1092887 TEST=webkit-box-fixed-position-child.html Change-Id: I41f01bad74048cf4983f0dda5fe0f073b3eb38f2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2248136 Reviewed-by: Morten Stenshorne <mstensho@chromium.org> Commit-Queue: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/master@{#779840} -- wpt-commits: 5756870d039495439b8512c26db05f25aaa3a0d7 wpt-pr: 24198
testing/web-platform/tests/compat/webkit-box-fixed-position-child.html
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/compat/webkit-box-fixed-position-child.html
@@ -0,0 +1,17 @@
+<!doctype html>
+<title>Verifies changing 'display' with a fixed position webkit-box that
+  has a fixed position child</title>
+<body>
+  <div id="outer" style="position:fixed;">
+  <div style="display:-webkit-box; float:left; padding-left:100%;">
+    <div style="position:fixed; width:100px; height:100px;"></div>
+  </div>
+  <div style="display:inline-block; width:100px; height:20px;"></div>
+</div>
+<div id="elm"></div>
+A
+</body>
+<script>
+  document.body.offsetTop;
+  elm.style.display = 'none';
+</script>