tor-browser

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

pointerevent_getCoalescedEvents_when_pointerlocked.https.html (3124B)


      1 <!doctype html>
      2 <html>
      3    <head>
      4        <title>Pointer Events pointer lock tests</title>
      5        <meta name="viewport" content="width=device-width">
      6        <link rel="stylesheet" type="text/css" href="../pointerevent_styles.css">
      7        <script src="/resources/testharness.js"></script>
      8        <script src="/resources/testharnessreport.js"></script>
      9        <script src="/resources/testdriver.js"></script>
     10        <script src="/resources/testdriver-actions.js"></script>
     11        <script src="/resources/testdriver-vendor.js"></script>
     12        <script type="text/javascript" src="../pointerevent_support.js"></script>
     13        <style>
     14          #testContainer {
     15            touch-action: none;
     16            user-select: none;
     17            position: relative;
     18          }
     19        </style>
     20        <script>
     21            var lock_change_count = 0;
     22            var mouseeventMovements = []
     23            var pointereventMovements = []
     24            var has_coalesced_Events = false;
     25 
     26            function resetTestState() {
     27            }
     28 
     29            function run() {
     30                var test_pointerEvent = setup_pointerevent_test("pointermove getCoalescedEvents when lock test", ['mouse']);
     31                var div1 = document.getElementById("target");
     32 
     33                on_event(div1, 'pointerdown', function(event) {
     34                    div1.requestPointerLock();
     35                });
     36                on_event(div1, 'pointermove', function(event) {
     37                    if (document.pointerLockElement == div1) {
     38                        test_pointerEvent.step(function() {
     39                            assert_greater_than(event.getCoalescedEvents().length, 0, "document.pointerLockElement should have coalesced events.");
     40                            document.exitPointerLock();
     41                            has_coalesced_Events = true;;
     42                        });
     43                    }
     44                });
     45 
     46                // Inject mouse inputs.
     47                pointerDragInTarget('mouse', div1, 'right').then(function() {
     48                    test_pointerEvent.step(function () {
     49                        assert_true(has_coalesced_Events, "document.pointerLockElement should have coalesced events.");
     50                    }, "document.pointerLockElement should have coalesced events.");
     51                    test_pointerEvent.done();
     52                });
     53            }
     54        </script>
     55    </head>
     56    <body onload="run()">
     57        <h1>PointerMove getCoalescedEvent in locked state test</h1>
     58        <h2 id="pointerTypeDescription"></h2>
     59        <h4>
     60            Test Description: This test checks if pointerevent.getCoalescedEvent work correctly when pointer is locked.
     61            <ol>
     62                 <li>Press left button down on the green rectangle to lock pointer.</li>
     63                 <li>Move the mouse</li>
     64            </ol>
     65            </ol>
     66 
     67            Test passes if the proper behavior of the events is observed.
     68        </h4>
     69        <div id="testContainer">
     70            <div id="target" style="width:800px;height:250px;background:green"></div>
     71        </div>
     72        <div class="spacer"></div>
     73    </body>
     74 </html>