chore(webkit): add listeners directly without eventsHelper (#32149)

The listeners are never removed, so there is no point in wrapping them
with the helper
This commit is contained in:
Yury Semikhatsky 2024-08-14 08:38:49 -07:00 committed by GitHub
parent 4daf5c2303
commit 60900f8541
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 10 additions and 15 deletions

View file

@ -18,9 +18,7 @@
import type { BrowserOptions } from '../browser'; import type { BrowserOptions } from '../browser';
import { Browser } from '../browser'; import { Browser } from '../browser';
import { assertBrowserContextIsNotOwned, BrowserContext, verifyGeolocation } from '../browserContext'; import { assertBrowserContextIsNotOwned, BrowserContext, verifyGeolocation } from '../browserContext';
import type { RegisteredListener } from '../../utils/eventsHelper';
import { assert } from '../../utils'; import { assert } from '../../utils';
import { eventsHelper } from '../../utils/eventsHelper';
import * as network from '../network'; import * as network from '../network';
import type { InitScript, Page, PageDelegate } from '../page'; import type { InitScript, Page, PageDelegate } from '../page';
import type { ConnectionTransport } from '../transport'; import type { ConnectionTransport } from '../transport';
@ -41,7 +39,6 @@ export class WKBrowser extends Browser {
readonly _browserSession: WKSession; readonly _browserSession: WKSession;
readonly _contexts = new Map<string, WKBrowserContext>(); readonly _contexts = new Map<string, WKBrowserContext>();
readonly _wkPages = new Map<string, WKPage>(); readonly _wkPages = new Map<string, WKPage>();
private readonly _eventListeners: RegisteredListener[];
static async connect(parent: SdkObject, transport: ConnectionTransport, options: BrowserOptions): Promise<WKBrowser> { static async connect(parent: SdkObject, transport: ConnectionTransport, options: BrowserOptions): Promise<WKBrowser> {
const browser = new WKBrowser(parent, transport, options); const browser = new WKBrowser(parent, transport, options);
@ -63,17 +60,15 @@ export class WKBrowser extends Browser {
super(parent, options); super(parent, options);
this._connection = new WKConnection(transport, this._onDisconnect.bind(this), options.protocolLogger, options.browserLogsCollector); this._connection = new WKConnection(transport, this._onDisconnect.bind(this), options.protocolLogger, options.browserLogsCollector);
this._browserSession = this._connection.browserSession; this._browserSession = this._connection.browserSession;
this._eventListeners = [ this._browserSession.on('Playwright.pageProxyCreated', this._onPageProxyCreated.bind(this));
eventsHelper.addEventListener(this._browserSession, 'Playwright.pageProxyCreated', this._onPageProxyCreated.bind(this)), this._browserSession.on('Playwright.pageProxyDestroyed', this._onPageProxyDestroyed.bind(this));
eventsHelper.addEventListener(this._browserSession, 'Playwright.pageProxyDestroyed', this._onPageProxyDestroyed.bind(this)), this._browserSession.on('Playwright.provisionalLoadFailed', event => this._onProvisionalLoadFailed(event));
eventsHelper.addEventListener(this._browserSession, 'Playwright.provisionalLoadFailed', event => this._onProvisionalLoadFailed(event)), this._browserSession.on('Playwright.windowOpen', event => this._onWindowOpen(event));
eventsHelper.addEventListener(this._browserSession, 'Playwright.windowOpen', event => this._onWindowOpen(event)), this._browserSession.on('Playwright.downloadCreated', this._onDownloadCreated.bind(this));
eventsHelper.addEventListener(this._browserSession, 'Playwright.downloadCreated', this._onDownloadCreated.bind(this)), this._browserSession.on('Playwright.downloadFilenameSuggested', this._onDownloadFilenameSuggested.bind(this));
eventsHelper.addEventListener(this._browserSession, 'Playwright.downloadFilenameSuggested', this._onDownloadFilenameSuggested.bind(this)), this._browserSession.on('Playwright.downloadFinished', this._onDownloadFinished.bind(this));
eventsHelper.addEventListener(this._browserSession, 'Playwright.downloadFinished', this._onDownloadFinished.bind(this)), this._browserSession.on('Playwright.screencastFinished', this._onScreencastFinished.bind(this));
eventsHelper.addEventListener(this._browserSession, 'Playwright.screencastFinished', this._onScreencastFinished.bind(this)), this._browserSession.on(kPageProxyMessageReceived, this._onPageProxyMessageReceived.bind(this));
eventsHelper.addEventListener(this._browserSession, kPageProxyMessageReceived, this._onPageProxyMessageReceived.bind(this)),
];
} }
_onDisconnect() { _onDisconnect() {

View file

@ -31,7 +31,7 @@ export const kBrowserCloseMessageId = -9999;
// We emulate kPageProxyMessageReceived message to unify it with Browser.pageProxyCreated // We emulate kPageProxyMessageReceived message to unify it with Browser.pageProxyCreated
// and Browser.pageProxyDestroyed for easier management. // and Browser.pageProxyDestroyed for easier management.
export const kPageProxyMessageReceived = 'kPageProxyMessageReceived'; export const kPageProxyMessageReceived = Symbol('kPageProxyMessageReceived');
export type PageProxyMessageReceivedPayload = { pageProxyId: string, message: any }; export type PageProxyMessageReceivedPayload = { pageProxyId: string, message: any };
export class WKConnection { export class WKConnection {