tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

root-to-shared-animation-end.html (1411B)


      1 <!DOCTYPE html>
      2 <html class=reftest-wait>
      3 <link rel="help" href="https://drafts.csswg.org/css-view-transitions-1/">
      4 <link rel="author" href="mailto:vmpstr@chromium.org">
      5 <link rel="match" href="root-to-shared-animation-end-ref.html">
      6 
      7 <script src="/common/reftest-wait.js"></script>
      8 
      9 <style>
     10 body, html { padding: 0; margin: 0 }
     11 body {
     12  background: lightgreen;
     13 }
     14 #box {
     15  width: 400px;
     16  height: 400px;
     17  background: blue;
     18  contain: paint;
     19 }
     20 .hidden {
     21  contain: paint;
     22  width: 10px;
     23  height: 10px;
     24  background: red;
     25  view-transition-name: hidden;
     26 }
     27 
     28 html::view-transition-group(hidden) { animation-duration: 300s; }
     29 html::view-transition-image-pair(hidden) { visibility: hidden; }
     30 
     31 html::view-transition-group(root) { animation-duration: 0s; }
     32 html::view-transition-new(*) { animation: unset; opacity: 0; }
     33 html::view-transition-old(*) { animation: unset; opacity: 1; }
     34 </style>
     35 
     36 <div id=box></div>
     37 <div class=hidden></div>
     38 
     39 <script>
     40 failIfNot(document.startViewTransition, "Missing document.startViewTransition");
     41 
     42 async function runTest() {
     43  document.startViewTransition(() => {
     44    document.documentElement.style.viewTransitionName = "none";
     45    document.body.style.background = "yellow";
     46    box.style.viewTransitionName = "root";
     47 
     48    requestAnimationFrame(() => requestAnimationFrame(takeScreenshot));
     49  });
     50 }
     51 onload = () => requestAnimationFrame(() => requestAnimationFrame(runTest));
     52 </script>