tor-browser

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

pointer-events-none-skip-scroll.html (1344B)


      1 <!doctype html>
      2 <meta charset=utf-8>
      3 <title>pointer-events: none correctly targets scrolls</title>
      4 <script src=/resources/testharness.js></script>
      5 <script src=/resources/testharnessreport.js></script>
      6 <script src="/resources/testdriver.js"></script>
      7 <script src="/resources/testdriver-vendor.js"></script>
      8 <script src="/resources/testdriver-actions.js"></script>
      9 <style>
     10  #scroller {
     11    overflow: auto;
     12    height: 300px;
     13    border: 2px solid blue;
     14    pointer-events: none;
     15  }
     16 
     17  .spacer {
     18    height: 200vh;
     19  }
     20 
     21 </style>
     22 
     23 <div id="scroller">
     24  <div class="spacer"></div>
     25 </div>
     26 <div class="spacer"></div>
     27 
     28 <script>
     29  promise_test(async (t) => {
     30    let scrolled = new Promise((resolve) => {
     31      let scrollers = [window, document.getElementById("scroller")];
     32      let onscroll = (evt) => {
     33        for (const scroller of scrollers) {
     34          scroller.removeEventListener("scroll", onscroll);
     35        }
     36        resolve(evt.target.id || "root");
     37      }
     38      for (const scroller of scrollers) {
     39        scroller.addEventListener("scroll", onscroll);
     40      }
     41    });
     42    const actions = new test_driver.Actions().scroll(50, 200, 0, 50, { duration: 50 });
     43    actions.send();
     44    assert_equals(await scrolled, "root", "Incorrect element scrolled");
     45  }, "Wheel-scroll over pointer-events: none scroller skips that scroller");
     46 </script>