refactor: ginify BrowserView (#23578)
This commit is contained in:
parent
66d65a6d35
commit
9bd0fc5348
12 changed files with 128 additions and 165 deletions
|
@ -9,7 +9,7 @@ import { AddressInfo } from 'net';
|
|||
import { app, BrowserWindow, BrowserView, ipcMain, OnBeforeSendHeadersListenerDetails, protocol, screen, webContents, session, WebContents } from 'electron/main';
|
||||
|
||||
import { emittedOnce, emittedUntil } from './events-helpers';
|
||||
import { ifit, ifdescribe, delay } from './spec-helpers';
|
||||
import { ifit, ifdescribe, defer, delay } from './spec-helpers';
|
||||
import { closeWindow, closeAllWindows } from './window-helpers';
|
||||
|
||||
const features = process._linkedBinding('electron_common_features');
|
||||
|
@ -1518,16 +1518,19 @@ describe('BrowserWindow module', () => {
|
|||
const w = new BrowserWindow({ show: false });
|
||||
const bv = new BrowserView();
|
||||
w.setBrowserView(bv);
|
||||
defer(() => {
|
||||
w.removeBrowserView(bv);
|
||||
(bv.webContents as any).destroy();
|
||||
});
|
||||
expect(BrowserWindow.fromBrowserView(bv)!.id).to.equal(w.id);
|
||||
// if BrowserView isn't explicitly destroyed, it will crash in GC later
|
||||
bv.destroy();
|
||||
});
|
||||
|
||||
it('returns undefined if not attached', () => {
|
||||
const bv = new BrowserView();
|
||||
defer(() => {
|
||||
(bv.webContents as any).destroy();
|
||||
});
|
||||
expect(BrowserWindow.fromBrowserView(bv)).to.be.null('BrowserWindow associated with bv');
|
||||
// if BrowserView isn't explicitly destroyed, it will crash in GC later
|
||||
bv.destroy();
|
||||
});
|
||||
});
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue