tor-browser

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

bug1153130_inner.html (2861B)


      1 <!DOCTYPE HTML>
      2 <html>
      3 <!--
      4 https://bugzilla.mozilla.org/show_bug.cgi?id=1153130
      5 -->
      6 <head>
      7  <meta charset="utf-8">
      8  <title>Test for Bug 1153130</title>
      9  <meta name="author" content="Maksim Lebedev" />
     10  <script src="/tests/SimpleTest/SimpleTest.js"></script>
     11  <script src="/tests/SimpleTest/EventUtils.js"></script>
     12  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
     13  <style>
     14    #target { background: yellow; padding: 10px; }
     15  </style>
     16  <script type="application/javascript">
     17    var target = undefined;
     18    var test_down = false;
     19    var test_capture = false;
     20    var test_move = false;
     21    var test_success = false;
     22 
     23    function TargetHandler(event) {
     24      logger("Target receive event: " + event.type);
     25      if(event.type == "pointerdown") {
     26        test_down = true;
     27        target.setPointerCapture(event.pointerId);
     28      } else if(event.type == "gotpointercapture") {
     29        test_capture = true;
     30      } else if(event.type == "pointermove" && test_capture) {
     31        test_move = true;
     32      }
     33    }
     34    function logger(message) {
     35      console.log(message);
     36      var log = document.getElementById('target');
     37      log.innerHTML = message + "<br>" + log.innerHTML;
     38    }
     39    function prepareTest() {
     40      SimpleTest.executeSoon(executeTest);
     41    }
     42    function executeTest() {
     43      logger("executeTest");
     44      target = document.getElementById("target");
     45      target.addEventListener("pointerdown",        TargetHandler);
     46      target.addEventListener("gotpointercapture",  TargetHandler);
     47      target.addEventListener("pointermove",        TargetHandler);
     48      var rect = target.getBoundingClientRect();
     49      synthesizeMouse(target, rect.width/5, rect.height/5,  {type: "mousemove"});
     50      synthesizeMouse(target, rect.width/5, rect.height/5,  {type: "mousedown"});
     51      synthesizeMouse(target, rect.width/4, rect.height/4,  {type: "mousemove"});
     52      synthesizeMouse(target, rect.width/3, rect.height/3,  {type: "mousemove"});
     53      synthesizeMouse(target, rect.width/3, rect.height/3,  {type: "mouseup"});
     54      synthesizeMouse(target, rect.width/2, rect.height/2,  {type: "mousemove"});
     55      test_success = true;
     56      finishTest();
     57    }
     58    function finishTest() {
     59      parent.is(test_down,    true, "pointerdown event should be received by target");
     60      parent.is(test_capture, true, "gotpointercapture event should be received by target");
     61      parent.is(test_move,    true, "pointermove event should be received by target while pointer capture is active");
     62      parent.is(test_success, true, "Firefox should be live!");
     63      logger("finishTest");
     64      parent.finishTest();
     65    }
     66  </script>
     67 </head>
     68 <body onload="prepareTest()">
     69  <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1153130">Mozilla Bug 1153130</a>
     70  <div id="target">div id=target</div>
     71 </body>
     72 </html>