Skip to content

Commit

Permalink
feat: set default size of yaml as 1920x1080
Browse files Browse the repository at this point in the history
  • Loading branch information
yuyutaotao committed Jan 22, 2025
1 parent ed65183 commit 4e380dc
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 7 deletions.
21 changes: 16 additions & 5 deletions packages/web-integration/src/puppeteer/agent-launcher.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import type { MidsceneYamlScriptEnv } from '@midscene/core';

export const defaultUA =
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36';
export const defaultViewportWidth = 1280;
export const defaultViewportHeight = 960;
export const defaultViewportWidth = 1920;
export const defaultViewportHeight = 1080;
export const defaultViewportScale = process.platform === 'darwin' ? 2 : 1;
export const defaultWaitForNetworkIdleTimeout = 10 * 1000;

Expand All @@ -29,7 +29,9 @@ export async function puppeteerAgentForTarget(
// prepare the environment
const ua = target.userAgent || defaultUA;
let width = defaultViewportWidth;
let preferMaximizedWindow = true;
if (target.viewportWidth) {
preferMaximizedWindow = false;
assert(
typeof target.viewportWidth === 'number',
'viewportWidth must be a number',
Expand All @@ -39,6 +41,7 @@ export async function puppeteerAgentForTarget(
}
let height = defaultViewportHeight;
if (target.viewportHeight) {
preferMaximizedWindow = false;
assert(
typeof target.viewportHeight === 'number',
'viewportHeight must be a number',
Expand All @@ -51,6 +54,7 @@ export async function puppeteerAgentForTarget(
}
let dpr = defaultViewportScale;
if (target.viewportScale) {
preferMaximizedWindow = false;
assert(
typeof target.viewportScale === 'number',
'viewportScale must be a number',
Expand All @@ -65,6 +69,10 @@ export async function puppeteerAgentForTarget(
};

const headed = preference?.headed || preference?.keepWindow;

// only maximize window in headed mode
preferMaximizedWindow = preferMaximizedWindow && !!headed;

// launch the browser
if (headed && process.env.CI === '1') {
console.warn(
Expand All @@ -80,8 +88,9 @@ export async function puppeteerAgentForTarget(
...(isWindows ? [] : ['--no-sandbox', '--disable-setuid-sandbox']),
'--disable-features=PasswordLeakDetection',
'--disable-save-password-bubble',
'--start-maximized',
`--window-size=${width},${height}`,
preferMaximizedWindow
? '--start-maximized'
: `--window-size=${width},${height}`,
],
});
freeFn.push({
Expand All @@ -102,7 +111,9 @@ export async function puppeteerAgentForTarget(
const pages = await browser.pages();
const page = pages[0];
await page.setUserAgent(ua);
await page.setViewport(viewportConfig);
if (!preferMaximizedWindow) {
await page.setViewport(viewportConfig);
}

if (target.cookie) {
const cookieFileContent = readFileSync(target.cookie, 'utf-8');
Expand Down
3 changes: 1 addition & 2 deletions packages/web-integration/src/yaml/player.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import assert from 'node:assert';
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
import { dirname, join } from 'node:path';
import { paramStr, typeStr } from '@/common/ui-utils';

import type { PageAgent } from '@/common/agent';
import type {
Expand Down

0 comments on commit 4e380dc

Please sign in to comment.