diff --git a/packages/playwright-core/src/client/browserContext.ts b/packages/playwright-core/src/client/browserContext.ts index 5ff432ec60..3f9f4ba119 100644 --- a/packages/playwright-core/src/client/browserContext.ts +++ b/packages/playwright-core/src/client/browserContext.ts @@ -495,6 +495,12 @@ export class BrowserContext extends ChannelOwner async _enableRecorder(params: channels.BrowserContextEnableRecorderParams) { await this._channel.enableRecorder(params); } + + _disableDebugger() { + this._wrapApiCall(async () => { + this._channel.disableDebugger(); + }, true).catch(() => {}); + } } async function prepareStorageState(options: BrowserContextOptions): Promise { diff --git a/packages/playwright-core/src/protocol/validator.ts b/packages/playwright-core/src/protocol/validator.ts index 24ddf0014c..8f5cb7884e 100644 --- a/packages/playwright-core/src/protocol/validator.ts +++ b/packages/playwright-core/src/protocol/validator.ts @@ -1047,6 +1047,8 @@ scheme.BrowserContextClockSetSystemTimeParams = tObject({ timeString: tOptional(tString), }); scheme.BrowserContextClockSetSystemTimeResult = tOptional(tObject({})); +scheme.BrowserContextDisableDebuggerParams = tOptional(tObject({})); +scheme.BrowserContextDisableDebuggerResult = tOptional(tObject({})); scheme.PageInitializer = tObject({ mainFrame: tChannel(['Frame']), viewportSize: tOptional(tObject({ diff --git a/packages/playwright-core/src/server/dispatchers/browserContextDispatcher.ts b/packages/playwright-core/src/server/dispatchers/browserContextDispatcher.ts index c6ffce49f7..6ad4eee19d 100644 --- a/packages/playwright-core/src/server/dispatchers/browserContextDispatcher.ts +++ b/packages/playwright-core/src/server/dispatchers/browserContextDispatcher.ts @@ -374,6 +374,10 @@ export class BrowserContextDispatcher extends Dispatcher; clockSetFixedTime(params: BrowserContextClockSetFixedTimeParams, metadata?: CallMetadata): Promise; clockSetSystemTime(params: BrowserContextClockSetSystemTimeParams, metadata?: CallMetadata): Promise; + disableDebugger(params?: BrowserContextDisableDebuggerParams, metadata?: CallMetadata): Promise; } export type BrowserContextBindingCallEvent = { binding: BindingCallChannel, @@ -1902,6 +1903,9 @@ export type BrowserContextClockSetSystemTimeOptions = { timeString?: string, }; export type BrowserContextClockSetSystemTimeResult = void; +export type BrowserContextDisableDebuggerParams = {}; +export type BrowserContextDisableDebuggerOptions = {}; +export type BrowserContextDisableDebuggerResult = void; export interface BrowserContextEvents { 'bindingCall': BrowserContextBindingCallEvent; diff --git a/packages/protocol/src/protocol.yml b/packages/protocol/src/protocol.yml index c91cecbe6c..722cccba6e 100644 --- a/packages/protocol/src/protocol.yml +++ b/packages/protocol/src/protocol.yml @@ -1291,6 +1291,8 @@ BrowserContext: timeNumber: number? timeString: string? + disableDebugger: + events: bindingCall: