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

Side by Side Diff: third_party/WebKit/LayoutTests/vibration/vibration-page-visibility.html

Issue 2778693004: Remove navigator.vibrate without user gesture. (Closed)
Patch Set: rebase 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 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <h4 id="test"></h4>
2 <script src="../resources/testharness.js"></script> 3 <script src="../resources/testharness.js"></script>
3 <script src="../resources/testharnessreport.js"></script> 4 <script src="../resources/testharnessreport.js"></script>
5 <script src="../resources/user-gesture-utils.js"></script>
6 <script src="vibration-utils.js"></script>
4 <script> 7 <script>
5 'use strict'; 8 'use strict';
9 // Simulates a user click for vibrate to be allowed.
10 var element = document.getElementById("test");
11 simulateUserClick(element.offsetLeft + 2, element.offsetTop + 2);
6 12
7 test(() => { 13 test(() => {
8 // Initially the page is hidden and no vibration can be started. 14 // Initially the page is hidden and no vibration can be started.
9 testRunner.setPageVisibility('hidden'); 15 testRunner.setPageVisibility('hidden');
10 assert_false(navigator.vibrate(1001)); 16 assert_false(navigator.vibrate(1001));
11 assert_array_equals(internals.pendingVibrationPattern(navigator), []); 17 assert_array_equals(internals.pendingVibrationPattern(navigator), []);
12 assert_false(internals.isVibrating(navigator)); 18 assert_false(internals.isVibrating(navigator));
13 19
14 // Once the page is visible a vibration can be started. 20 // Once the page is visible a vibration can be started.
15 testRunner.setPageVisibility('visible'); 21 testRunner.setPageVisibility('visible');
16 assert_true(navigator.vibrate(1002)); 22 assert_true(navigator.vibrate(1002));
17 assert_array_equals(internals.pendingVibrationPattern(navigator), [1002]); 23 assert_array_equals(internals.pendingVibrationPattern(navigator), [1002]);
18 assert_true(internals.isVibrating(navigator)); 24 assert_true(internals.isVibrating(navigator));
19 25
20 // When the page is hidden again the vibration is cancelled. 26 // When the page is hidden again the vibration is cancelled.
21 testRunner.setPageVisibility('hidden'); 27 testRunner.setPageVisibility('hidden');
22 assert_array_equals(internals.pendingVibrationPattern(navigator), []); 28 assert_array_equals(internals.pendingVibrationPattern(navigator), []);
23 assert_false(internals.isVibrating(navigator)); 29 assert_false(internals.isVibrating(navigator));
24 }, 'Vibration should not start and it should cancel when the page is hidden.'); 30 }, 'Vibration should not start and it should cancel when the page is hidden.');
25 </script> 31 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698