blob: 09c8ad6fdeb0ababdbdf6d10081b25d02b2e3e95 [file] [log] [blame]
<!DOCTYPE html><!-- webkit-test-runner [ experimental:WebAnimationsCSSIntegrationEnabled=false ] -->
<html>
<head>
<title>Test that animations stop on suspend</title>
<style type="text/css" media="screen">
iframe {
border: 1px solid black;
padding: 5px;
margin: 20px;
height: 200px;
width: 600px;
}
.box {
height: 100px;
width: 100px;
margin: 35px;
padding: 5px;
background-color: green;
overflow:hidden;
-webkit-animation: move 400ms alternate infinite linear;
}
@-webkit-keyframes move {
from { -webkit-transform: translate3d(0px, 0px, 0px); }
to { -webkit-transform: translate3d(400px, 0px, 0px); }
}
</style>
<script src="resources/animation-test-helpers.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" charset="utf-8">
const expectedValues = [
// [animation-name, time, element-id, property, expected-value, tolerance]
["move", 0.2, "box", "webkitTransform", [1,0,0,1, 100, 0], 30],
["move", 0.2, "iframe.subframe-box", "webkitTransform", [1,0,0,1, 100, 0], 30],
["move", 0.4, "box", "webkitTransform", [1,0,0,1, 200, 0], 30],
["move", 0.4, "iframe.subframe-box", "webkitTransform", [1,0,0,1, 200, 0], 30],
];
function suspend()
{
if (window.internals)
internals.suspendAnimations();
}
function resume()
{
if (window.internals)
internals.resumeAnimations();
}
function setTimers()
{
setTimeout(suspend, 100);
setTimeout(resume, 300);
}
runAnimationTest(expectedValues, setTimers, undefined, true);
</script>
</head>
<body>
<div class="box" id="box"></div>
<!-- The parent document may into compositing mode by the iframe. -->
<iframe id="iframe" src="resources/stop-animation-on-suspend-subframe.html"></iframe>
<div id="result"></div>
</body>
</html>