theme.update()
Updates the browser theme according to the content of the Theme
object.
To use this method, an extension must request the "theme" permission in its manifest.json file.
Syntax
js
browser.theme.update(
windowId, // integer
theme // object
)
Parameters
windowId
Optional-
integer
. The ID of a window. If this is provided, the theme is applied only to that window. If it is omitted, the theme is applied to all windows. theme
-
object
. ATheme
object specifying values for the UI elements you want to modify.
Examples
Sets the browser theme to use a sun graphic with a complementary background color:
js
const sunTheme = {
images: {
theme_frame: "sun.jpg",
},
colors: {
frame: "#CF723F",
tab_background_text: "#111",
},
};
browser.theme.update(sunTheme);
Set the theme for the focused window only:
js
const day = {
images: {
theme_frame: "sun.jpg",
},
colors: {
frame: "#CF723F",
tab_background_text: "#111",
},
};
browser.menus.create({
id: "set-theme",
title: "set theme",
contexts: ["all"],
});
async function updateThemeForCurrentWindow() {
let currentWindow = await browser.windows.getLastFocused();
browser.theme.update(currentWindow.id, day);
}
browser.menus.onClicked.addListener(updateThemeForCurrentWindow);
Example extensions
Browser compatibility
Report problems with this compatibility data on GitHubdesktop | mobile | ||||||
---|---|---|---|---|---|---|---|
update | |||||||
windowId |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
- No support
- No support
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.