Skip to content

Commit 0aee77c

Browse files
authored
chore(bidi): add support for emulation.setUserAgentOverride (#37634)
1 parent 89af5a7 commit 0aee77c

File tree

3 files changed

+408
-185
lines changed

3 files changed

+408
-185
lines changed

packages/playwright-core/src/server/bidi/bidiBrowser.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,12 @@ export class BidiBrowserContext extends BrowserContext {
216216
userContexts: [this._userContextId()],
217217
}));
218218
}
219+
if (this._options.userAgent) {
220+
promises.push(this._browser._browserSession.send('emulation.setUserAgentOverride', {
221+
userAgent: this._options.userAgent,
222+
userContexts: [this._userContextId()],
223+
}));
224+
}
219225
await Promise.all(promises);
220226
}
221227

@@ -317,6 +323,11 @@ export class BidiBrowserContext extends BrowserContext {
317323
}
318324

319325
async setUserAgent(userAgent: string | undefined): Promise<void> {
326+
this._options.userAgent = userAgent;
327+
await this._browser._browserSession.send('emulation.setUserAgentOverride', {
328+
userAgent: userAgent ?? null,
329+
userContexts: [this._userContextId()],
330+
});
320331
}
321332

322333
async doUpdateOffline(): Promise<void> {

packages/playwright-core/src/server/bidi/third_party/bidiCommands.d.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,10 @@ export interface Commands {
125125
params: Bidi.Emulation.SetTimezoneOverrideParameters;
126126
returnType: Bidi.EmptyResult;
127127
};
128+
'emulation.setUserAgentOverride': {
129+
params: Bidi.Emulation.SetUserAgentOverrideParameters;
130+
returnType: Bidi.Emulation.SetUserAgentOverrideResult;
131+
};
128132

129133
'emulation.setLocaleOverride': {
130134
params: Bidi.Emulation.SetLocaleOverrideParameters;

0 commit comments

Comments
 (0)