| <!DOCTYPE html> | |
| <html class=reftest-wait> | |
| <title>View transitions: set current time</title> | |
| <link rel="help" href="https://www.w3.org/TR/css-view-transitions-1/"> | |
| <link rel="author" href="mailto:vmpstr@chromium.org"> | |
| <link rel="match" href="set-current-time-ref.html"> | |
| <meta name="fuzzy" content="maxDifference=0-2; totalPixels=0-40000"> | |
| <script src="/common/reftest-wait.js"></script> | |
| <style> | |
| :root { view-transition-name: unset; } | |
| .target { | |
| width: 100px; | |
| height: 100px; | |
| background: blue; | |
| view-transition-name: target; | |
| } | |
| html::view-transition-group(*) { | |
| animation: unset; | |
| } | |
| html::view-transition-old(*) { | |
| animation: unset; | |
| } | |
| html::view-transition-new(target) { | |
| animation-duration: 1s; | |
| animation-timing-function: linear; | |
| animation-play-state: paused; | |
| } | |
| </style> | |
| <div id=target></div> | |
| <script> | |
| failIfNot(document.startViewTransition, "Missing document.startViewTransition"); | |
| async function runTest() { | |
| let transition = document.startViewTransition(() => target.classList.add("target")); | |
| transition.ready.then(() => { | |
| requestAnimationFrame(() => requestAnimationFrame(() => { | |
| document.getAnimations().forEach((animation) => { | |
| animation.currentTime = 500; | |
| }); | |
| requestAnimationFrame(takeScreenshot); | |
| })); | |
| }); | |
| } | |
| onload = () => requestAnimationFrame(() => requestAnimationFrame(runTest)); | |
| </script> | |