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.

Properties

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.

Functions

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

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxOperaFirefox for Android
CreateTypeChrome Full support Yes
Notes
Full support Yes
Notes
Notes `detached_panel` is not supported.
Edge Full support 14
Notes
Full support 14
Notes
Notes `panel` and `detached_panel` are not supported.
Firefox Full support 45Opera Full support Yes
Notes
Full support Yes
Notes
Notes `detached_panel` is not supported.
Firefox Android No support No
WINDOW_ID_CURRENTChrome Full support 18Edge Full support 14Firefox Full support 45Opera Full support 15Firefox Android No support No
WINDOW_ID_NONEChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
WindowChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
WindowStateChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
WindowTypeChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
createChrome Full support YesEdge Full support 14Firefox Full support 45
Notes
Full support 45
Notes
Notes 'url' and 'tabId options can't both be set together.
Notes The returned 'Window' object contains the 'tabs' property only from version 52 onwards.
Opera Full support YesFirefox Android No support No
getChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
getAllChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
getCurrentChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
getLastFocusedChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
onCreatedChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
onFocusChangedChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
onRemovedChrome Full support YesEdge No support NoFirefox Full support 45Opera Full support YesFirefox Android No support No
removeChrome Full support YesEdge No support NoFirefox Full support 45Opera Full support YesFirefox Android No support No
updateChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No

Legend

Full support  
Full support
No support  
No support
See implementation notes.
See implementation notes.

Example extensions

Acknowledgements

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.

Document Tags and Contributors

Contributors to this page: Mossop, wbamberg, abbycar, chrisdavidmills, bsilverberg
Last updated by: Mossop,