Bug 1156456 patch 1 - Reftests comparing a 3-D transformed cube generated by main-thread paths and off-main-thread animations paths. r=birtles

I confirmed that without the patch, the test marked as failing (the one
with zoom) in this patch (which will be unmarked in the next patch)
fails.

There is also a small amount of fuzz that will need to be annotated with
an additional patch on top of the patch stack.
This commit is contained in:
L. David Baron 2015-04-22 19:37:04 -07:00
Родитель 9df2ba75ee
Коммит 7952663706
5 изменённых файлов: 215 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,50 @@
<!DOCTYPE HTML>
<html>
<title>Reftest, bug 1156456</title>
<style>
html, body {
height: 100%;
}
body {
background: white;
perspective: 1000px;
}
div, div::before, div::after {
width: 200px; height: 200px;
}
div {
position: absolute;
top: 0; right: 0; bottom: 0; left: 0;
margin: auto;
transform-origin: 50% 50% 100px;
background: #006;
/* FIXME: use radians rather than degrees for now to avoid the rounding
issue described in
https://bugzilla.mozilla.org/show_bug.cgi?id=1156456#c19 */
/* transform: rotateY(-120deg) rotateX(60deg); */
transform: rotateY(-2.0944rad) rotateX(1.0472rad);
transform-style: preserve-3d;
}
div::before, div::after {
position: absolute;
top: 0; left: 0;
content: "";
}
div::before {
background: #00f;
transform: translate3D(100px, 0, 100px) rotateY(90deg);
}
div::after {
background: #00c;
transform: translate3D(0, -100px, 100px) rotateX(90deg);
}
</style>
<div></div>

Просмотреть файл

@ -0,0 +1,50 @@
<!DOCTYPE HTML>
<html reftest-zoom="1.5">
<title>Reftest, bug 1156456</title>
<style>
html, body {
height: 100%;
}
body {
background: white;
perspective: 1000px;
}
div, div::before, div::after {
width: 200px; height: 200px;
}
div {
position: absolute;
top: 0; right: 0; bottom: 0; left: 0;
margin: auto;
transform-origin: 50% 50% 100px;
background: #006;
/* FIXME: use radians rather than degrees for now to avoid the rounding
issue described in
https://bugzilla.mozilla.org/show_bug.cgi?id=1156456#c19 */
/* transform: rotateY(-120deg) rotateX(60deg); */
transform: rotateY(-2.0944rad) rotateX(1.0472rad);
transform-style: preserve-3d;
}
div::before, div::after {
position: absolute;
top: 0; left: 0;
content: "";
}
div::before {
background: #00f;
transform: translate3D(100px, 0, 100px) rotateY(90deg);
}
div::after {
background: #00c;
transform: translate3D(0, -100px, 100px) rotateX(90deg);
}
</style>
<div></div>

Просмотреть файл

@ -0,0 +1,56 @@
<!DOCTYPE HTML>
<html reftest-zoom="1.5">
<title>Reftest, bug 1156456</title>
<style>
html, body {
height: 100%;
}
body {
background: white;
perspective: 1000px;
}
div, div::before, div::after {
width: 200px; height: 200px;
}
@keyframes HoldTransform {
from, to {
/* FIXME: use radians rather than degrees for now to avoid the rounding
issue described in
https://bugzilla.mozilla.org/show_bug.cgi?id=1156456#c19 */
/* transform: rotateY(-120deg) rotateX(60deg); */
transform: rotateY(-2.0944rad) rotateX(1.0472rad);
}
}
div {
position: absolute;
top: 0; right: 0; bottom: 0; left: 0;
margin: auto;
transform-origin: 50% 50% 100px;
background: #006;
transform-style: preserve-3d;
animation: 10s HoldTransform infinite;
}
div::before, div::after {
position: absolute;
top: 0; left: 0;
content: "";
}
div::before {
background: #00f;
transform: translate3D(100px, 0, 100px) rotateY(90deg);
}
div::after {
background: #00c;
transform: translate3D(0, -100px, 100px) rotateX(90deg);
}
</style>
<div></div>

Просмотреть файл

@ -0,0 +1,56 @@
<!DOCTYPE HTML>
<html>
<title>Reftest, bug 1156456</title>
<style>
html, body {
height: 100%;
}
body {
background: white;
perspective: 1000px;
}
div, div::before, div::after {
width: 200px; height: 200px;
}
@keyframes HoldTransform {
from, to {
/* FIXME: use radians rather than degrees for now to avoid the rounding
issue described in
https://bugzilla.mozilla.org/show_bug.cgi?id=1156456#c19 */
/* transform: rotateY(-120deg) rotateX(60deg); */
transform: rotateY(-2.0944rad) rotateX(1.0472rad);
}
}
div {
position: absolute;
top: 0; right: 0; bottom: 0; left: 0;
margin: auto;
transform-origin: 50% 50% 100px;
background: #006;
transform-style: preserve-3d;
animation: 10s HoldTransform infinite;
}
div::before, div::after {
position: absolute;
top: 0; left: 0;
content: "";
}
div::before {
background: #00f;
transform: translate3D(100px, 0, 100px) rotateY(90deg);
}
div::after {
background: #00c;
transform: translate3D(0, -100px, 100px) rotateX(90deg);
}
</style>
<div></div>

Просмотреть файл

@ -57,3 +57,6 @@ pref(layout.css.will-change.enabled,true) != willchange-containing-block.html?wi
fuzzy-if(winWidget&&!layersGPUAccelerated,1,606) == scroll-perspective-1.html scroll-perspective-1-ref.html
# Bugs
fails-if(!layersGPUAccelerated) == 1035611-1.html 1035611-1-ref.html # Bug 1072898 for !layersGPUAccelerated failures
== animate-cube.html animate-cube-ref.html
fails == animate-cube-zoom.html animate-cube-zoom-ref.html # Bug 1156456
!= animate-cube-ref.html animate-cube-zoom-ref.html