OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 // Use the <code>chrome.app.runtime</code> API to manage the app lifecycle. | 5 // Use the <code>chrome.app.runtime</code> API to manage the app lifecycle. |
6 // The app runtime manages app installation, controls the event page, and can | 6 // The app runtime manages app installation, controls the event page, and can |
7 // shut down the app at anytime. | 7 // shut down the app at anytime. |
8 namespace app.runtime { | 8 namespace app.runtime { |
9 | 9 |
10 [inline_doc] dictionary LaunchItem { | 10 [inline_doc] dictionary LaunchItem { |
11 // FileEntry for the file. | 11 // FileEntry for the file. |
12 [instanceOf=FileEntry] object entry; | 12 [instanceOf=FileEntry] object entry; |
13 | 13 |
14 // The MIME type of the file. | 14 // The MIME type of the file. |
15 DOMString type; | 15 DOMString type; |
16 }; | 16 }; |
17 | 17 |
18 // Enumeration of app launch sources. | |
19 enum LaunchSource { | |
20 app_launcher, | |
21 new_tab_page, | |
22 restart, | |
23 reload, | |
24 file_handler, | |
25 url_handler, | |
26 | |
27 // App-specific | |
benwells
2014/10/21 03:51:58
Lets try and make these non-app specific. How abou
cylee1
2014/10/21 13:41:17
Done.
| |
28 gethelp_system_tray, | |
29 gethelp_about_page, | |
30 gethelp_keyboard | |
31 }; | |
32 | |
18 // Optional data for the launch. Either <code>items</code>, or | 33 // Optional data for the launch. Either <code>items</code>, or |
19 // the pair (<code>url, referrerUrl</code>) can be present for any given | 34 // the pair (<code>url, referrerUrl</code>) can be present for any given |
20 // launch. | 35 // launch. |
21 [inline_doc] dictionary LaunchData { | 36 [inline_doc] dictionary LaunchData { |
22 // The ID of the file or URL handler that the app is being invoked with. | 37 // The ID of the file or URL handler that the app is being invoked with. |
23 // Handler IDs are the top-level keys in the <code>file_handlers</code> | 38 // Handler IDs are the top-level keys in the <code>file_handlers</code> |
24 // and/or <code>url_handlers</code> dictionaries in the manifest. | 39 // and/or <code>url_handlers</code> dictionaries in the manifest. |
25 DOMString? id; | 40 DOMString? id; |
26 | 41 |
27 // The file entries for the <code>onLaunched</code> event triggered by a | 42 // The file entries for the <code>onLaunched</code> event triggered by a |
28 // matching file handler in the <code>file_handlers</code> manifest key. | 43 // matching file handler in the <code>file_handlers</code> manifest key. |
29 LaunchItem[]? items; | 44 LaunchItem[]? items; |
30 | 45 |
31 // The URL for the <code>onLaunched</code> event triggered by a matching | 46 // The URL for the <code>onLaunched</code> event triggered by a matching |
32 // URL handler in the <code>url_handlers</code> manifest key. | 47 // URL handler in the <code>url_handlers</code> manifest key. |
33 DOMString? url; | 48 DOMString? url; |
34 | 49 |
35 // The referrer URL for the <code>onLaunched</code> event triggered by a | 50 // The referrer URL for the <code>onLaunched</code> event triggered by a |
36 // matching URL handler in the <code>url_handlers</code> manifest key. | 51 // matching URL handler in the <code>url_handlers</code> manifest key. |
37 DOMString? referrerUrl; | 52 DOMString? referrerUrl; |
38 | 53 |
39 // Whether the app is being launched in a <a | 54 // Whether the app is being launched in a <a |
40 // href="https://support.google.com/chromebook/answer/3134673">Chrome OS | 55 // href="https://support.google.com/chromebook/answer/3134673">Chrome OS |
41 // kiosk session</a>. | 56 // kiosk session</a>. |
42 boolean? isKioskSession; | 57 boolean? isKioskSession; |
58 | |
59 // Where the app is launched from. | |
60 LaunchSource? source; | |
43 }; | 61 }; |
44 | 62 |
45 // This object specifies details and operations to perform on the embedding | 63 // This object specifies details and operations to perform on the embedding |
46 // request. The app to be embedded can make a decision on whether or not to | 64 // request. The app to be embedded can make a decision on whether or not to |
47 // allow the embedding and what to embed based on the embedder making the | 65 // allow the embedding and what to embed based on the embedder making the |
48 // request. | 66 // request. |
49 dictionary EmbedRequest { | 67 dictionary EmbedRequest { |
50 DOMString embedderId; | 68 DOMString embedderId; |
51 | 69 |
52 // Optional developer specified data that the app to be embedded can use | 70 // Optional developer specified data that the app to be embedded can use |
(...skipping 15 matching lines...) Expand all Loading... | |
68 static void onEmbedRequested(EmbedRequest request); | 86 static void onEmbedRequested(EmbedRequest request); |
69 | 87 |
70 // Fired when an app is launched from the launcher. | 88 // Fired when an app is launched from the launcher. |
71 static void onLaunched(optional LaunchData launchData); | 89 static void onLaunched(optional LaunchData launchData); |
72 | 90 |
73 // Fired at Chrome startup to apps that were running when Chrome last shut | 91 // Fired at Chrome startup to apps that were running when Chrome last shut |
74 // down. | 92 // down. |
75 static void onRestarted(); | 93 static void onRestarted(); |
76 }; | 94 }; |
77 }; | 95 }; |
OLD | NEW |