tor-browser

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

test_deltaMode_lines_always_enabled.html (1461B)


      1 <!DOCTYPE html>
      2 <meta charset="utf-8">
      3 <title>Test for always-enabling lines deltaMode</title>
      4 <script src="/tests/SimpleTest/SimpleTest.js"></script>
      5 <script src="/tests/SimpleTest/EventUtils.js"></script>
      6 <link rel="stylesheet" href="/tests/SimpleTest/test.css"/>
      7 <p id="display"></p>
      8 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1684001">Mozilla Bug 1684001</a>
      9 <div id="overflow" style="height: 300vh"></div>
     10 <pre id="test"></pre>
     11 <script>
     12 SimpleTest.waitForExplicitFinish();
     13 
     14 const HACK_PREF = "dom.event.wheel-deltaMode-lines.always-enabled";
     15 
     16 (async function() {
     17  await SimpleTest.promiseFocus(window);
     18  await SpecialPowers.pushPrefEnv({
     19    set: [
     20      [HACK_PREF, document.domain],
     21      ["test.events.async.enabled", true],
     22    ],
     23  });
     24  // FYI: Cannot use scrollingElement because it's center may be outside of the viewport.
     25  await promiseElementReadyForUserInput(document.querySelector("a[href]"));
     26  await SpecialPowers.pushPrefEnv({
     27    clear: [
     28      ["test.events.async.enabled"],
     29    ],
     30  });
     31 
     32  document.addEventListener("wheel", e => {
     33    e.deltaY; /* access the delta unchecked */
     34    is(e.deltaMode, WheelEvent.DOM_DELTA_LINE, "Accessing wheel event data should return lines even if unchecked, if the pref is enabled for that domain");
     35    SimpleTest.finish();
     36  }, { once: true });
     37 
     38  synthesizeWheel(document.scrollingElement, 10, 10, { deltaY: 3.0, deltaMode: WheelEvent.DOM_DELTA_LINE });
     39 }());
     40 </script>