Bug 1776680 [wpt PR 34603] - [@container] Test invalidation of font-relative units...
[gecko.git] / dom / events / test / test_wheel_zoom_on_form_controls.html
blob69d498aed30b87bce6ae4a8a0de6c9692ae30bf1
1 <!DOCTYPE HTML>
2 <html>
3 <head>
4 <meta charset="utf-8">
5 <title>Zoom using wheel should work on form controls</title>
6 <script src="/tests/SimpleTest/SimpleTest.js"></script>
7 <script src="/tests/SimpleTest/EventUtils.js"></script>
8 <link rel="stylesheet" href="/tests/SimpleTest/test.css"/>
9 </head>
10 <body>
11 <p id="display"></p>
12 <div id="content" style="display: none"></div>
13 <pre id="test"></pre>
14 <button id="button" style="width:10px;height:10px;"></button><br>
15 <input id="input" style="border: 10px solid green;"><br>
16 <textarea id="textarea" style="border: 10px solid green;"></textarea><br>
17 <select id="select"><option></option></select>
18 <select id="list" size=4>
19 <option>XXXXXXXXXX</option>
20 <option>XXXXXXXXXX</option>
21 <option>XXXXXXXXXX</option>
22 <option>XXXXXXXXXX</option>
23 <option>XXXXXXXXXX</option>
24 <option>XXXXXXXXXX</option>
25 </select>
26 <script>
28 async function testControl(id) {
29 var initialZoom = SpecialPowers.getFullZoom(window);
30 var element = document.getElementById(id);
32 const zoomHasHappened = SimpleTest.promiseWaitForCondition(() => {
33 const zoom = SpecialPowers.getFullZoom(window);
34 return (zoom != initialZoom);
35 }, id + ": wheel event changed the zoom.");
37 let event = {
38 deltaMode: WheelEvent.DOM_DELTA_LINE,
39 deltaY: 3,
40 ctrlKey: true
42 synthesizeWheel(element, 5, 5, event);
44 await zoomHasHappened;
45 isnot(SpecialPowers.getFullZoom(window), initialZoom, id + ": should have zoomed");
46 SpecialPowers.setFullZoom(window, initialZoom);
49 async function test() {
50 await testControl("button");
51 await testControl("input");
52 await testControl("textarea");
53 await testControl("select");
54 await testControl("list");
55 SimpleTest.finish();
58 SimpleTest.waitForExplicitFinish();
59 SimpleTest.waitForFocus(test);
60 </script>
61 </body>
62 </html>