Allow Playwright's defaultViewportSize

This commit is contained in:
daijro 2024-11-03 05:08:09 -06:00
parent e6beecb3a9
commit 1adc258fd8
2 changed files with 11 additions and 2 deletions

View file

@ -1024,6 +1024,15 @@ class BrowserContext {
}
async setDefaultViewport(viewport) {
// Camoufox: only override the set viewport if a new one was passed
if (
ChromeUtils.camouGetInt("window.innerWidth")
|| ChromeUtils.camouGetInt("window.innerHeight")
) {
if (viewport.viewportSize?.width == 1280 && viewport.viewportSize?.height == 720) {
return;
}
}
this.defaultViewportSize = viewport ? viewport.viewportSize : undefined;
this.deviceScaleFactor = viewport ? viewport.deviceScaleFactor : undefined;
await Promise.all(Array.from(this.pages).map(page => page.updateViewportSize()));

View file

@ -86,8 +86,8 @@ class PageHandler {
// Try to fetch the viewport size
this._defaultCursorPos = {
x: random_val(this._pageTarget._viewportSize.width),
y: random_val(this._pageTarget._viewportSize.height),
x: random_val(this._pageTarget._viewportSize?.width || 1280),
y: random_val(this._pageTarget._viewportSize?.height || 720),
};
this._lastMousePosition = { ...this._defaultCursorPos };
this._lastTrackedPos = { ...this._defaultCursorPos };