action.setTitle()

Sets the browser action's title. The title is displayed in a tooltip over the browser action's icon. You can pass a tabId in or a windowId as an optional parameter — if you do this then the title is changed only for the specified tab or window. Tabs or windows without a specific title inherit the global title text, which defaults to the default_title or name specified in the manifest.

Note: This API is available in Manifest V3 or higher.

Syntax

js

browser.action.setTitle(
  details // object
)

Parameters

details

object. The new title and optionally the ID of the tab or window to target.

title

string or null. The string the browser action should display when moused over.

If title is an empty string, the used title will be the extension name, but action.getTitle will still provide the empty string.

If title is null:

  • If tabId is specified, and the tab has a tab-specific title set, then the tab will inherit the title from the window to which it belongs.
  • if windowId is specified, and the window has a window-specific title set, then the window will inherit the global title.
  • Otherwise, the global title will be reset to the manifest title.
tabId Optional

integer. Sets the title only for the given tab.

windowId Optional

integer. Sets the title for the given window.

  • If windowId and tabId are both supplied, the function fails and the title is not set.
  • If windowId and tabId are both omitted, the global title is set.

Examples

This code switches the title between "this" and "that" each time the user clicks the browser action:

js

function toggleTitle(title) {
  if (title === "this") {
    browser.action.setTitle({ title: "that" });
  } else {
    browser.action.setTitle({ title: "this" });
  }
}

browser.action.onClicked.addListener(() => {
  let gettingTitle = browser.action.getTitle({});
  gettingTitle.then(toggleTitle);
});

Browser compatibility

BCD tables only load in the browser

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