tor-browser

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

touchPointerEventProperties.html (2395B)


      1 <!DOCTYPE html>
      2 <meta charset="utf-8">
      3 <title>TestDriver actions: pointerevent properties of touch type</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-actions.js"></script>
      8 <script src="/resources/testdriver-vendor.js"></script>
      9 
     10 <style>
     11 div#test {
     12  position: fixed;
     13  touch-action: none;
     14  top: 5px;
     15  left: 5px;
     16  width: 100px;
     17  height: 100px;
     18  background-color: blue;
     19 }
     20 </style>
     21 
     22 <div id="test">
     23 </div>
     24 
     25 <script>
     26 let pointerDownEvent;
     27 let pointerMoveEvent;
     28 let receivedPointerDown = false;
     29 
     30 async_test(t => {
     31  let test = document.getElementById("test");
     32  var eventList = ['pointermove', 'pointerdown'];
     33  for (eventType of eventList) {
     34    test.addEventListener(eventType, e => {
     35      if (e.type == 'pointerdown') {
     36        receivedPointerDown = true;
     37        pointerDownEvent = e;
     38      }
     39      if (e.type == 'pointermove' && receivedPointerDown)
     40        pointerMoveEvent = e;
     41    });
     42  }
     43 
     44  let div = document.getElementById("test");
     45  let actions = new test_driver.Actions()
     46    .addPointer("touchPointer1", "touch")
     47    .pointerMove(0, 0, {origin: test})
     48    .pointerDown({width:23, height:31, pressure:0.78})
     49    .pointerMove(15, 0, {origin: test, width:39, height:35, pressure:0.91})
     50    .pointerUp()
     51    .send()
     52    .then(t.step_func_done(() => {
     53      assert_equals(pointerDownEvent.type, "pointerdown");
     54      assert_equals(pointerDownEvent.pointerType, "touch");
     55      assert_equals(pointerDownEvent.width, 23);
     56      assert_equals(pointerDownEvent.height, 31);
     57      assert_equals(Math.round(pointerDownEvent.pressure * 100) / 100, 0.78);
     58      assert_equals(pointerDownEvent.tiltX, 0);
     59      assert_equals(pointerDownEvent.tiltY, 0);
     60      assert_equals(pointerDownEvent.twist, 0);
     61      assert_equals(pointerMoveEvent.type, "pointermove");
     62      assert_equals(pointerMoveEvent.pointerType, "touch");
     63      assert_equals(pointerMoveEvent.width, 39);
     64      assert_equals(pointerMoveEvent.height, 35);
     65      assert_equals(Math.round(pointerMoveEvent.pressure * 100) / 100, 0.91);
     66      assert_equals(pointerMoveEvent.tiltX, 0);
     67      assert_equals(pointerMoveEvent.tiltY, 0);
     68      assert_equals(pointerMoveEvent.twist, 0);
     69  })).catch(e => t.step_func(() => assert_unreached("Actions sequence failed " + e)));
     70 });
     71 </script>