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"/>
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>
12 SimpleTest
.waitForExplicitFinish();
14 const HACK_PREF
= "dom.event.wheel-deltaMode-lines.always-enabled";
17 await SimpleTest
.promiseFocus(window
);
18 await SpecialPowers
.pushPrefEnv({
20 [HACK_PREF
, document
.domain
],
21 ["test.events.async.enabled", true],
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({
28 ["test.events.async.enabled"],
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");
38 synthesizeWheel(document
.scrollingElement
, 10, 10, { deltaY
: 3.0, deltaMode
: WheelEvent
.DOM_DELTA_LINE
});