sidebar_action

Type Object
Mandatory No
Example
"sidebar_action": {
  "default_icon": {
    "16": "button/geo-16.png",
    "32": "button/geo-32.png"
  },
  "default_title": "My sidebar",
  "default_panel": "sidebar/sidebar.html",
  "open_at_install":true
}

A sidebar is a pane that is displayed at the left-hand side of the browser window, next to the web page. The browser provides a UI that enables the user to see the currently available sidebars and to select a sidebar to display.

The sidebar_action key enables you to define the default properties for the sidebar. You can change these properties at runtime using the sidebarAction API.

Syntax

The sidebar_action key is an object that may have any of the properties listed below. The only mandatory property is default_panel.

Name Type Description
browser_style Boolean

Optional, defaulting to true.

Use this to include a stylesheet in your popup that will make it look consistent with the browser's UI and with other extensions that use the browser_style property.

In Firefox, the stylesheet can be seen at chrome://browser/content/extension.css, or chrome://browser/content/extension-mac.css on OS X. When setting dimensions, be aware that this style sheet currently sets box-sizing: border-box (see box-sizing).

The Firefox Style Guide describes the classes you can apply to elements in the sidebar in order to get particular styles.

default_icon Object or String

Use this to specify one or more icons for the sidebar. The icon is shown in the browser's UI for opening and closing sidebars.

Icons are specified as URLs relative to the manifest.json file itself.

You can specify a single icon file by supplying a string here:

"default_icon": "path/to/geo.svg"

To specify multiple icons in different sizes, specify an object here. The name of each property is the icon's height in pixels, and must be convertible to an integer. The value is the URL. For example:

    "default_icon": {
      "16": "path/to/geo-16.png",
      "32": "path/to/geo-32.png"
    }

See Choosing icon sizes for more guidance on this.

This property is optional: if it is omitted, the sidebar doesn't get an icon.

default_panel String

The path to an HTML file that specifies the sidebar's contents.

The HTML file may include CSS and JavaScript files using <link> and <script> elements, just like a normal web page.

Unlike a normal web page, JavaScript running in the panel can access all the WebExtension APIs (subject, of course, to the extension having the appropriate permissions).

This property is mandatory.

This is a localizable property.

default_title String

Title for the sidebar. This is used in the browser UI for listing and opening sidebars, and is displayed at the top of the sidebar when it is open.

This property is optional: if it is omitted, the sidebar's title is the extension's name.

This is a localizable property.

open_at_install Boolean Optional, defaulting to true. Determines whether the sidebar should open on install. The default behavior is to open the sidebar when installation is completed.

Example

"sidebar_action": {
  "default_icon": "sidebar.svg",
  "default_title": "My sidebar!",
  "default_panel": "sidebar.html",
  "browser_style": true
}

For a simple example of an extension that uses a sidebar, see annotate-page.

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
sidebar_action
No
No
54
?
30
No
?
?
No
?
?
?
browser_style
No
No
55
?
No
No
?
?
No
?
?
?
default_icon
No
No
54
?
30
SVG icons are not supported.
No
?
?
No
?
?
?
default_panel
No
No
54
?
30
No
?
?
No
?
?
?
default_title
No
No
54
?
30
No
?
?
No
?
?
?
open_at_install
No
No
62
?
No
No
?
?
No
?
?
?

See also

© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/sidebar_action