62 lines
2.0 KiB
HTML
62 lines
2.0 KiB
HTML
<!doctype html>
|
|
<html>
|
|
<head>
|
|
<!--
|
|
This test performs an animation of the matrix operator. The matrix is defined so that the
|
|
decomposition (unmatrix) algorithm is tested on the path where the matrix is negated and the
|
|
the scaling factors are also negated.
|
|
The animation is started and a snapshot is taken after start. The "d" component of matrix
|
|
should be negative.
|
|
-->
|
|
<style type="text/css" media="screen">
|
|
#box {
|
|
width: 100px;
|
|
height: 100px;
|
|
background-color: blue;
|
|
-webkit-animation-duration: 1s;
|
|
}
|
|
|
|
@-webkit-keyframes anim {
|
|
from { -webkit-transform: matrix(1, 0, 0, -1, 0, 0); }
|
|
to { -webkit-transform: matrix(1, 0, 0, 1, 0, 0); }
|
|
}
|
|
</style>
|
|
<script type="text/javascript" charset="utf-8">
|
|
if (window.testRunner) {
|
|
testRunner.dumpAsText();
|
|
testRunner.waitUntilDone();
|
|
}
|
|
|
|
result = "PASS";
|
|
|
|
function snapshot()
|
|
{
|
|
var boxComputedStyle = window.getComputedStyle(document.getElementById('box'));
|
|
var matrix = new WebKitCSSMatrix(boxComputedStyle.webkitTransform);
|
|
|
|
// "d" component (scaleY) should be negative.
|
|
if (matrix["d"] > 0)
|
|
result = "FAIL(scaleY was positive, expected to be negative)";
|
|
|
|
document.getElementById('result').innerHTML = result;
|
|
if (window.testRunner)
|
|
testRunner.notifyDone();
|
|
}
|
|
|
|
function startAnimation()
|
|
{
|
|
document.getElementById("box").style.webkitAnimationName = "anim";
|
|
}
|
|
|
|
document.addEventListener('webkitAnimationStart', snapshot, false);
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div id="box"></div>
|
|
<div id="result"></div>
|
|
<script>
|
|
startAnimation();
|
|
</script>
|
|
</body>
|
|
</html>
|