web_extensions / latest / api / windows.html /

windows

Interact with browser windows. You can use this API to get information about open windows and to open, modify, and close windows. You can also listen for window open, close, and activate events.

Types

windows.WindowType

The type of browser window this is.

windows.WindowState

The state of this browser window.

windows.Window

Contains information about a browser window.

windows.CreateType

Specifies the type of browser window to create.

Constants

windows.WINDOW_ID_NONE

The windowId value that represents the absence of a browser window.

windows.WINDOW_ID_CURRENT

A value that can be used in place of a windowId in some APIs to represent the current window.

Methods

windows.get()

Gets details about a window, given its ID.

windows.getCurrent()

Gets the current window.

windows.getLastFocused()

Gets the window that was most recently focused — typically the window 'on top'.

windows.getAll()

Gets all windows.

windows.create()

Creates a new window.

windows.update()

Updates the properties of a window. Use this to move, resize, and (un)focus a window, etc.

windows.remove()

Closes a window, and all its tabs.

Events

windows.onCreated

Fired when a window is created.

windows.onRemoved

Fired when a window is closed.

windows.onFocusChanged

Fired when the currently focused window changes.

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
CreateType
Yes
detached_panel is not supported.
14
panel and detached_panel are not supported.
45
?
Yes
detached_panel is not supported.
14
panel and detached_panel are not supported.
?
?
No
?
15
panel and detached_panel are not supported.
?
WINDOW_ID_CURRENT
18
14
45
?
15
14
?
?
No
?
15
?
WINDOW_ID_NONE
Yes
14
45
?
Yes
14
?
?
No
?
15
?
Window
Yes
14
45
?
Yes
14
?
?
No
?
15
?
WindowState
Yes
14
45
?
Yes
14
?
?
No
?
No
?
WindowType
Yes
14
45
?
Yes
14
?
?
No
?
15
?
create
Yes
14
45
["'url' and 'tabId options can't both be set together.", "The returned 'Window' object contains the 'tabs' property only from version 52 onwards.", "From Firefox 86, the focused: false option is ignored."]
?
Yes
14
?
?
No
?
No
?
get
Yes
14
45
?
Yes
14
?
?
No
?
15
?
getAll
Yes
14
45
?
Yes
14
?
?
No
?
15
?
getCurrent
Yes
14
45
?
Yes
14
?
?
No
?
15
?
getLastFocused
Yes
14
45
?
Yes
14
?
?
No
?
15
?
onCreated
Yes
14
45
?
Yes
14
?
?
No
?
15
Fires a pair of events: one for private browsing, one for regular browsing.
?
onFocusChanged
Yes
14
45
?
Yes
14
?
?
No
?
15
Fires when toggling in or out of private browsing mode, leaving Safari to the home screen, and returning to Safari from the home screen.
?
onRemoved
Yes
79
45
?
Yes
14
?
?
No
?
No
?
remove
Yes
79
45
?
Yes
14
?
?
No
?
No
?
update
Yes
14
45
?
Yes
14
?
?
No
?
15
?

Example extensions

Note: This API is based on Chromium's chrome.windows API. This documentation is derived from windows.json in the Chromium code.

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

© 2005–2022 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/windows