OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 [ | 5 [ |
6 { | 6 { |
7 "namespace": "extension", | 7 "namespace": "extension", |
8 "nocompile": true, | 8 "nocompile": true, |
9 "dependencies": [ "tabs" ], | 9 "uses_feature_system": true, |
| 10 "extension_types": ["extension", "packaged_app", "platform_app"], |
| 11 "contexts": ["blessed_extension", "unblessed_extension", "content_script"], |
| 12 "dependencies": ["api:tabs"], |
10 "types": [ | 13 "types": [ |
11 { | 14 { |
12 "id": "MessageSender", | 15 "id": "MessageSender", |
13 "type": "object", | 16 "type": "object", |
14 "description": "An object containing information about the script contex
t that sent a message or request.", | 17 "description": "An object containing information about the script contex
t that sent a message or request.", |
15 "properties": { | 18 "properties": { |
16 "tab": {"$ref": "Tab", "optional": true, "description":"This property
will <b>only</b> be present when the connection was opened from a tab or content
script."}, | 19 "tab": {"$ref": "Tab", "optional": true, "description":"This property
will <b>only</b> be present when the connection was opened from a tab or content
script."}, |
17 "id": {"type": "string", "description": "The extension ID of the exten
sion that opened the connection."} | 20 "id": {"type": "string", "description": "The extension ID of the exten
sion that opened the connection."} |
18 } | 21 } |
19 }, | 22 }, |
(...skipping 24 matching lines...) Loading... |
44 "description": "This property will <b>only</b> be present on ports p
assed to onConnect/onConnectExternal listeners." | 47 "description": "This property will <b>only</b> be present on ports p
assed to onConnect/onConnectExternal listeners." |
45 } | 48 } |
46 }, | 49 }, |
47 "additionalProperties": { "type": "any"} | 50 "additionalProperties": { "type": "any"} |
48 } | 51 } |
49 ], | 52 ], |
50 "properties": { | 53 "properties": { |
51 "lastError": { | 54 "lastError": { |
52 "type": "object", | 55 "type": "object", |
53 "optional": true, | 56 "optional": true, |
54 "unprivileged": true, | |
55 "description": "Set for the lifetime of a callback if an ansychronous ex
tension api has resulted in an error. If no error has occured lastError will be
<var>undefined</var>.", | 57 "description": "Set for the lifetime of a callback if an ansychronous ex
tension api has resulted in an error. If no error has occured lastError will be
<var>undefined</var>.", |
56 "properties": { | 58 "properties": { |
57 "message": { "type": "string", "description": "Description of the erro
r that has taken place." } | 59 "message": { "type": "string", "description": "Description of the erro
r that has taken place." } |
58 } | 60 } |
59 }, | 61 }, |
60 "inIncognitoContext": { | 62 "inIncognitoContext": { |
61 "type": "boolean", | 63 "type": "boolean", |
62 "optional": true, | 64 "optional": true, |
63 "unprivileged": true, | |
64 "description": "True for content scripts running inside incognito tabs,
and for extension pages running inside an incognito process. The latter only app
lies to extensions with 'split' incognito_behavior." | 65 "description": "True for content scripts running inside incognito tabs,
and for extension pages running inside an incognito process. The latter only app
lies to extensions with 'split' incognito_behavior." |
65 } | 66 } |
66 }, | 67 }, |
67 "functions": [ | 68 "functions": [ |
68 { | 69 { |
69 "name": "connect", | 70 "name": "connect", |
70 "type": "function", | 71 "type": "function", |
71 "unprivileged": true, | |
72 "description": "Attempts to connect to other listeners within the extens
ion (such as the extension's background page). This is primarily useful for cont
ent scripts connecting to their extension processes. Extensions may connect to c
ontent scripts embedded in tabs via <a href='tabs.html#method-connect'><code>chr
ome.tabs.connect()</code></a>.", | 72 "description": "Attempts to connect to other listeners within the extens
ion (such as the extension's background page). This is primarily useful for cont
ent scripts connecting to their extension processes. Extensions may connect to c
ontent scripts embedded in tabs via <a href='tabs.html#method-connect'><code>chr
ome.tabs.connect()</code></a>.", |
73 "parameters": [ | 73 "parameters": [ |
74 {"type": "string", "name": "extensionId", "optional": true, "descripti
on": "The extension ID of the extension you want to connect to. If omitted, defa
ult is your own extension."}, | 74 {"type": "string", "name": "extensionId", "optional": true, "descripti
on": "The extension ID of the extension you want to connect to. If omitted, defa
ult is your own extension."}, |
75 { | 75 { |
76 "type": "object", | 76 "type": "object", |
77 "name": "connectInfo", | 77 "name": "connectInfo", |
78 "properties": { | 78 "properties": { |
79 "name": { "type": "string", "optional": true, "description": "Will
be passed into onConnect for extension processes that are listening for the con
nection event." } | 79 "name": { "type": "string", "optional": true, "description": "Will
be passed into onConnect for extension processes that are listening for the con
nection event." } |
80 }, | 80 }, |
81 "optional": true | 81 "optional": true |
82 } | 82 } |
83 ], | 83 ], |
84 "returns": { | 84 "returns": { |
85 "$ref": "Port", | 85 "$ref": "Port", |
86 "description": "Port through which messages can be sent and received w
ith the extension. The port's <a href='extension.html#type-Port'>onDisconnect</a
> event is fired if extension does not exist. " | 86 "description": "Port through which messages can be sent and received w
ith the extension. The port's <a href='extension.html#type-Port'>onDisconnect</a
> event is fired if extension does not exist. " |
87 } | 87 } |
88 }, | 88 }, |
89 { | 89 { |
90 "name": "sendRequest", | 90 "name": "sendRequest", |
91 "nodoc": true, | 91 "nodoc": true, |
92 "type": "function", | 92 "type": "function", |
93 "allowAmbiguousOptionalArguments": true, | 93 "allowAmbiguousOptionalArguments": true, |
94 "unprivileged": true, | |
95 "description": "Deprecated: Please use sendMessage.", | 94 "description": "Deprecated: Please use sendMessage.", |
96 "parameters": [ | 95 "parameters": [ |
97 {"type": "string", "name": "extensionId", "optional": true, "descripti
on": "The extension ID of the extension you want to connect to. If omitted, defa
ult is your own extension."}, | 96 {"type": "string", "name": "extensionId", "optional": true, "descripti
on": "The extension ID of the extension you want to connect to. If omitted, defa
ult is your own extension."}, |
98 { "type": "any", "name": "request" }, | 97 { "type": "any", "name": "request" }, |
99 { | 98 { |
100 "type": "function", | 99 "type": "function", |
101 "name": "responseCallback", | 100 "name": "responseCallback", |
102 "optional": true, | 101 "optional": true, |
103 "parameters": [ | 102 "parameters": [ |
104 { | 103 { |
105 "name": "response", | 104 "name": "response", |
106 "type": "any", | 105 "type": "any", |
107 "description": "The JSON response object sent by the handler of
the request. If an error occurs while connecting to the extension, the callback
will be called with no arguments and <a href='extension.html#property-lastError'
>chrome.extension.lastError</a> will be set to the error message." | 106 "description": "The JSON response object sent by the handler of
the request. If an error occurs while connecting to the extension, the callback
will be called with no arguments and <a href='extension.html#property-lastError'
>chrome.extension.lastError</a> will be set to the error message." |
108 } | 107 } |
109 ] | 108 ] |
110 } | 109 } |
111 ] | 110 ] |
112 }, | 111 }, |
113 { | 112 { |
114 "name": "sendMessage", | 113 "name": "sendMessage", |
115 "type": "function", | 114 "type": "function", |
116 "allowAmbiguousOptionalArguments": true, | 115 "allowAmbiguousOptionalArguments": true, |
117 "unprivileged": true, | |
118 "description": "Sends a single message to other listeners within the ext
ension. Similar to chrome.extension.connect, but only sends a single message wit
h an optional response. The <a href='extension.html#event-onMessage'>chrome.exte
nsion.onMessage</a> event is fired in each page of the extension.", | 116 "description": "Sends a single message to other listeners within the ext
ension. Similar to chrome.extension.connect, but only sends a single message wit
h an optional response. The <a href='extension.html#event-onMessage'>chrome.exte
nsion.onMessage</a> event is fired in each page of the extension.", |
119 "parameters": [ | 117 "parameters": [ |
120 {"type": "string", "name": "extensionId", "optional": true, "descripti
on": "The extension ID of the extension you want to connect to. If omitted, defa
ult is your own extension."}, | 118 {"type": "string", "name": "extensionId", "optional": true, "descripti
on": "The extension ID of the extension you want to connect to. If omitted, defa
ult is your own extension."}, |
121 { "type": "any", "name": "message" }, | 119 { "type": "any", "name": "message" }, |
122 { | 120 { |
123 "type": "function", | 121 "type": "function", |
124 "name": "responseCallback", | 122 "name": "responseCallback", |
125 "optional": true, | 123 "optional": true, |
126 "parameters": [ | 124 "parameters": [ |
127 { | 125 { |
128 "name": "response", | 126 "name": "response", |
129 "type": "any", | 127 "type": "any", |
130 "description": "The JSON response object sent by the handler of
the message. If an error occurs while connecting to the extension, the callback
will be called with no arguments and <a href='extension.html#property-lastError'
>chrome.extension.lastError</a> will be set to the error message." | 128 "description": "The JSON response object sent by the handler of
the message. If an error occurs while connecting to the extension, the callback
will be called with no arguments and <a href='extension.html#property-lastError'
>chrome.extension.lastError</a> will be set to the error message." |
131 } | 129 } |
132 ] | 130 ] |
133 } | 131 } |
134 ] | 132 ] |
135 }, | 133 }, |
136 { | 134 { |
137 "name": "getURL", | 135 "name": "getURL", |
138 "type": "function", | 136 "type": "function", |
139 "unprivileged": true, | |
140 "description": "Converts a relative path within an extension install dir
ectory to a fully-qualified URL.", | 137 "description": "Converts a relative path within an extension install dir
ectory to a fully-qualified URL.", |
141 "parameters": [ | 138 "parameters": [ |
142 { | 139 { |
143 "type": "string", | 140 "type": "string", |
144 "name": "path", | 141 "name": "path", |
145 "description": "A path to a resource within an extension expressed r
elative to its install directory." | 142 "description": "A path to a resource within an extension expressed r
elative to its install directory." |
146 } | 143 } |
147 ], | 144 ], |
148 "returns": { | 145 "returns": { |
149 "type": "string", | 146 "type": "string", |
150 "description": "The fully-qualified URL to the resource." | 147 "description": "The fully-qualified URL to the resource." |
151 } | 148 } |
152 }, | 149 }, |
153 { | 150 { |
154 "name": "getViews", | 151 "name": "getViews", |
155 "type": "function", | 152 "type": "function", |
| 153 "contexts": ["blessed_extension"], |
156 "description": "Returns an array of the JavaScript 'window' objects for
each of the pages running inside the current extension.", | 154 "description": "Returns an array of the JavaScript 'window' objects for
each of the pages running inside the current extension.", |
157 "parameters": [ | 155 "parameters": [ |
158 { | 156 { |
159 "type": "object", | 157 "type": "object", |
160 "name": "fetchProperties", | 158 "name": "fetchProperties", |
161 "optional": true, | 159 "optional": true, |
162 "properties": { | 160 "properties": { |
163 "type": { | 161 "type": { |
164 "type": "string", | 162 "type": "string", |
165 "enum": ["tab", "infobar", "notification", "popup"], | 163 "enum": ["tab", "infobar", "notification", "popup"], |
166 "optional": true, | 164 "optional": true, |
167 "description": "The type of view to get. If omitted, returns all
views (including background pages and tabs). Valid values: 'tab', 'infobar', 'n
otification', 'popup'." | 165 "description": "The type of view to get. If omitted, returns all
views (including background pages and tabs). Valid values: 'tab', 'infobar', 'n
otification', 'popup'." |
168 }, | 166 }, |
169 "windowId": { | 167 "windowId": { |
170 "type": "integer", | 168 "type": "integer", |
171 "optional": true, | 169 "optional": true, |
172 "description": "The window to restrict the search to. If omitted
, returns all views." | 170 "description": "The window to restrict the search to. If omitted
, returns all views." |
173 } | 171 } |
174 } | 172 } |
175 } | 173 } |
176 ], | 174 ], |
177 "returns": { | 175 "returns": { |
178 "type": "array", | 176 "type": "array", |
179 "description": "Array of global objects", | 177 "description": "Array of global objects", |
180 "items": { "type": "object", "isInstanceOf": "global", "additionalProp
erties": { "type": "any" } } | 178 "items": { "type": "object", "isInstanceOf": "global", "additionalProp
erties": { "type": "any" } } |
181 } | 179 } |
182 }, | 180 }, |
183 { | 181 { |
184 "name": "getBackgroundPage", | 182 "name": "getBackgroundPage", |
| 183 "contexts": ["blessed_extension"], |
185 "type": "function", | 184 "type": "function", |
186 "description": "Returns the JavaScript 'window' object for the backgroun
d page running inside the current extension. Returns null if the extension has n
o background page.", | 185 "description": "Returns the JavaScript 'window' object for the backgroun
d page running inside the current extension. Returns null if the extension has n
o background page.", |
187 "parameters": [], | 186 "parameters": [], |
188 "returns": { | 187 "returns": { |
189 "type": "object", "isInstanceOf": "global", "additionalProperties": {
"type": "any" } | 188 "type": "object", "isInstanceOf": "global", "additionalProperties": {
"type": "any" } |
190 } | 189 } |
191 }, | 190 }, |
192 { | 191 { |
193 "name": "getExtensionTabs", | 192 "name": "getExtensionTabs", |
| 193 "contexts": ["blessed_extension"], |
194 "nodoc": true, | 194 "nodoc": true, |
195 "type": "function", | 195 "type": "function", |
196 "maximumManifestVersion": 1, | 196 "maximumManifestVersion": 1, |
197 "description": "Deprecated. Please use getViews({type: 'TAB'}). Returns
an array of the JavaScript 'window' objects for each of the tabs running inside
the current extension. If windowId is specified, returns only the 'window' objec
ts of tabs attached to the specified window.", | 197 "description": "Deprecated. Please use getViews({type: 'TAB'}). Returns
an array of the JavaScript 'window' objects for each of the tabs running inside
the current extension. If windowId is specified, returns only the 'window' objec
ts of tabs attached to the specified window.", |
198 "parameters": [ | 198 "parameters": [ |
199 {"type": "integer", "name": "windowId", "optional": true} | 199 {"type": "integer", "name": "windowId", "optional": true} |
200 ], | 200 ], |
201 "returns": { | 201 "returns": { |
202 "type": "array", | 202 "type": "array", |
203 "description": "Array of global window objects", | 203 "description": "Array of global window objects", |
204 "items": { "type": "object", "isInstanceOf": "global", "additionalProp
erties": { "type": "any" } } | 204 "items": { "type": "object", "isInstanceOf": "global", "additionalProp
erties": { "type": "any" } } |
205 } | 205 } |
206 }, | 206 }, |
207 { | 207 { |
208 "name": "isAllowedIncognitoAccess", | 208 "name": "isAllowedIncognitoAccess", |
| 209 "contexts": ["blessed_extension"], |
209 "type": "function", | 210 "type": "function", |
210 "description": "Retrieves the state of the extension's access to Incogni
to-mode (as determined by the user-controlled 'Allowed in Incognito' checkbox.", | 211 "description": "Retrieves the state of the extension's access to Incogni
to-mode (as determined by the user-controlled 'Allowed in Incognito' checkbox.", |
211 "min_version": "12.0.706.0", | 212 "min_version": "12.0.706.0", |
212 "parameters": [ | 213 "parameters": [ |
213 { | 214 { |
214 "type": "function", | 215 "type": "function", |
215 "name": "callback", | 216 "name": "callback", |
216 "parameters": [ | 217 "parameters": [ |
217 { | 218 { |
218 "name": "isAllowedAccess", | 219 "name": "isAllowedAccess", |
219 "type": "boolean", | 220 "type": "boolean", |
220 "description": "True if the extension has access to Incognito mo
de, false otherwise." | 221 "description": "True if the extension has access to Incognito mo
de, false otherwise." |
221 } | 222 } |
222 ] | 223 ] |
223 } | 224 } |
224 ] | 225 ] |
225 }, | 226 }, |
226 { | 227 { |
227 "name": "isAllowedFileSchemeAccess", | 228 "name": "isAllowedFileSchemeAccess", |
| 229 "contexts": ["blessed_extension"], |
228 "type": "function", | 230 "type": "function", |
229 "description": "Retrieves the state of the extension's access to the 'fi
le://' scheme (as determined by the user-controlled 'Allow access to File URLs'
checkbox.", | 231 "description": "Retrieves the state of the extension's access to the 'fi
le://' scheme (as determined by the user-controlled 'Allow access to File URLs'
checkbox.", |
230 "min_version": "12.0.706.0", | 232 "min_version": "12.0.706.0", |
231 "parameters": [ | 233 "parameters": [ |
232 { | 234 { |
233 "type": "function", | 235 "type": "function", |
234 "name": "callback", | 236 "name": "callback", |
235 "parameters": [ | 237 "parameters": [ |
236 { | 238 { |
237 "name": "isAllowedAccess", | 239 "name": "isAllowedAccess", |
238 "type": "boolean", | 240 "type": "boolean", |
239 "description": "True if the extension can access the 'file://' s
cheme, false otherwise." | 241 "description": "True if the extension can access the 'file://' s
cheme, false otherwise." |
240 } | 242 } |
241 ] | 243 ] |
242 } | 244 } |
243 ] | 245 ] |
244 }, | 246 }, |
245 { | 247 { |
246 "name": "setUpdateUrlData", | 248 "name": "setUpdateUrlData", |
| 249 "contexts": ["blessed_extension"], |
247 "type": "function", | 250 "type": "function", |
248 "description": "Sets the value of the ap CGI parameter used in the exten
sion's update URL. This value is ignored for extensions that are hosted in the
Chrome Extension Gallery.", | 251 "description": "Sets the value of the ap CGI parameter used in the exten
sion's update URL. This value is ignored for extensions that are hosted in the
Chrome Extension Gallery.", |
249 "parameters": [ | 252 "parameters": [ |
250 {"type": "string", "name": "data", "maxLength": 1024} | 253 {"type": "string", "name": "data", "maxLength": 1024} |
251 ] | 254 ] |
252 } | 255 } |
253 ], | 256 ], |
254 "events": [ | 257 "events": [ |
255 { | 258 { |
256 "name": "onConnect", | 259 "name": "onConnect", |
257 "type": "function", | 260 "type": "function", |
258 "unprivileged": true, | |
259 "anonymous": true, | 261 "anonymous": true, |
260 "description": "Fired when a connection is made from either an extension
process or a content script.", | 262 "description": "Fired when a connection is made from either an extension
process or a content script.", |
261 "parameters": [ | 263 "parameters": [ |
262 {"$ref": "Port", "name": "port"} | 264 {"$ref": "Port", "name": "port"} |
263 ] | 265 ] |
264 }, | 266 }, |
265 { | 267 { |
266 "name": "onConnectExternal", | 268 "name": "onConnectExternal", |
| 269 "contexts": ["blessed_extension"], |
267 "type": "function", | 270 "type": "function", |
268 "anonymous": true, | 271 "anonymous": true, |
269 "description": "Fired when a connection is made from another extension."
, | 272 "description": "Fired when a connection is made from another extension."
, |
270 "parameters": [ | 273 "parameters": [ |
271 {"$ref": "Port", "name": "port"} | 274 {"$ref": "Port", "name": "port"} |
272 ] | 275 ] |
273 }, | 276 }, |
274 { | 277 { |
275 "name": "onRequest", | 278 "name": "onRequest", |
276 "nodoc": true, | 279 "nodoc": true, |
277 "type": "function", | 280 "type": "function", |
278 "anonymous": true, | 281 "anonymous": true, |
279 "unprivileged": true, | |
280 "description": "Deprecated: please use onMessage.", | 282 "description": "Deprecated: please use onMessage.", |
281 "parameters": [ | 283 "parameters": [ |
282 {"name": "request", "type": "any", "description": "The request sent by
the calling script."}, | 284 {"name": "request", "type": "any", "description": "The request sent by
the calling script."}, |
283 {"name": "sender", "$ref": "MessageSender" }, | 285 {"name": "sender", "$ref": "MessageSender" }, |
284 {"name": "sendResponse", "type": "function", "description": "Function
to call (at most once) when you have a response. The argument should be any JSON
-ifiable object, or undefined if there is no response. If you have more than one
<code>onRequest</code> listener in the same document, then only one may send a
response." } | 286 {"name": "sendResponse", "type": "function", "description": "Function
to call (at most once) when you have a response. The argument should be any JSON
-ifiable object, or undefined if there is no response. If you have more than one
<code>onRequest</code> listener in the same document, then only one may send a
response." } |
285 ] | 287 ] |
286 }, | 288 }, |
287 { | 289 { |
288 "name": "onRequestExternal", | 290 "name": "onRequestExternal", |
| 291 "contexts": ["blessed_extension"], |
289 "nodoc": true, | 292 "nodoc": true, |
290 "type": "function", | 293 "type": "function", |
291 "anonymous": true, | 294 "anonymous": true, |
292 "description": "Deprecated: please use onMessageExternal.", | 295 "description": "Deprecated: please use onMessageExternal.", |
293 "parameters": [ | 296 "parameters": [ |
294 {"name": "request", "type": "any", "description": "The request sent by
the calling script."}, | 297 {"name": "request", "type": "any", "description": "The request sent by
the calling script."}, |
295 {"name": "sender", "$ref": "MessageSender" }, | 298 {"name": "sender", "$ref": "MessageSender" }, |
296 {"name": "sendResponse", "type": "function", "description": "Function
to call when you have a response. The argument should be any JSON-ifiable object
, or undefined if there is no response." } | 299 {"name": "sendResponse", "type": "function", "description": "Function
to call when you have a response. The argument should be any JSON-ifiable object
, or undefined if there is no response." } |
297 ] | 300 ] |
298 }, | 301 }, |
299 { | 302 { |
300 "name": "onMessage", | 303 "name": "onMessage", |
301 "type": "function", | 304 "type": "function", |
302 "anonymous": true, | 305 "anonymous": true, |
303 "unprivileged": true, | |
304 "description": "Fired when a message is sent from either an extension pr
ocess or a content script.", | 306 "description": "Fired when a message is sent from either an extension pr
ocess or a content script.", |
305 "parameters": [ | 307 "parameters": [ |
306 { | 308 { |
307 "name": "details", | 309 "name": "details", |
308 "type": "object", | 310 "type": "object", |
309 "properties": { | 311 "properties": { |
310 "message": { "type": "any", "description": "The message sent by th
e calling script."}, | 312 "message": { "type": "any", "description": "The message sent by th
e calling script."}, |
311 "sender": { "$ref": "MessageSender" }, | 313 "sender": { "$ref": "MessageSender" }, |
312 "sendResponse": { "type": "function", "description": "Function to
call (at most once) when you have a response. The argument should be any JSON-if
iable object. If you have more than one <code>onMessage</code> listener in the s
ame document, then only one may send a response. This function becomes invalid w
hen the event listener returns, unless you return true from the event listener t
o indicate you wish to send a response asynchronously (this will keep the messag
e channel open to the other end until <code>sendResponse</code> is called)." } | 314 "sendResponse": { "type": "function", "description": "Function to
call (at most once) when you have a response. The argument should be any JSON-if
iable object. If you have more than one <code>onMessage</code> listener in the s
ame document, then only one may send a response. This function becomes invalid w
hen the event listener returns, unless you return true from the event listener t
o indicate you wish to send a response asynchronously (this will keep the messag
e channel open to the other end until <code>sendResponse</code> is called)." } |
313 } | 315 } |
314 } | 316 } |
315 ], | 317 ], |
316 "returns": { | 318 "returns": { |
317 "type": "boolean", | 319 "type": "boolean", |
318 "optional": "true", | 320 "optional": "true", |
319 "description": "Return true from the event listener if you wish to cal
l <code>sendResponse</code> after the event listener returns." | 321 "description": "Return true from the event listener if you wish to cal
l <code>sendResponse</code> after the event listener returns." |
320 } | 322 } |
321 }, | 323 }, |
322 { | 324 { |
323 "name": "onMessageExternal", | 325 "name": "onMessageExternal", |
| 326 "contexts": ["blessed_extension"], |
324 "type": "function", | 327 "type": "function", |
325 "anonymous": true, | 328 "anonymous": true, |
326 "description": "Fired when a message is sent from another extension.", | 329 "description": "Fired when a message is sent from another extension.", |
327 "parameters": [ | 330 "parameters": [ |
328 { | 331 { |
329 "name": "details", | 332 "name": "details", |
330 "type": "object", | 333 "type": "object", |
331 "properties": { | 334 "properties": { |
332 "message": { "type": "any", "description": "The message sent by th
e calling script."}, | 335 "message": { "type": "any", "description": "The message sent by th
e calling script."}, |
333 "sender": { "$ref": "MessageSender" }, | 336 "sender": { "$ref": "MessageSender" }, |
334 "sendResponse": { "type": "function", "description": "Function to
call (at most once) when you have a response. The argument should be any JSON-if
iable object. If you have more than one <code>onMessage</code> listener in the s
ame document, then only one may send a response. This function becomes invalid w
hen the event listener returns, unless you return true from the event listener t
o indicate you wish to send a response asynchronously (this will keep the messag
e channel open to the other end until <code>sendResponse</code> is called)." } | 337 "sendResponse": { "type": "function", "description": "Function to
call (at most once) when you have a response. The argument should be any JSON-if
iable object. If you have more than one <code>onMessage</code> listener in the s
ame document, then only one may send a response. This function becomes invalid w
hen the event listener returns, unless you return true from the event listener t
o indicate you wish to send a response asynchronously (this will keep the messag
e channel open to the other end until <code>sendResponse</code> is called)." } |
335 } | 338 } |
336 } | 339 } |
337 ], | 340 ], |
338 "returns": { | 341 "returns": { |
339 "type": "boolean", | 342 "type": "boolean", |
340 "optional": "true", | 343 "optional": "true", |
341 "description": "Return true from the event listener if you wish to cal
l <code>sendResponse</code> after the event listener returns." | 344 "description": "Return true from the event listener if you wish to cal
l <code>sendResponse</code> after the event listener returns." |
342 } | 345 } |
343 } | 346 } |
344 ] | 347 ] |
345 } | 348 } |
346 ] | 349 ] |
OLD | NEW |