Home | History | Annotate | Download | only in test
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 [
      6   {
      7     "namespace": "browserAction",
      8     "description": "The browserAction API.",
      9     "dependencies": [ "tabs" ],
     10     "types": [
     11       {
     12         "id": "ColorArray",
     13         "type": "array",
     14         "items": {
     15           "type": "integer",
     16           "minimum": 0,
     17           "maximum": 255
     18         },
     19         "minItems": 4,
     20         "maxItems": 4
     21       }
     22     ],
     23     "functions": [
     24       {
     25         "name": "setTitle",
     26         "type": "function",
     27         "description": "Sets the title of the browser action. This shows up in the tooltip.",
     28         "parameters": [
     29           {
     30             "name": "details",
     31             "type": "object",
     32             "properties": {
     33               "title": {
     34                 "type": "string",
     35                 "description": "The string the browser action should display when moused over."
     36               },
     37               "tabId": {
     38                 "type": "integer",
     39                 "optional": true,
     40                 "description": "Limits the change to when a particular tab is selected. Automatically resets when the tab is closed."
     41               }
     42             }
     43           }
     44         ]
     45       },
     46       {
     47         "name": "getTitle",
     48         "type": "function",
     49         "description": "Gets the title of the browser action.",
     50         "parameters": [
     51           {
     52             "name": "details",
     53             "type": "object",
     54             "properties": {
     55               "tabId": {
     56                 "type": "integer",
     57                 "optional": true,
     58                 "description": "Specify the tab to get the title from. If no tab is specified, the non-tab-specific title is returned."
     59               }
     60             }
     61           },
     62           {
     63             "type": "function",
     64             "name": "callback",
     65             "parameters": [
     66               {
     67                 "name": "result",
     68                 "type": "string"
     69               }
     70             ]
     71           }
     72         ]
     73       },
     74       {
     75         "name": "setIcon",
     76         "type": "function",
     77         "description": "Sets the icon for the browser action. The icon can be specified either as the path to an image file or as the pixel data from a canvas element. Either the <b>path</b> or the <b>imageData</b> property must be specified.",
     78         "parameters": [
     79           {
     80             "name": "details",
     81             "type": "object",
     82             "properties": {
     83               "imageData": {
     84                 "type": "object",
     85                 "isInstanceOf": "ImageData",
     86                 "additionalProperties": { "type": "any" },
     87                 "description": "Pixel data for an image. Must be an ImageData object (for example, from a <code>canvas</code> element).",
     88                 "optional": true
     89               },
     90               "path": {
     91                 "type": "string",
     92                 "description": "Relative path to an image in the extension to show in the browser action.",
     93                 "optional": true
     94               },
     95               "tabId": {
     96                 "type": "integer",
     97                 "optional": true,
     98                 "description": "Limits the change to when a particular tab is selected. Automatically resets when the tab is closed."
     99               }
    100             }
    101           }
    102         ]
    103       },
    104       {
    105         "name": "setPopup",
    106         "type": "function",
    107         "description": "Sets the html document to be opened as a popup when the user clicks on the browser action's icon.",
    108         "parameters": [
    109           {
    110             "name": "details",
    111             "type": "object",
    112             "properties": {
    113               "tabId": {
    114                 "type": "integer",
    115                 "optional": true,
    116                 "minimum": 0,
    117                 "description": "Limits the change to when a particular tab is selected. Automatically resets when the tab is closed."
    118               },
    119               "popup": {
    120                 "type": "string",
    121                 "description": "The html file to show in a popup.  If set to the empty string (''), no popup is shown."
    122               }
    123             }
    124           }
    125         ]
    126       },
    127       {
    128         "name": "getPopup",
    129         "type": "function",
    130         "description": "Gets the html document set as the popup for this browser action.",
    131         "parameters": [
    132           {
    133             "name": "details",
    134             "type": "object",
    135             "properties": {
    136               "tabId": {
    137                 "type": "integer",
    138                 "optional": true,
    139                 "description": "Specify the tab to get the popup from. If no tab is specified, the non-tab-specific popup is returned."
    140               }
    141             }
    142           },
    143           {
    144             "type": "function",
    145             "name": "callback",
    146             "parameters": [
    147               {
    148                 "name": "result",
    149                 "type": "string"
    150               }
    151             ]
    152           }
    153         ]
    154       },
    155       {
    156         "name": "setBadgeText",
    157         "type": "function",
    158         "description": "Sets the badge text for the browser action. The badge is displayed on top of the icon.",
    159         "parameters": [
    160           {
    161             "name": "details",
    162             "type": "object",
    163             "properties": {
    164               "text": {
    165                 "type": "string",
    166                 "description": "Any number of characters can be passed, but only about four can fit in the space."
    167               },
    168               "tabId": {
    169                 "type": "integer",
    170                 "optional": true,
    171                 "description": "Limits the change to when a particular tab is selected. Automatically resets when the tab is closed."
    172               }
    173             }
    174           }
    175         ]
    176       },
    177       {
    178         "name": "getBadgeText",
    179         "type": "function",
    180         "description": "Gets the badge text of the browser action. If no tab is specified, the non-tab-specific badge text is returned.",
    181         "parameters": [
    182           {
    183             "name": "details",
    184             "type": "object",
    185             "properties": {
    186               "tabId": {
    187                 "type": "integer",
    188                 "optional": true,
    189                 "description": "Specify the tab to get the badge text from. If no tab is specified, the non-tab-specific badge text is returned."
    190               }
    191             }
    192           },
    193           {
    194             "type": "function",
    195             "name": "callback",
    196             "parameters": [
    197               {
    198                 "name": "result",
    199                 "type": "string"
    200               }
    201             ]
    202           }
    203         ]
    204       },
    205       {
    206         "name": "setBadgeBackgroundColor",
    207         "type": "function",
    208         "description": "Sets the background color for the badge.",
    209         "parameters": [
    210           {
    211             "name": "details",
    212             "type": "object",
    213             "properties": {
    214               "color": {
    215                 "description": "An array of four integers in the range [0,255] that make up the RGBA color of the badge. For example, opaque red is <code>[255, 0, 0, 255]</code>. Can also be a string with a CSS value, with opaque red being <code>#FF0000</code> or <code>#F00</code>.",
    216                 "choices": [
    217                   {"type": "string"},
    218                   {"$ref": "ColorArray"}
    219                 ]
    220               },
    221               "tabId": {
    222                 "type": "integer",
    223                 "optional": true,
    224                 "description": "Limits the change to when a particular tab is selected. Automatically resets when the tab is closed."
    225               }
    226             }
    227           }
    228         ]
    229       },
    230       {
    231         "name": "getBadgeBackgroundColor",
    232         "type": "function",
    233         "description": "Gets the background color of the browser action.",
    234         "parameters": [
    235           {
    236             "name": "details",
    237             "type": "object",
    238             "properties": {
    239               "tabId": {
    240                 "type": "integer",
    241                 "optional": true,
    242                 "description": "Specify the tab to get the badge background color from. If no tab is specified, the non-tab-specific badge background color is returned."
    243               }
    244             }
    245           },
    246           {
    247             "type": "function",
    248             "name": "callback",
    249             "parameters": [
    250               {
    251                 "name": "result",
    252                 "$ref": "ColorArray"
    253               }
    254             ]
    255           }
    256         ]
    257       }
    258     ],
    259     "events": [
    260       {
    261         "name": "onClicked",
    262         "type": "function",
    263         "description": "Fired when a browser action icon is clicked.  This event will not fire if the browser action has a popup.",
    264         "parameters": [
    265           {
    266             "name": "tab",
    267             "$ref": "Tab"
    268           }
    269         ]
    270       }
    271     ]
    272   }
    273 ]
    274