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

Side by Side Diff: LayoutTests/fast/events/touch/gesture/gesture-tap-mouse-events-between-frames.html

Issue 1170513002: Update the mouse events on tapping of gesture across frames (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 years, 6 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
OLDNEW
(Empty)
1 <!DOCTYPE HTML>
2 <script src="../../../../resources/js-test.js"></script>
3 <script src="../../resources/record-events.js"></script>
4 <style>
5 div {
6 margin: 10px;
7 padding: 50px;
8 float: left;
9 }
10 #console {
11 padding: 0px;
12 float: none;
13 }
14 #frame {
15 margin: 0px;
16 border: 0px;
17 width: 400px;
18 height: 400px;
19 }
20 </style>
21
22 <div id="lightgreen" style="background-color:lightgreen">
23 <div id="green" style="background-color:green;">
24 </div>
25 </div>
26 <iframe src='resources/gesture-tap-mouse-events-between-frames-iframe.html' id=' frame'></iframe>
27 <div id="console"></div>
28
29 <script>
30 description("Verifies that mouse events are fired on tapping of gesture across frames in the correct order.");
mustaq 2015/06/16 14:50:44 Nit: double space before "are"
Miyoung Shin(c) 2015/06/20 21:08:29 Done.
31
32 var frame = document.getElementById("frame");
33 var greenEnterOrder = [
34 ["green", "mouseover"],
35 ["lightgreen", "mouseover"],
36 ["lightgreen", "mouseenter"],
37 ["green", "mouseenter"]];
38
39 var greenLeaveOrder = [
40 ["green", "mouseout"],
41 ["lightgreen", "mouseout"],
42 ["green", "mouseleave"],
43 ["lightgreen", "mouseleave"]];
44
45 var pinkEnterOrder = [
46 ["deeppink", "mouseover"],
47 ["lightpink", "mouseover"],
48 ["lightpink", "mouseenter"],
49 ["deeppink", "mouseenter"]];
50
51 var pinkLeaveOrder = [
52 ["deeppink", "mouseout"],
53 ["lightpink", "mouseout"],
54 ["deeppink", "mouseleave"],
55 ["lightpink", "mouseleave"]];
56
57 function getElementById(id)
58 {
59 var element = document.getElementById(id);
60 if (element == null)
61 element = frame.contentDocument.getElementById(id);
62 return element;
63 }
64
65 function init() {
66 var ids = ["lightgreen", "green", "lightpink", "deeppink"];
67
68 var elements = [];
69 ids.forEach(function(id) {
70 var element = getElementById(id);
71 elements.push(element);
72 });
73 registerElementsAndEventsToRecord(elements, ["mouseover", "mouseout", "mouse enter", "mouseleave"]);
74 }
75
76 function doGesture(id, base)
77 {
78 debug("-- sending gestureTap to " + id + " --");
79 var element = getElementById(id);
80
81 var x = base.x + element.offsetLeft + element.offsetWidth / 2;
82 var y = base.y + element.offsetTop + element.offsetHeight / 2;
83 eventSender.gestureTap(x, y);
84 }
85
86 function runTests()
87 {
88 init();
89 if (window.eventSender) {
90 debug("--- Tap tests ---");
91
92 var expectedOrder = [];
93 beginRecordingEvents();
94 doGesture("green", {x: 0, y: 0});
95 expectedOrder = expectedOrder.concat(greenEnterOrder);
96 checkThatEventsFiredInOrder(expectedOrder);
97
98 doGesture("green", {x: 0, y: 0});
99 debug("There should not be any mouse event.");
100 checkThatEventsFiredInOrder(expectedOrder);
101
102 doGesture("deeppink", {x: frame.offsetLeft, y: frame.offsetTop});
103 expectedOrder = expectedOrder.concat(greenLeaveOrder, pinkEnterOrder);
104 checkThatEventsFiredInOrder(expectedOrder);
105
106 doGesture("deeppink", {x: frame.offsetLeft, y: frame.offsetTop});
107 debug("There should not be any mouse event.");
108 checkThatEventsFiredInOrder(expectedOrder);
109
110 doGesture("green", {x: 0, y: 0});
111 expectedOrder = expectedOrder.concat(pinkLeaveOrder, greenEnterOrder);
112 checkThatEventsFiredInOrder(expectedOrder);
113 endRecordingEvents();
114 } else {
115 debug("This test requires eventSender");
116 }
117 finishJSTest();
118 }
119
120 if (window.testRunner) {
121 window.jsTestIsAsync = true;
122 testRunner.waitUntilDone();
123 }
124
125 window.onload = runTests;
126 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698