mirror of
https://github.com/microsoft/playwright.git
synced 2025-06-26 21:40:17 +00:00
feat(webkit): basic isMobile viewport support (#348)
This commit is contained in:
parent
c01224f249
commit
d83d3c3851
@ -315,11 +315,12 @@ export class WKPage implements PageDelegate {
|
||||
}
|
||||
|
||||
async setViewport(viewport: types.Viewport): Promise<void> {
|
||||
if (viewport.isMobile || viewport.isLandscape || viewport.hasTouch)
|
||||
if (viewport.isLandscape || viewport.hasTouch)
|
||||
throw new Error('Not implemented');
|
||||
const width = viewport.width;
|
||||
const height = viewport.height;
|
||||
await this._pageProxySession.send('Emulation.setDeviceMetricsOverride', { width, height, fixedLayout: false, deviceScaleFactor: viewport.deviceScaleFactor || 1 });
|
||||
const fixedLayout = !!viewport.isMobile;
|
||||
await this._pageProxySession.send('Emulation.setDeviceMetricsOverride', {width, height, fixedLayout, deviceScaleFactor: viewport.deviceScaleFactor || 1 });
|
||||
}
|
||||
|
||||
setCacheEnabled(enabled: boolean): Promise<void> {
|
||||
|
||||
@ -94,6 +94,16 @@ module.exports.describe = function({testRunner, expect, playwright, FFOX, CHROME
|
||||
await page.setViewport(iPhone.viewport);
|
||||
expect((await event2).text()).toBe('2');
|
||||
});
|
||||
it.skip(FFOX)('default mobile viewports to 980 width', async({page, server}) => {
|
||||
await page.setViewport({width: 320, height: 480, isMobile: true});
|
||||
await page.goto(server.PREFIX + '/empty.html');
|
||||
expect(await page.evaluate(() => window.innerWidth)).toBe(980);
|
||||
});
|
||||
it.skip(FFOX)('respect meta viewport tag', async({page, server}) => {
|
||||
await page.setViewport({width: 320, height: 480, isMobile: true});
|
||||
await page.goto(server.PREFIX + '/mobile.html');
|
||||
expect(await page.evaluate(() => window.innerWidth)).toBe(320);
|
||||
});
|
||||
});
|
||||
|
||||
describe('Page.emulate', function() {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user