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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/scroll-behavior/visual-viewport-scroll-no-onscroll-event.html

Issue 1415513002: Remove plumbing for inert-visual-viewport flag (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Worked on review comments Created 5 years, 2 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 PUBLIC "-//IETF//DTD HTML//EN">
bokan 2015/10/21 13:32:15 Please change the doctype on any of these tests to
ymalik 2015/10/21 15:14:08 Done.
2 <script src="../../resources/js-test.js"></script>
3 <style>
4 #target {
5 width: 2000px;
6 height: 1500px;
7 }
8 </style>
9 <script language="JavaScript" type="text/javascript">
10 var shouldTrigger;
bokan 2015/10/21 13:32:15 unused.
ymalik 2015/10/21 15:14:08 Done.
11 if (window.testRunner && window.internals) {
12 window.jsTestIsAsync = true;
13 testRunner.dumpAsText();
14 testRunner.waitUntilDone();
15 setPrintTestResultsLazily();
16 }
17
18 description("This test ensures that scrolling the visual viewport doesn't\
19 trigger an onscroll event.");
20
21 function runTest() {
22 if (!window.testRunner || !window.internals) {
23 testFailed("This test requires test runner and inernals.")
24 finishJSTest();
25 return;
26 }
27
28 window.internals.setPageScaleFactor(2.0);
29 var target = document.getElementById('target');
30
31 // The first scroll should trigger onscroll because it scrolls the
32 // layout viewport. The second scroll should not trigger onscroll
33 // because it only scrolls the visual viewport.
34 var scrolls = [-10, 1];
35 var numScrollsReceived = 0;
36 var numRAFCalls = 0;
37
38 document.onscroll = function() {
39 if (numRAFCalls == 0)
40 return;
41
42 ++numScrollsReceived;
43 debug('PASS OnScroll called for scroll #' + numScrollsReceived);
44 if (numScrollsReceived < scrolls.length) {
45 var scrollAmount = scrolls[numScrollsReceived];
46 eventSender.mouseMoveTo(target.offsetLeft + 5, target.offsetTop + 5);
47 eventSender.mouseScrollBy(0, scrollAmount);
48 } else if (numScrollsReceived == scrolls.length) {
49 testFailed("Received visual viewport scroll event");
50 finishJSTest();
51 } else {
52 debug('');
53 finishJSTest();
54 }
55 }
56
57 var failureSentinel = function() {
58 if (numRAFCalls == 0) {
59 eventSender.mouseMoveTo(target.offsetLeft + 5, target.offsetTop + 5);
60 eventSender.mouseScrollBy(0, scrolls[0]);
61 } else if (numRAFCalls == scrolls.length && numScrollsReceived < num RAFCalls) {
bokan 2015/10/21 13:32:15 I know I wrote this, but this is incredibly hard t
ymalik 2015/10/21 15:14:08 Done. Thanks for simplifying it.
62 testPassed("Did not receive visual viewport scroll event");
63 finishJSTest();
64 } else if (numRAFCalls > numScrollsReceived) {
65 testFailed("Did not receive scroll event #" + (numScrollsReceive d+1));
66 finishJSTest();
67 }
68 ++numRAFCalls;
69 window.requestAnimationFrame(failureSentinel);
70 }
71
72 window.requestAnimationFrame(failureSentinel);
73 }
74
75 onload = runTest;
76 </script>
77 <div id="target"></div>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698