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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/dom/viewport/viewport-dimensions-under-browser-zoom.html

Issue 2249483002: Fire visualViewport resize event when browser zoomed (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 4 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 <style> 2 <style>
3 body { 3 body {
4 height: 2000px; 4 height: 2000px;
5 width: 2000px; 5 width: 2000px;
6 } 6 }
7 ::-webkit-scrollbar { 7 ::-webkit-scrollbar {
8 width: 0px; 8 width: 0px;
9 height: 0px; 9 height: 0px;
10 } 10 }
11 </style> 11 </style>
12 <script src="../../../resources/testharness.js"></script> 12 <script src="../../../resources/testharness.js"></script>
13 <script src="../../../resources/testharnessreport.js"></script> 13 <script src="../../../resources/testharnessreport.js"></script>
14 <script> 14 <script>
15 var browserZoomFactor = 1.25; 15 var browserZoomFactor = 1.25;
16 16
17 function viewport() { 17 function viewport() {
18 return window.visualViewport; 18 return window.visualViewport;
19 } 19 }
20 20
21 var numCallsResize = 0;
22
21 async_test(function(t) { 23 async_test(function(t) {
22 window.onload = t.step_func(function() { 24 window.onload = t.step_func(function() {
25
26 window.visualViewport.addEventListener('resize', function(e) {
27 numCallsResize++;
28 });
29
23 window.scrollTo(100, 100); 30 window.scrollTo(100, 100);
24 31
25 // TODO(ymalik): Remove hook to internals to pinch-zoom here and browser 32 // TODO(ymalik): Remove hook to internals to pinch-zoom here and browser
26 // zoom below. This will be required to upstream to w3c repo. 33 // zoom below. This will be required to upstream to w3c repo.
27 internals.setPageScaleFactor(2); 34 internals.setPageScaleFactor(2);
28 35
29 // Offset visual viewport by 10px. 36 // Offset visual viewport by 10px.
30 internals.setVisualViewportOffset(10, 10); 37 internals.setVisualViewportOffset(10, 10);
31 38
32 assert_equals(viewport().scrollTop, 10); 39 assert_equals(viewport().scrollTop, 10);
33 assert_equals(viewport().scrollLeft, 10); 40 assert_equals(viewport().scrollLeft, 10);
34 assert_equals(viewport().clientWidth, 400); 41 assert_equals(viewport().clientWidth, 400);
35 assert_equals(viewport().clientHeight, 300); 42 assert_equals(viewport().clientHeight, 300);
36 assert_equals(viewport().scale, 2); 43 assert_equals(viewport().scale, 2);
37 44
38 // Apply browser zoom. 45 // Apply browser zoom.
39 window.internals.setZoomFactor(browserZoomFactor); 46 window.internals.setZoomFactor(browserZoomFactor);
40 47
41 // Visual viewport dimensions should be scaled by the browser zoom factor. 48 requestAnimationFrame(function() {
42 assert_equals(viewport().scrollTop, 10 / browserZoomFactor); 49 t.step(function() {
43 assert_equals(viewport().scrollLeft, 10 / browserZoomFactor); 50 assert_equals(numCallsResize, 1, "resize listener called for browzer z oom");
44 assert_equals(viewport().clientWidth, 400 / browserZoomFactor); 51 // Visual viewport dimensions should be scaled by the browser zoom fac tor.
45 assert_equals(viewport().clientHeight, 300 / browserZoomFactor); 52 assert_equals(viewport().scrollTop, 10 / browserZoomFactor);
46 assert_equals(viewport().scale, 2); 53 assert_equals(viewport().scrollLeft, 10 / browserZoomFactor);
54 assert_equals(viewport().clientWidth, 400 / browserZoomFactor);
55 assert_equals(viewport().clientHeight, 300 / browserZoomFactor);
56 assert_equals(viewport().scale, 2);
47 57
48 t.done(); 58 t.done();
59 });
60 });
49 }); 61 });
50 }, 'Verify viewport dimensions under bowser zoom.'); 62 }, 'Verify viewport dimensions under bowser zoom.');
51 </script> 63 </script>
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/frame/FrameView.cpp » ('j') | third_party/WebKit/Source/core/frame/FrameView.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698