windows.update()

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

This is an asynchronous function that returns a Promise.

Syntax

var updating = browser.windows.update(
  windowId,              // integer
  updateInfo             // object
)

Parameters

windowId
integer. ID of the window to update.
updateInfo
object. Object containing the properties to update.
drawAttention Optional
boolean. If true, causes the window to be displayed in a manner that draws the user's attention to the window, without changing the focused window. The effect lasts until the user changes focus to the window. This option has no effect if the window already has focus. Set to false to cancel a previous drawAttention request.
focused Optional
boolean. If true, brings the window to the front. If false, brings the next window in the z-order to the front.
height Optional
integer. The height to resize the window to in pixels. This value is ignored for panels.
left Optional
integer. The offset from the left edge of the screen to move the window to in pixels. This value is ignored for panels.
state Optional
windows.WindowState. The new state of the window. The minimized, maximized and fullscreen states cannot be combined with left, top, width or height.
titlePreface Optional
string. Use this to add a string to the beginning of the browser window's title. Depending on the underlying operating system, this might not work on browser windows that don't have a title (such as about:blank in Firefox).
top Optional
integer. The offset from the top edge of the screen to move the window to in pixels. This value is ignored for panels.
width Optional
integer. The width to resize the window to in pixels. This value is ignored for panels.

Return value

A Promise that will be fulfilled with a windows.Window object containing the details of the updated window. If any error occurs, the promise will be rejected with an error message.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxOperaFirefox for Android
Basic supportChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
drawAttentionChrome Full support YesEdge No support NoFirefox Full support 45Opera Full support YesFirefox Android No support No
focusedChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
heightChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
leftChrome Full support YesEdge No support NoFirefox Full support 45Opera Full support YesFirefox Android No support No
stateChrome Full support YesEdge Full support 14Firefox Full support 45Opera Full support YesFirefox Android No support No
titlePrefaceChrome No support NoEdge No support NoFirefox Full support 56Opera No support NoFirefox Android No support No
topChrome Full support YesEdge No support NoFirefox Full support 45Opera Full support YesFirefox Android No support No
widthChrome 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

Examples

When the user clicks a browser action's icon, move the window to the top left corner:

function onUpdated(windowInfo) {
  console.log(`Updated window: ${windowInfo.id}`);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

browser.browserAction.onClicked.addListener((tab) => {

  var updating = browser.windows.update(tab.windowId, {
    left: 0,
    top: 0
  });
  updating.then(onUpdated, onError);

});

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: Brettz9, kernp, wbamberg, Makyen, chrisdavidmills
Last updated by: Brettz9,