blob: 2e6405b8f28082610ffe4cf4d5456a7e2971b27f [file] [log] [blame]
<!DOCTYPE html>
<style>
body {
height: 2000px;
width: 2000px;
}
</style>
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script>
var browserZoomFactor = 1.25;
var pageScaleFactor = 2;
var scrollbarWidthCSSPixels = 15 / pageScaleFactor;
var scrollbarHeightCSSPixels = 15 / pageScaleFactor;
function viewport() {
return window.view;
}
async_test(function(t) {
window.onload = t.step_func(function() {
// TODO(ymalik): Remove hook to internals to pinch-zoom here and browser
// zoom below. This will be required to upstream to w3c repo.
internals.setPageScaleFactor(pageScaleFactor);
// Verify viewport dimensions exclude scrollbar.
assert_equals(viewport().width, 800 / pageScaleFactor - scrollbarWidthCSSPixels);
assert_equals(viewport().height, 600 / pageScaleFactor - scrollbarHeightCSSPixels);
// Apply browser zoom.
window.internals.setZoomFactor(browserZoomFactor);
// Verify scrollbar exclusion with browser zoom.
assert_equals(viewport().width, 800 / pageScaleFactor / browserZoomFactor - scrollbarWidthCSSPixels);
assert_equals(viewport().height, 600 / pageScaleFactor / browserZoomFactor - scrollbarHeightCSSPixels);
t.done();
});
}, 'Verify viewport dimensions exclude scrollbars.');
</script>