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

Side by Side Diff: third_party/WebKit/LayoutTests/http/tests/security/vibration/vibrate-on-top-page-before-during-after-user-gesture.html

Issue 2778693004: Remove navigator.vibrate without user gesture. (Closed)
Patch Set: reformat again! Created 3 years, 8 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
1 <html> 1 <html>
2 <head> 2 <head>
3 <script src="/resources/testharness.js"></script> 3 <script src="/resources/testharness.js"></script>
4 <script src="/resources/testharnessreport.js"></script> 4 <script src="/resources/testharnessreport.js"></script>
5 <script> 5 <script>
6 var test = async_test( 6 var test = async_test(
7 "Testing vibrate 3 times in a x-origin iframe: " + 7 "Testing vibrate 3 times on the top page: " +
8 " 1. blocked before user gesture;" + 8 " 1. blocked before user gesture;" +
9 " 2. succeed during the click event;" + 9 " 2. succeed during the click event;" +
10 " 3. succeed after user click."); 10 " 3. succeed after user click.");
11 function loaded() 11 function startTest()
12 { 12 {
13 document.getElementsByTagName('h4')[0].innerHTML = document.domain;
14 }
15
16 function startTest(event)
17 {
18 // A manual click should navigate.
19 if (window.eventSender) { 13 if (window.eventSender) {
20 var button = document.getElementById("b"); 14 var button = document.getElementById("test");
21 eventSender.mouseMoveTo(button.offsetLeft + event.data.x + 2, bu tton.offsetTop + event.data.y + 2); 15 eventSender.mouseMoveTo(button.offsetLeft + 2, button.offsetTop + 2);
22 test.step(function() { 16 test.step(function() {
23 assert_false( 17 assert_false(
24 navigator.vibrate(200), 18 navigator.vibrate(200),
25 "1. Blocked vibrate before user gesture."); 19 "1. Blocked vibrate before user gesture.");
26 }); 20 });
27 21
22 // A manual click should enable vibrate.
28 eventSender.mouseDown(); 23 eventSender.mouseDown();
29 eventSender.mouseUp(); 24 eventSender.mouseUp();
25 performTestWithClick();
30 } 26 }
31 } 27 }
32 28
33 function performTestAfterClick()
34 {
35 test.step(function () {
36 assert_true(
37 navigator.vibrate(200),
38 "3. Vibrate after user gesture succeeded.");
39 });
40 test.done();
41 }
42
43 function performTestWithClick() 29 function performTestWithClick()
44 { 30 {
45 test.step(function () { 31 test.step(function () {
46 assert_true( 32 assert_true(
47 navigator.vibrate(200), 33 navigator.vibrate(200),
48 "2. Vibrate triggered by user gesture succeeded."); 34 "2. Vibrate triggered by user gesture succeeded.");
49 }); 35 });
50 window.requestAnimationFrame(performTestAfterClick); 36 window.requestAnimationFrame(performTestAfterClick);
51 } 37 }
52 38
53 window.addEventListener("message", startTest, false); 39 function performTestAfterClick()
40 {
41 test.step(function () {
42 assert_true(
43 navigator.vibrate(200),
44 "3. Vibrate after user gesture succeeded.");
45 });
46 test.done();
47 }
54 </script> 48 </script>
55 </head> 49 </head>
56 <body onload="loaded();"> 50 <body onload="startTest();">
57 <h4>DOMAIN</h4> 51 <button id="test">Click to vibrate</button>
58 <button id="b" onclick="performTestWithClick();">Perform Test</button>
59 </body> 52 </body>
60 </html> 53 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698