mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-06 17:16:12 +00:00
3947001236
Animation::ResumeAt contains an assertion that, when we exit the play-pending state, checks we either have a resolved start time or a resolved hold time. That's normally true but if we are aborting a pause on animation that is finished we can end up with a resolved start time (since we don't clear the start time when we're aborting a pause) and a resolved hold time (either because the regular finishing behavior set one, or, because play() applied auto-rewinding behavior and set it). In that case we should actually respect the hold time and update the start time when resuming the animation. However, ResumeAt won't update the start time if it is already set. This patch fixes that by clearing the start time in DoPlay in the case where we are aborting a pause and have a hold time. --HG-- extra : rebase_source : 83f980d6cbc34375274f30f6527992b4fec7f639
26 lines
461 B
HTML
26 lines
461 B
HTML
<!doctype html>
|
|
<html class="reftest-wait">
|
|
<head>
|
|
<meta charset=utf-8>
|
|
<style>
|
|
@keyframes a { }
|
|
body {
|
|
animation-name: a;
|
|
}
|
|
</style>
|
|
|
|
<script>
|
|
function boom()
|
|
{
|
|
var body = document.body;
|
|
body.style.animationPlayState = 'paused';
|
|
window.getComputedStyle(body).animationPlayState;
|
|
body.style.animationPlayState = 'running';
|
|
document.documentElement.removeAttribute("class");
|
|
}
|
|
</script>
|
|
</head>
|
|
|
|
<body onload="setTimeout(boom, 100);"></body>
|
|
</html>
|