tor-browser

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

element-request-fullscreen-consume-user-activation.html (1084B)


      1 <!DOCTYPE html>
      2 <title>Element#requestFullscreen() consumes user activation</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 <div id="log"></div>
      8 <script>
      9 promise_test(async (t) => {
     10    t.add_cleanup(() => {
     11        if (document.fullscreenElement) return document.exitFullscreen();
     12    });
     13    const div = document.querySelector("div");
     14 
     15    await test_driver.bless("fullscreen");
     16    assert_true(navigator.userActivation.isActive, "Activation must be active");
     17    // Request fullscreen twice in a row. The first request should consume the
     18    // user activation and succeed, and the second request should fail because
     19    // of the user activation requirement.
     20    const p1 = div.requestFullscreen();
     21    assert_false(navigator.userActivation.isActive, "Transient activation is consumed");
     22    const p2 = promise_rejects_js(t, TypeError, div.requestFullscreen());
     23    await Promise.all([p1, p2]);
     24 });
     25 </script>