Sets the icon for the page action. The icon can be specified either as the path to an image file or as the pixel data from a canvas element, or as dictionary of either one of those.
Syntax
browser.pageAction.setIcon( details, // object function() {...} // optional function )
Parameters
details
object
. Thedetails
object has the following properties:-
tabId
integer
. The ID of the tab whose icon you want to set.imageData
Optional
orpageAction.ImageDataType
. Either anobject
ImageData
object or a dictionary. If the icon is specified as a dictionary, each entry represents an icon in a particular size. The key is the size of the icon, and the value is anImageData
object of that size. For example:
{
19: image_data_19,
38: image_data_38
}
The image used is chosen depending on the screen's pixel density. "19" is used in normal-density screens, and "38" is used in high-density screens.path
Optional
orstring
. Either a relative image path or a dictionary {size -> relative image path} pointing to icon to be set. If the icon is specified as a dictionary, each entry represents an icon in a particular size. The key is the size of the icon, and the value is a path to an image file of that size. For example:object
{
19: "path/to/image_19.png",
38: "path/to/image_38.png"
}
The image used is chosen depending on the screen's pixel density. "19" is used in normal-density screens, and "38" is used in high-density screens.
callback
Optionalfunction
. Called with no arguments, once the icon has been set.
Browser compatibility
Feature Chrome Edge Firefox (Gecko) Opera Basic support (Yes) ? 45.0 (45.0) 33 Feature Edge Firefox OS Firefox Mobile (Gecko) Basic support No support No support No support Examples
AcknowledgementsThis API is based on Chromium's
chrome.pageAction
API. This documentation is derived frompage_action.json
in the Chromium code.// Copyright 2015 The Chromium Authors. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are // met: // // * Redistributions of source code must retain the above copyright // notice, this list of conditions and the following disclaimer. // * Redistributions in binary form must reproduce the above // copyright notice, this list of conditions and the following disclaimer // in the documentation and/or other materials provided with the // distribution. // * Neither the name of Google Inc. nor the names of its // contributors may be used to endorse or promote products derived from // this software without specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.