- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / common / extensions / api / app_runtime.idl
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 // 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
7 // shut down the app at anytime.
8 namespace app.runtime {
9
10   [inline_doc] dictionary LaunchItem {
11     // FileEntry for the file.
12     [instanceOf=FileEntry] object entry;
13
14     // The MIME type of the file.
15     DOMString type;
16   };
17
18   // Optional data for the launch. Either <code>items</code>, or
19   // the pair (<code>url, referrerUrl</code>) can be present for any given
20   // launch.
21   [inline_doc] dictionary LaunchData {
22     // 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>
24     // and/or <code>url_handlers</code> dictionaries in the manifest.
25     DOMString? id;
26
27     // The file entries for the <code>onLaunched</code> event triggered by a
28     // matching file handler in the <code>file_handlers</code> manifest key.
29     LaunchItem[]? items;
30
31     // The URL for the <code>onLaunched</code> event triggered by a matching
32     // URL handler in the <code>url_handlers</code> manifest key.
33     DOMString? url;
34
35     // The referrer URL for the <code>onLaunched</code> event triggered by a
36     // matching URL handler in the <code>url_handlers</code> manifest key.
37     DOMString? referrerUrl;
38
39     // Whether the app is being launched in a <a
40     // href="https://support.google.com/chromebook/answer/3134673">Chrome OS
41     // kiosk session</a>.
42     boolean? isKioskSession;
43   };
44
45   interface Events {
46     // Fired when an app is launched from the launcher.
47     static void onLaunched(optional LaunchData launchData);
48
49     // Fired at Chrome startup to apps that were running when Chrome last shut
50     // down.
51     static void onRestarted();
52   };
53 };