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

Side by Side Diff: chrome/test/data/fullscreen_mouselock/fullscreen_mouselock.html

Issue 10535173: Add three fullscreen tests and three mouse lock tests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 5 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
« no previous file with comments | « no previous file | chrome/test/functional/PYAUTO_TESTS » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 <head> 3 <head>
4 <title>Fullscreen and Mouse Lock Scripts</title> 4 <title>Fullscreen and Mouse Lock Scripts</title>
5 <style type="text/css"> 5 <style type="text/css">
6 #HTMLCursor { 6 #HTMLCursor {
7 border: solid black 1px; 7 border: solid black 1px;
8 background: yellow; 8 background: yellow;
9 display: inline; 9 display: inline;
10 position: absolute; 10 position: absolute;
(...skipping 28 matching lines...) Expand all
39 function() { 39 function() {
40 console.log("lock failed"); 40 console.log("lock failed");
41 if (callback) { 41 if (callback) {
42 callback("failure"); 42 callback("failure");
43 } 43 }
44 } 44 }
45 ); 45 );
46 } 46 }
47 47
48 var lock_result1 = ""; 48 var lock_result1 = "";
49 // In the pyAuto test the fullscreen is initiated, accepted and enters into a wa it state 49 // In the PyAuto test the fullscreen is initiated, accepted and enters into a
50 // reading the value of lock_result1. One of the two asynchronous functions in t he JS will 50 // wait state reading the value of lock_result1. One of the two asynchronous
51 // be executed. The pyAuto code waits for lock_result to return "success" or "fa ilure". 51 // functions in the JS will be executed. The PyAuto code waits for lock_result
52 // Sample pyAuto code: lock_result = self._driver.execute_script('lockMouse1AndS etLockResult()') 52 // to return "success" or "failure". Sample PyAuto code:
53 // lock_result = self._driver.execute_script('lockMouse1AndSetLockResult()')
53 function lockMouse1AndSetLockResult() { 54 function lockMouse1AndSetLockResult() {
54 console.log("lockMouse1AndSetLockResult()"); 55 console.log("lockMouse1AndSetLockResult()");
55 lock_result1 = ""; 56 lock_result1 = "";
56 navigator.webkitPointer.lock(document.getElementById("lockTarget1"), 57 navigator.webkitPointer.lock(document.getElementById("lockTarget1"),
57 function() { 58 function() {
58 console.log("lock success"); 59 console.log("lock success");
59 lock_result = "success" 60 lock_result = "success"
60 }, 61 },
61 function() { 62 function() {
62 console.log("lock failed"); 63 console.log("lock failed");
63 lock_result = "failure" 64 lock_result = "failure"
64 } 65 }
65 ); 66 );
66 } 67 }
67 68
69 // When mouse lock is initiated and accepted, PyAuto test will wait for the
70 // lock_result to return "success" or "failure" to initiate the next action.
68 function lockMouse2() { 71 function lockMouse2() {
69 console.log("lockMouse2()"); 72 console.log("lockMouse2()");
70 navigator.webkitPointer.lock(document.getElementById("lockTarget2"), 73 navigator.webkitPointer.lock(document.getElementById("lockTarget2"),
71 function(){console.log("lock success")}, 74 function() {
72 function(){console.log("lock failed")}); 75 console.log("lock success");
76 lock_result = "success"
77 },
78 function() {
79 console.log("lock failed")
80 lock_result = "failure"
81 }
82 );
73 } 83 }
74 84
75 function delayedLockMouse1() { 85 function delayedLockMouse1() {
76 console.log("delayedLockMouse1()"); 86 console.log("delayedLockMouse1()");
77 window.setTimeout(lockMouse1, 1010); 87 window.setTimeout(lockMouse1, 1010);
78 // Delay must be over 1 second or the click that initiated the delayed action 88 // Delay must be over 1 second or the click that initiated the delayed action
79 // may still be considered active and treat this as a user gesture. 89 // may still be considered active and treat this as a user gesture.
80 // We want to test a lock not associated with a user gesture. 90 // We want to test a lock not associated with a user gesture.
81 } 91 }
82 92
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 (e.mozMovementX !== undefined ? e.mozMovementX : 133 (e.mozMovementX !== undefined ? e.mozMovementX :
124 (e.oMovementX !== undefined ? e.oMovementX : 134 (e.oMovementX !== undefined ? e.oMovementX :
125 e.msMovementY)))); 135 e.msMovementY))));
126 e.movementY = (e.movementY !== undefined ? e.movementY : 136 e.movementY = (e.movementY !== undefined ? e.movementY :
127 (e.webkitMovementY !== undefined ? e.webkitMovementY : 137 (e.webkitMovementY !== undefined ? e.webkitMovementY :
128 (e.mozMovementY !== undefined ? e.mozMovementY : 138 (e.mozMovementY !== undefined ? e.mozMovementY :
129 (e.oMovementY !== undefined ? e.oMovementY : 139 (e.oMovementY !== undefined ? e.oMovementY :
130 e.msMovementY)))); 140 e.msMovementY))));
131 } 141 }
132 142
143 var clicked_elem_ID = ""
144 function clickElement(id) {
145 clicked_elem_ID = id;
146 }
147
133 function init() { 148 function init() {
134 moveHTMLCursorToCenter(); 149 moveHTMLCursorToCenter();
135 150
136 document.addEventListener("mousemove", 151 document.addEventListener("mousemove",
137 polyFillMouseEventMovementFromVenderPrefix); 152 polyFillMouseEventMovementFromVenderPrefix);
138 document.addEventListener("mousemove", function (e) { 153 document.addEventListener("mousemove", function (e) {
139 if (e.movementX !== undefined) { 154 if (e.movementX !== undefined) {
140 moveHTMLCursorBy(e.movementX, e.movementY); 155 moveHTMLCursorBy(e.movementX, e.movementY);
141 displaytext.innerHTML = 156 displaytext.innerHTML =
142 "Document mousemove listener:<br>" + 157 "Document mousemove listener:<br>" +
(...skipping 17 matching lines...) Expand all
160 case "1": lockMouse1(); break; 175 case "1": lockMouse1(); break;
161 case "2": lockMouse2(); break; 176 case "2": lockMouse2(); break;
162 case "d": delayedLockMouse1(); break; 177 case "d": delayedLockMouse1(); break;
163 case "u": unlockMouse(); break; 178 case "u": unlockMouse(); break;
164 case "b": enterFullscreenAndLockMouse1(); break; 179 case "b": enterFullscreenAndLockMouse1(); break;
165 case "B": lockMouse1AndEnterFullscreen(); break; 180 case "B": lockMouse1AndEnterFullscreen(); break;
166 default: moveHTMLCursorToCenter(); break; 181 default: moveHTMLCursorToCenter(); break;
167 } 182 }
168 }); 183 });
169 } 184 }
185
170 </script> 186 </script>
171 </head> 187 </head>
172 <body onload="init()" title="This tooltip should not be shown if the mouse is lo cked."> 188 <body onload="init()"
189 title="This tooltip should not be shown if the mouse is locked.">
173 <div id="container"> 190 <div id="container">
174 <button id="enterFullscreen" onclick="enterFullscreen();">enterFullscreen() [f]</button><br> 191 <button id="enterFullscreen" onclick="enterFullscreen();">
175 <button id="exitFullscreen" onclick="exitFullscreen();">exitFullscreen() [x] </button><br> 192 enterFullscreen() [f]
176 <button id="lockMouse1" onclick="lockMouse1();">lockMouse1() [1]</button><br > 193 </button><br>
177 <button id="lockMouse2" onclick="lockMouse2();">lockMouse2() [2]</button><br > 194 <button id="exitFullscreen" onclick="exitFullscreen();">
178 <button id="delayedLockMouse1" onclick="delayedLockMouse1();">delayedLockMou se1() [d]</button><br> 195 exitFullscreen() [x]
179 <button id="spamLockMouse2" onclick="spamLockMouse2();">spamLockMouse2()</bu tton><br> 196 </button><br>
180 <button id="unlockMouse" onclick="unlockMouse();">unlockMouse() [u]</button> <br> 197 <button id="lockMouse1" onclick="lockMouse1();">
181 <button id="enterFullscreenAndLockMouse1" onclick="enterFullscreenAndLockMou se1()">enterFullscreenAndLockMouse1() [b]</button><br> 198 lockMouse1() [1]
182 <button id="lockMouse1AndEnterFullscreen" onclick="lockMouse1AndEnterFullscr een()">lockMouse1AndEnterFullscreen() [B]</button><br> 199 </button><br>
200 <button id="lockMouse2" onclick="lockMouse2();">
201 lockMouse2() [2]
202 </button><br>
203 <button id="delayedLockMouse1" onclick="delayedLockMouse1();">
204 delayedLockMouse1() [d]
205 </button><br>
206 <button id="spamLockMouse2" onclick="spamLockMouse2();">
207 spamLockMouse2()
208 </button><br>
209 <button id="unlockMouse" onclick="unlockMouse();">
210 unlockMouse() [u]
211 </button><br>
212 <button id="enterFullscreenAndLockMouse1"
213 onclick="enterFullscreenAndLockMouse1()">
214 enterFullscreenAndLockMouse1() [b]
215 </button><br>
216 <button id="lockMouse1AndEnterFullscreen"
217 onclick="lockMouse1AndEnterFullscreen()">
218 lockMouse1AndEnterFullscreen() [B]
219 </button><br>
183 <div id="lockTarget1">lockTarget1</div> 220 <div id="lockTarget1">lockTarget1</div>
184 <div id="lockTarget2">lockTarget2</div> 221 <div id="lockTarget2">lockTarget2</div>
185 <form name="HTMLCursor" id="HTMLCursor">HTMLCursor</form> 222 <form name="HTMLCursor" id="HTMLCursor">HTMLCursor</form>
186 <form name="displaytext">...</form> 223 <form name="displaytext">...</form>
224 <p>The <a href="#anchor" name="anchor" id="anchor"
225 onclick="clickElement(this.id);">
226 anchor link
227 </a>
228 navigates to an anchor on this page. The browser should not exit tab
229 fullscreen or mouse lock.</p>
187 </div> 230 </div>
188 This text is outside of the container that is made fullscreen. This text shoul d not be visible when fullscreen. 231 <p>This text is outside of the container that is made fullscreen. This text
232 should not be visible when fullscreen.</p>
189 </body> 233 </body>
190 </html> 234 </html>
OLDNEW
« no previous file with comments | « no previous file | chrome/test/functional/PYAUTO_TESTS » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698