diff --git a/packages/playwright-core/browsers.json b/packages/playwright-core/browsers.json index cc6388ddd6..90703952a2 100644 --- a/packages/playwright-core/browsers.json +++ b/packages/playwright-core/browsers.json @@ -33,7 +33,7 @@ }, { "name": "webkit", - "revision": "1702", + "revision": "1703", "installByDefault": true, "revisionOverrides": { "mac10.14": "1446", diff --git a/packages/playwright-core/src/server/webkit/protocol.d.ts b/packages/playwright-core/src/server/webkit/protocol.d.ts index 533f59afa9..aa947ddd30 100644 --- a/packages/playwright-core/src/server/webkit/protocol.d.ts +++ b/packages/playwright-core/src/server/webkit/protocol.d.ts @@ -3722,7 +3722,7 @@ might return multiple quads for inline nodes. /** * Pause reason. */ - reason: "XHR"|"Fetch"|"DOM"|"AnimationFrame"|"Interval"|"Listener"|"Timeout"|"exception"|"assert"|"CSPViolation"|"DebuggerStatement"|"Breakpoint"|"PauseOnNextStatement"|"Microtask"|"BlackboxedScript"|"other"; + reason: "XHR"|"Fetch"|"DOM"|"AnimationFrame"|"Interval"|"Listener"|"Timeout"|"exception"|"assert"|"CSPViolation"|"DebuggerStatement"|"Breakpoint"|"PauseOnNextStatement"|"Microtask"|"FunctionCall"|"BlackboxedScript"|"other"; /** * Object containing break-specific auxiliary properties. */ @@ -3857,6 +3857,48 @@ might return multiple quads for inline nodes. } export type removeBreakpointReturnValue = { } + /** + * Adds a JavaScript breakpoint that pauses execution whenever a function with the given name is about to be called. + */ + export type addSymbolicBreakpointParameters = { + /** + * The name of the function to pause in when called. + */ + symbol: string; + /** + * If true, symbol is case sensitive. Defaults to true. + */ + caseSensitive?: boolean; + /** + * If true, treats symbol as a regex. Defaults to false. + */ + isRegex?: boolean; + /** + * Options to apply to this breakpoint to modify its behavior. + */ + options?: BreakpointOptions; + } + export type addSymbolicBreakpointReturnValue = { + } + /** + * Removes a previously added symbolic breakpoint. + */ + export type removeSymbolicBreakpointParameters = { + /** + * The name of the function to pause in when called. + */ + symbol: string; + /** + * If true, symbol is case sensitive. Defaults to true. + */ + caseSensitive?: boolean; + /** + * If true, treats symbol as a regex. Defaults to false. + */ + isRegex?: boolean; + } + export type removeSymbolicBreakpointReturnValue = { + } /** * Continues execution until the current evaluation completes. This will trigger either a Debugger.paused or Debugger.resumed event. */ @@ -9055,6 +9097,8 @@ the top of the viewport and Y increases as it proceeds towards the bottom of the "Debugger.setBreakpointByUrl": Debugger.setBreakpointByUrlParameters; "Debugger.setBreakpoint": Debugger.setBreakpointParameters; "Debugger.removeBreakpoint": Debugger.removeBreakpointParameters; + "Debugger.addSymbolicBreakpoint": Debugger.addSymbolicBreakpointParameters; + "Debugger.removeSymbolicBreakpoint": Debugger.removeSymbolicBreakpointParameters; "Debugger.continueUntilNextRunLoop": Debugger.continueUntilNextRunLoopParameters; "Debugger.continueToLocation": Debugger.continueToLocationParameters; "Debugger.stepNext": Debugger.stepNextParameters; @@ -9359,6 +9403,8 @@ the top of the viewport and Y increases as it proceeds towards the bottom of the "Debugger.setBreakpointByUrl": Debugger.setBreakpointByUrlReturnValue; "Debugger.setBreakpoint": Debugger.setBreakpointReturnValue; "Debugger.removeBreakpoint": Debugger.removeBreakpointReturnValue; + "Debugger.addSymbolicBreakpoint": Debugger.addSymbolicBreakpointReturnValue; + "Debugger.removeSymbolicBreakpoint": Debugger.removeSymbolicBreakpointReturnValue; "Debugger.continueUntilNextRunLoop": Debugger.continueUntilNextRunLoopReturnValue; "Debugger.continueToLocation": Debugger.continueToLocationReturnValue; "Debugger.stepNext": Debugger.stepNextReturnValue; diff --git a/tests/library/browsercontext-pages.spec.ts b/tests/library/browsercontext-pages.spec.ts index 9a11382890..6a50c35447 100644 --- a/tests/library/browsercontext-pages.spec.ts +++ b/tests/library/browsercontext-pages.spec.ts @@ -94,8 +94,8 @@ it('should click the button with offset with page scale', async ({ browser, serv const round = x => Math.round(x + 0.01); let expected = { x: 28, y: 18 }; // 20;10 + 8px of border in each direction if (browserName === 'webkit') { - // WebKit rounds up during css -> dip -> css conversion. - expected = { x: 29, y: 19 }; + // WebKit rounds down during css -> dip -> css conversion. + expected = { x: 26, y: 17 }; } else if (browserName === 'chromium' && headless) { // Headless Chromium rounds down during css -> dip -> css conversion. expected = { x: 27, y: 18 };