зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1464288 - Make sure PreProcessDisplayLists logic for switching AGRs matches what ComputeRebuildRegion uses. r=miko
MozReview-Commit-ID: Ht11ul21PRO --HG-- extra : rebase_source : 3bb7b0128f3932142b518490cef3ba814245b5d6
This commit is contained in:
Родитель
e2fc12b175
Коммит
6fdf0741d7
|
@ -75,7 +75,8 @@ MarkFramesWithItemsAndImagesModified(nsDisplayList* aList)
|
||||||
static AnimatedGeometryRoot*
|
static AnimatedGeometryRoot*
|
||||||
SelectAGRForFrame(nsIFrame* aFrame, AnimatedGeometryRoot* aParentAGR)
|
SelectAGRForFrame(nsIFrame* aFrame, AnimatedGeometryRoot* aParentAGR)
|
||||||
{
|
{
|
||||||
if (!aFrame->IsStackingContext()) {
|
if (!aFrame->IsStackingContext() ||
|
||||||
|
!aFrame->IsFixedPosContainingBlock()) {
|
||||||
return aParentAGR;
|
return aParentAGR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html reftest-async-scroll
|
||||||
|
reftest-displayport-x="0" reftest-displayport-y="0"
|
||||||
|
reftest-displayport-w="800" reftest-displayport-h="2000"
|
||||||
|
reftest-async-scroll-x="0" reftest-async-scroll-y="400"
|
||||||
|
class="reftest-wait">
|
||||||
|
<head>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
height: 4000px;
|
||||||
|
overflow:hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
div {
|
||||||
|
left: 200px;
|
||||||
|
top: 200px;
|
||||||
|
width: 200px;
|
||||||
|
height: 200px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.scrolled {
|
||||||
|
position: absolute;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fixed {
|
||||||
|
position: fixed;
|
||||||
|
background-color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<div style="opacity:0.5">
|
||||||
|
<div class="scrolled" style="top: 200px; background-color: green"></div>
|
||||||
|
<div class="scrolled" style="top: 600px; background-color:blue" id="scrolled"></div>
|
||||||
|
<div class="fixed" style="top: 200px"></div>
|
||||||
|
<div class="fixed" id="fixed" style="top: 200px; width: 100px; height: 100px; z-index: 2; background-color: orange"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
function doTest() {
|
||||||
|
document.getElementById("fixed").style.backgroundColor = "red";
|
||||||
|
document.documentElement.removeAttribute("class");
|
||||||
|
}
|
||||||
|
|
||||||
|
window.addEventListener("MozReftestInvalidate", doTest);
|
||||||
|
</script>
|
||||||
|
</html>
|
|
@ -0,0 +1,22 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<style>
|
||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div {
|
||||||
|
left: 200px;
|
||||||
|
top: 200px;
|
||||||
|
position:absolute;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div style="opacity:0.5; position:static">
|
||||||
|
<div style="width: 200px; height: 200px; background-color: blue;"></div>
|
||||||
|
<div style="width: 100px; height: 100px; background-color: red;"></div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -34,3 +34,4 @@ skip-if(!asyncPan) == 1437374-1.html 1437374-1-ref.html
|
||||||
== 1453541-2.html 1453541-ref.html
|
== 1453541-2.html 1453541-ref.html
|
||||||
== 1452805-1.html 1452805-ref.html
|
== 1452805-1.html 1452805-ref.html
|
||||||
== 1461231-1.html about:blank
|
== 1461231-1.html about:blank
|
||||||
|
fuzzy(2,40000) == 1464288-1.html 1464288-ref.html
|
||||||
|
|
Загрузка…
Ссылка в новой задаче