tor-browser

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

remove-child.html (1203B)


      1 <!DOCTYPE html>
      2 <title>Remove the child of the fullscreen element</title>
      3 <script src="/resources/testharness.js"></script>
      4 <script src="/resources/testharnessreport.js"></script>
      5 <script src="/resources/testdriver.js"></script>
      6 <script src="/resources/testdriver-vendor.js"></script>
      7 <script src="../trusted-click.js"></script>
      8 <div id="log"></div>
      9 <div id="parent">
     10  <div></div>
     11 </div>
     12 <script>
     13  promise_test(async (t) => {
     14    t.add_cleanup(() => {
     15      if (document.fullscreenElement) {
     16        return document.exitFullscreen();
     17      }
     18    });
     19    const parent = document.getElementById("parent");
     20    await Promise.all([trusted_request(parent), fullScreenChange()]);
     21 
     22    assert_equals(document.fullscreenElement, parent);
     23    parent.textContent = ""; // removes all children
     24    // The fullscreen element should not be affected.
     25    assert_equals(document.fullscreenElement, parent);
     26    document.onfullscreenchange = t.unreached_func("fullscreenchange event");
     27    // A fullscreenchange event would be fired after an async section
     28    // and an animation frame task, so wait until after that.
     29    await new Promise((resolve) => {
     30      requestAnimationFrame(resolve);
     31    });
     32  });
     33 </script>