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
Report problems with this compatibility data on GitHubwebextensions-desktop | webextensions-mobile | |||||
---|---|---|---|---|---|---|
CreateType | ChromeFull supportYes
| EdgeFull support14
| FirefoxFull support45 | OperaFull supportYes
| SafariFull support14
| Firefox for AndroidNo supportNo |
WINDOW_ID_CURRENT | ChromeFull support18 | EdgeFull support14 | FirefoxFull support45 | OperaFull support15 | SafariFull support14 | Firefox for AndroidNo supportNo |
WINDOW_ID_NONE | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window.alwaysOnTop | ChromeFull support19 | EdgeFull support79 | FirefoxFull support45 | OperaFull support15 | SafariFull support14
| Firefox for AndroidNo supportNo |
Window.focused | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window.height | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window.id | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window.incognito | ChromeFull supportYes | EdgeFull support14
| FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window.left | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window.sessionId | ChromeFull support31 | EdgeFull support79 | FirefoxNo supportNo | OperaFull support18 | SafariNo supportNo | Firefox for AndroidNo supportNo |
Window.state | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window.tabs | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window.title | ChromeNo supportNo | EdgeNo supportNo | FirefoxFull support56 | OperaNo supportNo | SafariNo supportNo | Firefox for AndroidNo supportNo |
Window.top | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window.type | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Window.width | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
WindowState | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
WindowState.docked | ChromeFull supportYes | EdgeFull support79 | FirefoxNo supportNo | OperaFull supportYes | SafariNo supportNo | Firefox for AndroidNo supportNo |
WindowState.fullscreen | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
WindowState.maximized | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
WindowState.minimized | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
WindowType | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
WindowType.app | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariNo supportNo | Firefox for AndroidNo supportNo |
WindowType.devtools | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariNo supportNo | Firefox for AndroidNo supportNo |
WindowType.panel | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariNo supportNo | Firefox for AndroidNo supportNo |
create | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45
| OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
get | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
get.getInfo | ChromeFull support18 | EdgeFull support14 | FirefoxFull support45 | OperaFull support15 | SafariFull support14 | Firefox for AndroidNo supportNo |
getInfo.windowTypes | ChromeFull support46 | EdgeFull support14 | FirefoxNo supportNo | OperaFull support33 | SafariFull support14 | Firefox for AndroidNo supportNo |
getAll | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
getAll.populate | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
getAll.windowTypes | ChromeFull support46 | EdgeFull support14 | FirefoxFull support58 | OperaFull support33 | SafariFull support14 | Firefox for AndroidNo supportNo |
getCurrent | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
getCurrent.getInfo | ChromeFull support18 | EdgeFull support14 | FirefoxFull support45 | OperaFull support15 | SafariFull support14 | Firefox for AndroidNo supportNo |
getInfo.windowTypes | ChromeFull support46 | EdgeFull support14 | FirefoxNo supportNo | OperaFull support33 | SafariFull support14 | Firefox for AndroidNo supportNo |
getLastFocused | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
getLastFocused.getInfo | ChromeFull support18 | EdgeFull support14 | FirefoxFull support45 | OperaFull support15 | SafariFull support14 | Firefox for AndroidNo supportNo |
getInfo.windowTypes | ChromeFull support46 | EdgeFull support14 | FirefoxNo supportNo | OperaFull support33 | SafariFull support14 | Firefox for AndroidNo supportNo |
onCreated | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
onFocusChanged | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
onRemoved | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
remove | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
update | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
update.drawAttention | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariNo supportNo | Firefox for AndroidNo supportNo |
update.focused | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
update.height | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
update.left | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
update.state | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
update.titlePreface | ChromeNo supportNo | EdgeNo supportNo | FirefoxFull support56 | OperaNo supportNo | SafariNo supportNo | Firefox for AndroidNo supportNo |
update.top | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
update.width | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidNo supportNo |
Legend
- Full support
- Full support
- No support
- No support
- Non-standard. Check cross-browser support before using.
- Deprecated. Not for use in new websites.
- See implementation notes.
- Uses a non-standard name.
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Example extensions
- annotate-page
- bookmark-it
- private-browsing-theme
- store-collected-images
- theme-integrated-sidebar
- window-manipulator
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.