| OLD | NEW |
| 1 <!DOCTYPE HTML> | 1 <!DOCTYPE HTML> |
| 2 <script src="../../../resources/js-test.js"></script> | 2 <script src="../../../resources/js-test.js"></script> |
| 3 <style> | 3 <style> |
| 4 div.box { | 4 div.box { |
| 5 height: 100px; | 5 height: 100px; |
| 6 width: 100px; | 6 width: 100px; |
| 7 background-color: red; | 7 background-color: red; |
| 8 } | 8 } |
| 9 </style> | 9 </style> |
| 10 | 10 |
| 11 <div class="box" id="target"></div> | 11 <div class="box" id="target"></div> |
| 12 | 12 |
| 13 <div id="console"></div> | 13 <div id="console"></div> |
| 14 | 14 |
| 15 <script> | 15 <script> |
| 16 description("Verifies that canceling pointerdowns for touches correctly suppress
es mouseevents."); | 16 description("Verifies that canceling pointerdowns for touches correctly suppress
es mouseevents."); |
| 17 | 17 |
| 18 var preventDefaultPrimary = false; | 18 var preventDefaultPrimary = false; |
| 19 | 19 |
| 20 function init() { | 20 function init() { |
| 21 var events = [ | 21 var events = [ |
| 22 "mouseup", | 22 "mouseup", |
| 23 "mousedown", | 23 "mousedown", |
| 24 "mousemove", | 24 "mousemove", |
| 25 "pointerup", | 25 "pointerup", |
| 26 "pointerdown", | 26 "pointerdown", |
| 27 "pointermove", | 27 "pointermove", |
| 28 "pointercancel", |
| 28 "click", | 29 "click", |
| 29 "touchstart", | 30 "touchstart", |
| 30 "touchend", | 31 "touchend", |
| 31 "touchmove", | 32 "touchmove", |
| 33 "touchcancel", |
| 32 ]; | 34 ]; |
| 33 | 35 |
| 34 events.forEach(function(event) { | 36 events.forEach(function(event) { |
| 35 document.getElementById("target").addEventListener(event, function(e) { | 37 document.getElementById("target").addEventListener(event, function(e) { |
| 36 var isPrimary = e.isPrimary; | 38 var isPrimary = e.isPrimary; |
| 37 var desc = []; | 39 var desc = []; |
| 38 if (e.type.startsWith("pointer") && isPrimary) | 40 if (e.type.startsWith("pointer") && isPrimary) |
| 39 desc.push("primary"); | 41 desc.push("primary"); |
| 40 if (e.type == "pointerdown" && preventDefaultPrimary == isPrimary) { | 42 if (e.type == "pointerdown" && preventDefaultPrimary == isPrimary) { |
| 41 e.preventDefault(); | 43 e.preventDefault(); |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 83 eventSender.releaseTouchPoint(0); | 85 eventSender.releaseTouchPoint(0); |
| 84 eventSender.touchEnd(); | 86 eventSender.touchEnd(); |
| 85 | 87 |
| 86 eventSender.gestureTapDown(x, y, tapWidth, tapHeight, uniqueId+1); | 88 eventSender.gestureTapDown(x, y, tapWidth, tapHeight, uniqueId+1); |
| 87 eventSender.gestureTap(x, y); | 89 eventSender.gestureTap(x, y); |
| 88 | 90 |
| 89 eventSender.gestureTapDown(x, y, tapWidth, tapHeight, uniqueId+2); | 91 eventSender.gestureTapDown(x, y, tapWidth, tapHeight, uniqueId+2); |
| 90 eventSender.gestureTap(x, y); | 92 eventSender.gestureTap(x, y); |
| 91 } | 93 } |
| 92 | 94 |
| 95 function testLongPressWithPairedGE() { |
| 96 var rect = document.getElementById("target").getBoundingClientRect(); |
| 97 var x = rect.left + 50; |
| 98 var y = rect.top + 50; |
| 99 |
| 100 var uniqueId = 1234; |
| 101 var tapWidth = 30; |
| 102 var tapHeight = 30; |
| 103 |
| 104 eventSender.addTouchPoint(x, y); |
| 105 eventSender.touchStart(uniqueId); |
| 106 eventSender.gestureTapDown(x, y, tapWidth, tapHeight, uniqueId); |
| 107 |
| 108 eventSender.cancelTouchPoint(0); |
| 109 eventSender.touchCancel(); |
| 110 |
| 111 eventSender.gestureLongPress(x, y, tapWidth, tapHeight, uniqueId); |
| 112 } |
| 113 |
| 114 function testLongPressWithoutPairedGE() { |
| 115 var rect = document.getElementById("target").getBoundingClientRect(); |
| 116 var x = rect.left + 50; |
| 117 var y = rect.top + 50; |
| 118 |
| 119 var uniqueId = 1234; |
| 120 var tapWidth = 30; |
| 121 var tapHeight = 30; |
| 122 |
| 123 eventSender.addTouchPoint(x, y); |
| 124 eventSender.touchStart(uniqueId); |
| 125 eventSender.cancelTouchPoint(0); |
| 126 eventSender.touchCancel(); |
| 127 |
| 128 eventSender.gestureTapDown(x, y, tapWidth, tapHeight, uniqueId+1); |
| 129 eventSender.gestureLongPress(x, y); |
| 130 |
| 131 eventSender.gestureTapDown(x, y, tapWidth, tapHeight, uniqueId+2); |
| 132 eventSender.gestureLongPress(x, y); |
| 133 } |
| 134 |
| 93 function runTests() { | 135 function runTests() { |
| 94 [false, true, false].forEach(function(boolVal) { | 136 [false, true, false].forEach(function(boolVal) { |
| 95 debug("=== With primary pointerdown " + (boolVal ? "canceled" : "uncanceled"
) +" ==="); | 137 debug("=== With primary pointerdown " + (boolVal ? "canceled" : "uncanceled"
) +" ==="); |
| 96 preventDefaultPrimary = boolVal; | 138 preventDefaultPrimary = boolVal; |
| 97 | 139 |
| 98 debug("-- Tap with paired GEs --"); | 140 debug("-- Tap with paired GEs --"); |
| 99 testTapWithPairedGE(); | 141 testTapWithPairedGE(); |
| 100 | 142 |
| 101 debug("-- Tap without paired GEs --"); | 143 debug("-- Tap without paired GEs --"); |
| 102 testTapWithoutPairedGE(); | 144 testTapWithoutPairedGE(); |
| 103 | 145 |
| 146 debug("-- Long-press with paired GEs --"); |
| 147 testLongPressWithPairedGE(); |
| 148 |
| 149 debug("-- Long-press without paired GEs --"); |
| 150 testLongPressWithoutPairedGE(); |
| 151 |
| 104 debug(""); | 152 debug(""); |
| 105 }); | 153 }); |
| 106 } | 154 } |
| 107 | 155 |
| 108 init(); | 156 init(); |
| 109 if (window.eventSender) | 157 if (window.eventSender) |
| 110 runTests(); | 158 runTests(); |
| 111 else | 159 else |
| 112 debug("This test requires eventSender"); | 160 debug("This test requires eventSender"); |
| 113 | 161 |
| 114 </script> | 162 </script> |
| OLD | NEW |