tor-browser

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

scroll-button-disposed-event-target.html (1571B)


      1 <!DOCTYPE html>
      2 <meta charset="utf-8">
      3 <title>CSS Overflow: event.target for detached ::scroll-button is scroller</title>
      4 <link rel="help" href="https://drafts.csswg.org/css-overflow-5/#scroll-buttons">
      5 <script src="/resources/testharness.js"></script>
      6 <script src="/resources/testharnessreport.js"></script>
      7 <script src="/resources/testdriver.js"></script>
      8 <script src="/resources/testdriver-actions.js"></script>
      9 <script src="/resources/testdriver-vendor.js"></script>
     10 <style>
     11  body {
     12    margin: 0;
     13  }
     14 
     15  #scroller {
     16    position: absolute;
     17    top: 100px;
     18    width: 600px;
     19    height: 300px;
     20    overflow: auto;
     21    white-space: nowrap;
     22  }
     23 
     24  #scroller div {
     25    display: inline-block;
     26    width: 600px;
     27    height: 200px;
     28  }
     29 
     30  .sbtn::scroll-button(inline-end) {
     31    position: absolute;
     32    top: 0;
     33    left: 0;
     34    content: "";
     35    width: 100px;
     36    height: 20px;
     37  }
     38 </style>
     39 <div id="scroller" class="sbtn">
     40  <div></div>
     41  <div></div>
     42 </div>
     43 <script>
     44  let event = null;
     45 
     46  scroller.addEventListener('click', (e) => {
     47    event = e;
     48  });
     49 
     50  promise_test(async t => {
     51    // Click on ::scroll-button
     52    const scrollButtonX = 15;
     53    const scrollButtonY = 15;
     54    await new test_driver.Actions()
     55      .pointerMove(scrollButtonX, scrollButtonY)
     56      .pointerDown()
     57      .pointerUp()
     58      .send();
     59    assert_equals(event.target, scroller, "event.target for ::scroll-button click is scroller");
     60    scroller.classList.remove("sbtn");
     61    assert_equals(event.target, scroller, "event.target for detached ::scroll-button click is scroller");
     62  });
     63 </script>