Home | History | Annotate | Download | only in api
      1 // Copyright (c) 2013 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": "webview",
      8     "description": "none",
      9     "types": [
     10       {
     11         "id": "DataTypeSet",
     12         "type": "object",
     13         "description": "A set of data types. Missing data types are interpreted as <code>false</code>.",
     14         "properties": {
     15           "appcache": {
     16             "type": "boolean",
     17             "optional": true,
     18             "description": "Websites' appcaches."
     19           },
     20           "cookies": {
     21             "type": "boolean",
     22             "optional": true,
     23             "description": "The browser's cookies."
     24           },
     25           "fileSystems": {
     26             "type": "boolean",
     27             "optional": true,
     28             "description": "Websites' file systems."
     29           },
     30           "indexedDB": {
     31             "type": "boolean",
     32             "optional": true,
     33             "description": "Websites' IndexedDB data."
     34           },
     35           "localStorage": {
     36             "type": "boolean",
     37             "optional": true,
     38             "description": "Websites' local storage data."
     39           },
     40           "webSQL": {
     41             "type": "boolean",
     42             "optional": true,
     43             "description": "Websites' WebSQL data."
     44           }
     45         }
     46       },
     47       {
     48         "id": "RemovalOptions",
     49         "type": "object",
     50         "description": "Options that determine exactly what data will be removed.",
     51         "properties": {
     52           "since": {
     53             "type": "number",
     54             "optional": true,
     55             "description": "Remove data accumulated on or after this date, represented in milliseconds since the epoch (accessible via the <code>getTime</code> method of the JavaScript <code>Date</code> object). If absent, defaults to 0 (which would remove all browsing data)."
     56           }
     57         }
     58       }
     59     ],
     60     "functions": [
     61       {
     62         "name": "clearData",
     63         "type": "function",
     64         "description": "Clears various types of browsing data stored in a storage partition of a <webview>.",
     65         "parameters": [
     66           {
     67             "type": "integer",
     68             "name": "instanceId",
     69             "description": "The instance ID of the guest <webview> process."
     70           },
     71           {
     72             "$ref": "RemovalOptions",
     73             "name": "options"
     74           },
     75           {
     76             "name": "dataToRemove",
     77             "$ref": "DataTypeSet",
     78             "description": "The set of data types to remove."
     79           },
     80           {
     81             "name": "callback",
     82             "type": "function",
     83             "description": "Called when deletion has completed.",
     84             "optional": true,
     85             "parameters": []
     86           }
     87         ]
     88       },
     89       {
     90         "name": "executeScript",
     91         "type": "function",
     92         "description": "Injects JavaScript code into a <webview> page.",
     93         "parameters": [
     94           {
     95             "type": "integer",
     96             "name": "instanceId",
     97             "description": "The instance ID of the guest <webview> process."
     98           },
     99           {
    100             "$ref": "tabs.InjectDetails",
    101             "name": "details",
    102             "description": "Details of the script to run."
    103           },
    104           {
    105             "type": "function",
    106             "name": "callback",
    107             "optional": true,
    108             "description": "Called after all the JavaScript has been executed.",
    109             "parameters": [
    110               {
    111                 "name": "result",
    112                 "optional": true,
    113                 "type": "array",
    114                 "items": {"type": "any", "minimum": 0},
    115                 "description": "The result of the script in every injected frame."
    116               }
    117             ]
    118           }
    119         ]
    120       },
    121       {
    122         "name": "insertCSS",
    123         "type": "function",
    124         "description": "Injects JavaScript code into a <webview> page.",
    125         "parameters": [
    126           {
    127             "type": "integer",
    128             "name": "instanceId",
    129             "description": "The instance ID of the guest <webview> process."
    130           },
    131           {
    132             "$ref": "tabs.InjectDetails",
    133             "name": "details",
    134             "description": "Details of the script to run."
    135           },
    136           {
    137             "type": "function",
    138             "name": "callback",
    139             "optional": true,
    140             "description": "Called after all the JavaScript has been executed.",
    141             "parameters": [
    142               {
    143                 "name": "result",
    144                 "optional": true,
    145                 "type": "array",
    146                 "items": {"type": "any", "minimum": 0},
    147                 "description": "The result of the script in every injected frame."
    148               }
    149             ]
    150           }
    151         ]
    152       },
    153       {
    154         "name": "captureVisibleRegion",
    155         "type": "function",
    156         "description": "Captures the visible area of the currently loaded page inside <webview>.",
    157         "parameters": [
    158           {
    159             "type": "integer",
    160             "name": "instanceId",
    161             "description": "The instance ID of the guest <webview> process."
    162           },
    163           {
    164             "$ref": "types.ImageDetails",
    165             "name": "options",
    166             "optional": true
    167           },
    168           {
    169             "type": "function", "name": "callback", "parameters": [
    170               {"type": "string", "name": "dataUrl", "description": "A data URL which encodes an image of the visible area of the captured tab. May be assigned to the 'src' property of an HTML Image element for display."}
    171             ]
    172           }
    173         ]
    174       },
    175       {
    176         "name": "go",
    177         "type": "function",
    178         "parameters": [
    179           {
    180             "type": "integer",
    181             "name": "instanceId"
    182           },
    183           {
    184             "type": "integer",
    185             "name": "relativeIndex"
    186           }
    187         ]
    188       },
    189       {
    190         "name": "overrideUserAgent",
    191         "type": "function",
    192         "parameters": [
    193           {
    194             "type": "integer",
    195             "name": "instanceId"
    196           },
    197           {
    198             "type": "string",
    199             "name": "userAgentOverride"
    200           }
    201         ]
    202       },
    203       {
    204         "name": "reload",
    205         "type": "function",
    206         "parameters": [
    207           {
    208             "type": "integer",
    209             "name": "instanceId"
    210           }
    211         ]
    212       },
    213       {
    214         "name": "setPermission",
    215         "type": "function",
    216         "parameters": [
    217           {
    218             "type": "integer",
    219             "name": "instanceId"
    220           },
    221           {
    222             "type": "integer",
    223             "name": "requestId"
    224           },
    225           {
    226             "type": "string",
    227             "name": "action",
    228             "enum": ["allow", "deny", "default"]
    229           },
    230           {
    231             "type": "string",
    232             "name": "userInput",
    233             "optional": true
    234           },
    235           {
    236             "type": "function",
    237             "name": "callback",
    238             "optional": true,
    239             "parameters": [
    240               {
    241                 "name": "allowed",
    242                 "type": "boolean"
    243               }
    244             ]
    245           }
    246         ]
    247       },
    248       {
    249         "name": "stop",
    250         "type": "function",
    251         "parameters": [
    252           {
    253             "type": "integer",
    254             "name": "instanceId"
    255           }
    256         ]
    257       },
    258       {
    259         "name": "terminate",
    260         "type": "function",
    261         "parameters": [
    262           {
    263             "type": "integer",
    264             "name": "instanceId"
    265           }
    266         ]
    267       }
    268     ]
    269   }
    270 ]
    271 
    272