Fired when a command is executed using its associated keyboard shortcut.
The listener is passed the command's name. This matches the name given to the command in its manifest.json entry.
Syntax
browser.commands.onCommand.addListener(listener) browser.commands.onCommand.removeListener(listener) browser.commands.onCommand.hasListener(listener)
Events have three functions:
addListener(callback)
- 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 a user enters the command's shortcut. The function will be passed the following arguments:
name
string
. Name of the command. This matches the name given to the command in its manifest.json entry.
Browser compatibility
The compatibility table in 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.
Chrome | Edge | Firefox | Firefox for Android | Opera | |
---|---|---|---|---|---|
Basic support | Yes | No | 48 | No | Yes |
Examples
Given a manifest.json entry like this:
"commands": {
"toggle-feature": {
"suggested_key": {
"default": "Ctrl+Shift+Y"
},
"description": "Send a 'toggle-feature' event"
}
}
You could listen for this particular command like this:
browser.commands.onCommand.addListener(function(command) {
if (command == "toggle-feature") {
console.log("toggling the feature!");
}
});
Example extensions
Acknowledgements
This API is based on Chromium's chrome.commands
API.
Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.