Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1440)

Side by Side Diff: LayoutTests/fast/events/touch/gesture/gesture-tap-div-removed.html

Issue 429793004: Re-add extra hit-tests on GestureTap (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fix patch Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 #target { 4 #target {
5 position: absolute; 5 position: absolute;
6 right: 10px; 6 right: 10px;
7 top: 10px; 7 top: 10px;
8 border: 1px solid blue; 8 border: 1px solid blue;
9 } 9 }
10 </style> 10 </style>
11 <div id=target> 11 <div id=target>
12 Tap me 12 Tap me
13 </div> 13 </div>
14 <script> 14 <script>
15
16 if (window.testRunner)
17 testRunner.dumpAsText();
18
19 function eventLogger(e) { 15 function eventLogger(e) {
20 debug("Received " + e.type + " on " + (e.currentTarget.id || e.currentTarget .nodeName)); 16 debug("Received " + e.type + " on " + (e.currentTarget.id || e.currentTarget .nodeName));
21 } 17 }
22 18
23 function logAndRemove(e) { 19 function logAndRemove(e) {
24 eventLogger(e); 20 eventLogger(e);
25 e.currentTarget.parentNode.removeChild(e.currentTarget); 21 e.currentTarget.parentNode.removeChild(e.currentTarget);
26 debug("Removed element"); 22 debug("Removed element");
27 e = null; 23 e = null;
28 gc(); 24 gc();
29 } 25 }
30 26
31 function logAndFail(e) { 27 function logAndFail(e) {
32 eventLogger(e); 28 eventLogger(e);
33 testFailed("Received unexpected event."); 29 testFailed("Received unexpected event.");
34 } 30 }
35 31
36 function getTargetPoint() { 32 function getTargetPoint() {
37 // Note that we don't want any reference to the node to escape this function 33 // Note that we don't want any reference to the node to escape this function
38 // so that it's elligble for garbage collection. 34 // so that it's elligble for garbage collection.
39 var target = document.getElementById('target'); 35 var target = document.getElementById('target');
40 target.addEventListener('mousemove', logAndRemove); 36 target.addEventListener('mousemove', logAndRemove);
41 target.addEventListener('mousedown', eventLogger); 37 target.addEventListener('mousedown', logAndFail);
42 target.addEventListener('mouseup', eventLogger); 38 target.addEventListener('mouseup', logAndFail);
43 target.addEventListener('click', eventLogger); 39 target.addEventListener('click', logAndFail);
44 document.addEventListener('mousemove', eventLogger); 40 document.addEventListener('mousemove', eventLogger);
45 document.addEventListener('mousedown', logAndFail); 41 document.addEventListener('mousedown', eventLogger);
46 document.addEventListener('mouseup', logAndFail); 42 document.addEventListener('mouseup', eventLogger);
47 document.addEventListener('click', logAndFail); 43 document.addEventListener('click', eventLogger);
48 44
49 var rect = target.getBoundingClientRect(); 45 var rect = target.getBoundingClientRect();
50 return { 46 return {
51 x: rect.left + rect.width / 2, 47 x: rect.left + rect.width / 2,
52 y: rect.top + rect.height / 2 48 y: rect.top + rect.height / 2
53 }; 49 };
54 } 50 }
55 51
56 onload = function() { 52 onload = function() {
57 description("Verifies that deleting the element being tapped during the even t sequence doesn't cause any problems. Succeeds if the expected events are deli vered to the div, events after removal don't bubble up, and we don't crash."); 53 description("Verifies that deleting the element being tapped during the even t sequence doesn't cause any problems. Succeeds if the expected events are deli vered, events after removal go to the new node at the point of tap, and we don't crash.");
58 54
59 var point = getTargetPoint(); 55 var point = getTargetPoint();
60 56
61 if (!window.eventSender) { 57 if (!window.eventSender) {
62 debug("This test requires eventSender"); 58 debug("This test requires eventSender");
63 return; 59 return;
64 } 60 }
65 61
66 debug("Sending GestureTapDown"); 62 debug("Sending GestureTapDown");
67 eventSender.gestureTapDown(point.x, point.y); 63 eventSender.gestureTapDown(point.x, point.y);
68 64
69 debug("Sending GestureShowPress"); 65 debug("Sending GestureShowPress");
70 eventSender.gestureShowPress(point.x, point.y); 66 eventSender.gestureShowPress(point.x, point.y);
71 67
72 debug("Sending GestureTap"); 68 debug("Sending GestureTap");
73 eventSender.gestureTap(point.x, point.y); 69 eventSender.gestureTap(point.x, point.y);
74 } 70 }
75 71
76 </script> 72 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698