Skip to content

Commit

Permalink
docs: add section on resource management to base-window.md (electron#…
Browse files Browse the repository at this point in the history
  • Loading branch information
nikwen authored and yangannyx committed Oct 21, 2024
1 parent ff83b32 commit 715d694
Showing 1 changed file with 25 additions and 0 deletions.
25 changes: 25 additions & 0 deletions docs/api/base-window.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,31 @@ const child = new BaseWindow({ parent, modal: true })
* On Linux the type of modal windows will be changed to `dialog`.
* On Linux many desktop environments do not support hiding a modal window.

## Resource management

When you add a [`WebContentsView`](web-contents-view.md) to a `BaseWindow` and the `BaseWindow`
is closed, the [`webContents`](web-contents.md) of the `WebContentsView` are not destroyed
automatically.

It is your responsibility to close the `webContents` when you no longer need them, e.g. when
the `BaseWindow` is closed:

```js
const { BaseWindow, WebContentsView } = require('electron')

const win = new BaseWindow({ width: 800, height: 600 })

const view = new WebContentsView()
win.contentView.addChildView(view)

win.on('closed', () => {
view.webContents.close()
})
```

Unlike with a [`BrowserWindow`](browser-window.md), if you don't explicitly close the
`webContents`, you'll encounter memory leaks.

## Class: BaseWindow

> Create and control windows.
Expand Down

0 comments on commit 715d694

Please sign in to comment.