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.

Properties

windows.WINDOW_ID_NONE
The windowId value that represents the absence of a browser window.
windows.WINDOW_ID_CURRENT
The windowId value that represents 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

ChromeEdgeFirefoxFirefox for AndroidOpera
CreateTypeYes *Yes *45NoYes *
WINDOW_ID_CURRENT18Yes45No15
WINDOW_ID_NONEYesYes45NoYes
WindowYes *Yes *45 *NoYes *
WindowStateYesYes *45 *NoYes
WindowTypeYesYes *45NoYes
createYes *Yes *45 *NoYes *
getYes *Yes45NoYes *
getAllYes *Yes *45NoYes *
getCurrentYes *Yes45NoYes *
getLastFocusedYes *Yes45NoYes *
onCreatedYesYes45NoYes
onFocusChangedYesYes45NoYes
onRemovedYesNo45NoYes
removeYesNo45NoYes
updateYesYes *45NoYes

Edge incompatibilities

Promises are not supported in Edge. Use callbacks instead.

Chrome incompatibilities

windows

  • In Firefox onFocusChanged will trigger multiple times for a given focus change.

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: abbycar, chrisdavidmills, wbamberg, bsilverberg
 Last updated by: abbycar,