fix(webkit): correctly report outerWidth/Height on Mac (#3133)

This commit is contained in:
Yury Semikhatsky 2020-07-27 16:06:50 -07:00 committed by GitHub
parent 101dd3b120
commit 576e2c5287
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 18 additions and 3 deletions

View file

@ -13,7 +13,7 @@
},
{
"name": "webkit",
"revision": "1317",
"revision": "1319",
"download": true
}
]

View file

@ -158,7 +158,7 @@ export class CRBrowser extends BrowserBase {
if (targetInfo.type === 'page') {
const opener = targetInfo.openerId ? this._crPages.get(targetInfo.openerId) || null : null;
const crPage = new CRPage(session, targetInfo.targetId, context, opener, !!this._options.headful);
const crPage = new CRPage(session, targetInfo.targetId, context, opener, true);
this._crPages.set(targetInfo.targetId, crPage);
crPage.pageOrError().then(pageOrError => {
const page = crPage._page;

View file

@ -16,7 +16,7 @@
*/
const utils = require('./utils');
const {FFOX, HEADLESS} = testOptions;
const {CHROMIUM, FFOX, MAC, HEADLESS} = testOptions;
describe('BrowserContext({viewport})', function() {
it('should get the proper default viewport size', async({page, server}) => {
@ -27,6 +27,21 @@ describe('BrowserContext({viewport})', function() {
await page.setViewportSize({width: 123, height: 456});
await utils.verifyViewport(page, 123, 456);
});
// TODO: enable in Chromium after http://crrev.com/c/2321409 is landed and rolled.
it.fail(CHROMIUM && HEADLESS && MAC)('should return correct outerWidth and outerHeight', async({page}) => {
const size = await page.evaluate(() => {
return {
innerWidth: window.innerWidth,
innerHeight: window.innerHeight,
outerWidth: window.outerWidth,
outerHeight: window.outerHeight,
};
});
expect(size.innerWidth).toBe(1280);
expect(size.innerHeight).toBe(720);
expect(size.outerWidth >= size.innerWidth).toBeTruthy();
expect(size.outerHeight >= size.innerHeight).toBeTruthy();
});
it('should emulate device width', async({page, server}) => {
expect(page.viewportSize()).toEqual({width: 1280, height: 720});
await page.setViewportSize({width: 200, height: 200});