mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-31 11:37:30 +09:00
moebius#138: Optimize operations on root of deeply-nested frame tree
https://github.com/MoonchildProductions/moebius/pull/138
This commit is contained in:
parent
02f3024a9c
commit
85692a1198
23 changed files with 651 additions and 40 deletions
|
|
@ -0,0 +1,18 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>
|
||||
Reference case with body and html *independently* scrollable.
|
||||
</title>
|
||||
<style>
|
||||
html {
|
||||
overflow: scroll;
|
||||
}
|
||||
body {
|
||||
overflow: scroll;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
23
layout/reftests/scrolling/propagated-overflow-style-1a.html
Normal file
23
layout/reftests/scrolling/propagated-overflow-style-1a.html
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
<!DOCTYPE html>
|
||||
<html class="reftest-wait">
|
||||
<head>
|
||||
<title>
|
||||
Testcase with body and html *independently* scrollable,
|
||||
with body's "overflow" set dynamically.
|
||||
</title>
|
||||
<style>
|
||||
html {
|
||||
overflow: scroll;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
function doTest() {
|
||||
document.body.style.overflow = "scroll";
|
||||
document.documentElement.removeAttribute("class");
|
||||
}
|
||||
window.addEventListener("MozReftestInvalidate", doTest);
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
23
layout/reftests/scrolling/propagated-overflow-style-1b.html
Normal file
23
layout/reftests/scrolling/propagated-overflow-style-1b.html
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
<!DOCTYPE html>
|
||||
<html class="reftest-wait">
|
||||
<head>
|
||||
<title>
|
||||
Testcase with body and html *independently* scrollable,
|
||||
with html's "overflow" set dynamically.
|
||||
</title>
|
||||
<style>
|
||||
body {
|
||||
overflow: scroll;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
function doTest() {
|
||||
document.documentElement.style.overflow = "scroll";
|
||||
document.documentElement.removeAttribute("class");
|
||||
}
|
||||
window.addEventListener("MozReftestInvalidate", doTest);
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
19
layout/reftests/scrolling/propagated-overflow-style-1c.html
Normal file
19
layout/reftests/scrolling/propagated-overflow-style-1c.html
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html class="reftest-wait">
|
||||
<head>
|
||||
<title>
|
||||
Testcase with body and html *independently* scrollable,
|
||||
with both html & body's "overflow" set dynamically.
|
||||
</title>
|
||||
<script>
|
||||
function doTest() {
|
||||
document.documentElement.style.overflow = "scroll";
|
||||
document.body.style.overflow = "scroll";
|
||||
document.documentElement.removeAttribute("class");
|
||||
}
|
||||
window.addEventListener("MozReftestInvalidate", doTest);
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>
|
||||
Reference case with the root viewport scrollable, via styles on html node.
|
||||
</title>
|
||||
<style>
|
||||
html {
|
||||
overflow: scroll;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
26
layout/reftests/scrolling/propagated-overflow-style-2a.html
Normal file
26
layout/reftests/scrolling/propagated-overflow-style-2a.html
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
<!DOCTYPE html>
|
||||
<html class="reftest-wait">
|
||||
<head>
|
||||
<title>
|
||||
Testcase with only one of [html,body] being scrollable,
|
||||
after body's "overflow" is reset dynamically.
|
||||
</title>
|
||||
<style>
|
||||
html {
|
||||
overflow: scroll;
|
||||
}
|
||||
body {
|
||||
overflow: scroll;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
function doTest() {
|
||||
document.body.style.overflow = "visible";
|
||||
document.documentElement.removeAttribute("class");
|
||||
}
|
||||
window.addEventListener("MozReftestInvalidate", doTest);
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
26
layout/reftests/scrolling/propagated-overflow-style-2b.html
Normal file
26
layout/reftests/scrolling/propagated-overflow-style-2b.html
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
<!DOCTYPE html>
|
||||
<html class="reftest-wait">
|
||||
<head>
|
||||
<title>
|
||||
Testcase with only one of [html,body] being scrollable,
|
||||
after html's "overflow" is reset dynamically.
|
||||
</title>
|
||||
<style>
|
||||
html {
|
||||
overflow: scroll;
|
||||
}
|
||||
body {
|
||||
overflow: scroll;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
function doTest() {
|
||||
document.documentElement.style.overflow = "visible";
|
||||
document.documentElement.removeAttribute("class");
|
||||
}
|
||||
window.addEventListener("MozReftestInvalidate", doTest);
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
24
layout/reftests/scrolling/propagated-overflow-style-2c.html
Normal file
24
layout/reftests/scrolling/propagated-overflow-style-2c.html
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<!DOCTYPE html>
|
||||
<html class="reftest-wait">
|
||||
<head>
|
||||
<title>
|
||||
Testcase with only one of [html,body] being scrollable,
|
||||
with their "overflow" styles being dynamically swapped.
|
||||
</title>
|
||||
<style>
|
||||
html {
|
||||
overflow: scroll;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
function doTest() {
|
||||
document.documentElement.style.overflow = "visible";
|
||||
document.body.style.overflow = "scroll";
|
||||
document.documentElement.removeAttribute("class");
|
||||
}
|
||||
window.addEventListener("MozReftestInvalidate", doTest);
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
24
layout/reftests/scrolling/propagated-overflow-style-2d.html
Normal file
24
layout/reftests/scrolling/propagated-overflow-style-2d.html
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<!DOCTYPE html>
|
||||
<html class="reftest-wait">
|
||||
<head>
|
||||
<title>
|
||||
Testcase with only one of [html,body] being scrollable,
|
||||
with their "overflow" styles being dynamically swapped.
|
||||
</title>
|
||||
<style>
|
||||
body {
|
||||
overflow: scroll;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
function doTest() {
|
||||
document.documentElement.style.overflow = "scroll";
|
||||
document.body.style.overflow = "visible";
|
||||
document.documentElement.removeAttribute("class");
|
||||
}
|
||||
window.addEventListener("MozReftestInvalidate", doTest);
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
15
layout/reftests/scrolling/propagated-overflow-style-2e.html
Normal file
15
layout/reftests/scrolling/propagated-overflow-style-2e.html
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>
|
||||
Testcase with the root viewport scrollable, via styles on body node.
|
||||
</title>
|
||||
<style>
|
||||
body {
|
||||
overflow: scroll;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -85,3 +85,13 @@ fuzzy-if(asyncPan&&!layersGPUAccelerated,102,2420) == frame-scrolling-attr-2.htm
|
|||
== fractional-scroll-area.html?top=0.4&outerBottom=99.6&innerBottom=200.4&scrollBefore=999 fractional-scroll-area.html?top=0&outerBottom=100&innerBottom=200&scrollBefore=999
|
||||
== fractional-scroll-area.html?top=0.4&outerBottom=100.4&innerBottom=200.4&scrollBefore=999 fractional-scroll-area.html?top=0&outerBottom=100&innerBottom=200&scrollBefore=999
|
||||
!= fractional-scroll-area-invalidation.html about:blank
|
||||
|
||||
# Tests for "overflow" styles that may be propagated to the viewport:
|
||||
== propagated-overflow-style-1a.html propagated-overflow-style-1-ref.html
|
||||
== propagated-overflow-style-1b.html propagated-overflow-style-1-ref.html
|
||||
== propagated-overflow-style-1c.html propagated-overflow-style-1-ref.html
|
||||
== propagated-overflow-style-2a.html propagated-overflow-style-2-ref.html
|
||||
== propagated-overflow-style-2b.html propagated-overflow-style-2-ref.html
|
||||
== propagated-overflow-style-2c.html propagated-overflow-style-2-ref.html
|
||||
== propagated-overflow-style-2d.html propagated-overflow-style-2-ref.html
|
||||
== propagated-overflow-style-2e.html propagated-overflow-style-2-ref.html
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue