theme.onUpdated
Fires when a theme supplied as a browser extension is applied or removed. Specifically:
- when a static theme is installed
- when a dynamic theme calls
theme.update()
ortheme.reset()
- when a theme gets uninstalled.
Note that this event is not fired for changes to the built-in themes.
Syntax
browser.theme.onUpdated.addListener(listener) browser.theme.onUpdated.removeListener(listener) browser.theme.onUpdated.hasListener(listener)
Events have three functions:
addListener(listener)
- Adds a listener to this event.
removeListener(listener)
- Stop listening to this event. The
listener
argument is the listener to remove. hasListener(listener)
- Check whether
listener
is registered for this event. Returnstrue
if it is listening,false
otherwise.
addListener syntax
Parameters
callback
-
Function that will be called when this event occurs. The function will be passed the following arguments:
updateInfo
-
object
. An object containing two properties:theme
-
object
. If the event fired because an extension-supplied theme was removed, this will be an empty object. If it fired because an extension-supplied theme was applied, then it will be atheme.Theme
object representing the theme that was applied. -
windowId
Optional -
integer
. The ID of the window for which theme has been updated. If this property is not present, it means that the theme was updated globally.
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 | |
onUpdated |
No |
No |
58 |
? |
No |
No |
? |
? |
No |
? |
? |
? |
Examples
function handleUpdated(updateInfo) { if (updateInfo.theme.colors) { console.log(`Theme was applied: ${updateInfo.theme}`); } else { console.log(`Theme was removed`); } } browser.theme.onUpdated.addListener(handleUpdated);
Example extensions
© 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/API/theme/onUpdated