| OLD | NEW |
| (Empty) | |
| 1 <!DOCTYPE html> |
| 2 <title>MouseWheel: Scroll shouldn't fire extra events for certain phase</title> |
| 3 <script src="../../resources/testharness.js"></script> |
| 4 <script src="../../resources/testharnessreport.js"></script> |
| 5 <script> |
| 6 function mouseScrollByPixel(x, y, phase) { |
| 7 if (!window.eventSender) |
| 8 return; |
| 9 const isMac = navigator.platform.indexOf('Mac') != -1; |
| 10 if (!isMac) { |
| 11 // Other platforms don't have Phase info yet. |
| 12 if (phase == 'phaseEnded' || phase == 'phaseCancelled' || phase == 'phas
eMayBegin') |
| 13 return; |
| 14 phase = 'phaseNone'; |
| 15 } |
| 16 eventSender.continuousMouseScrollBy(x, y, false, true, 0, false, phase); |
| 17 } |
| 18 |
| 19 test(function() { |
| 20 if (!window.eventSender) { |
| 21 document.write('This test requires eventSender'); |
| 22 return; |
| 23 } |
| 24 |
| 25 var event_log = ''; |
| 26 document.addEventListener('wheel', function(event) { |
| 27 event_log += `(${event.deltaX},${event.deltaY},${event.deltaZ})`; |
| 28 }); |
| 29 |
| 30 eventSender.mouseMoveTo(50, 50); |
| 31 mouseScrollByPixel(0, 0, 'phaseMayBegin'); |
| 32 mouseScrollByPixel(0, -1, 'phaseBegan'); |
| 33 mouseScrollByPixel(0, -2, 'phaseChanged'); |
| 34 mouseScrollByPixel(0, -3, 'phaseChanged'); |
| 35 mouseScrollByPixel(0, -4, 'phaseStationary'); |
| 36 mouseScrollByPixel(0, -5, 'phaseChanged'); |
| 37 mouseScrollByPixel(0, 0, 'phaseEnded'); |
| 38 |
| 39 assert_equals(event_log, '(0,1,0)(0,2,0)(0,3,0)(0,4,0)(0,5,0)'); |
| 40 }, 'Simulate track-pad two finger scroll'); |
| 41 |
| 42 test(function() { |
| 43 if (!window.eventSender) { |
| 44 document.write('This test requires eventSender'); |
| 45 return; |
| 46 } |
| 47 |
| 48 var event_log = ''; |
| 49 document.addEventListener('wheel', function(event) { |
| 50 event_log += `(${event.deltaX},${event.deltaY},${event.deltaZ})`; |
| 51 }); |
| 52 |
| 53 eventSender.mouseMoveTo(50, 50); |
| 54 mouseScrollByPixel(0, 0, 'phaseMayBegin'); |
| 55 mouseScrollByPixel(0, 0, 'phaseCancelled'); |
| 56 |
| 57 assert_equals(event_log, ''); |
| 58 }, 'Simulate track-pad two finger touch and release'); |
| 59 </script> |
| 60 |
| OLD | NEW |