Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / chrome / common / extensions / api / manifest_types.json
1 // Copyright 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 // The type schemas for structured manifest items. Not actually a callable API.
6
7 [
8   {
9     "namespace": "manifestTypes",
10     "description": "Schemas for structured manifest entries",
11     "compiler_options": {
12       "generate_error_messages": true
13     },
14     "types": [
15       {
16         "id": "ChromeSettingsOverrides",
17         "type": "object",
18         "description": "Chrome settings which can be overriden by an extension.",
19         "properties": {
20           "homepage": {
21             "description": "New value for the homepage.",
22             "optional": true,
23             "type": "string"
24           },
25           "search_provider": {
26             "type": "object",
27             "description": "A search engine",
28             "optional": true,
29             "properties": {
30               "name": {
31                 "type": "string",
32                 "optional": true,
33                 "description": "Name of the search engine displayed to user. This may only be ommitted if <em>prepopulated_id</em> is set."
34               },
35               "keyword": {
36                 "type": "string",
37                 "optional": true,
38                 "description": "Omnibox keyword for the search engine. This may only be ommitted if <em>prepopulated_id</em> is set."
39               },
40               "favicon_url": {
41                 "type": "string",
42                 "optional": true,
43                 "description": "An icon URL for the search engine. This may only be ommitted if <em>prepopulated_id</em> is set."
44               },
45               "search_url": {
46                 "type": "string",
47                 "description": "An search URL used by the search engine."
48               },
49               "encoding": {
50                 "type": "string",
51                 "optional": true,
52                 "description": "Encoding of the search term. This may only be ommitted if <em>prepopulated_id</em> is set."
53               },
54               "suggest_url": {
55                 "type": "string",
56                 "optional": true,
57                 "description": "If omitted, this engine does not support suggestions."
58               },
59               "instant_url": {
60                 "type": "string",
61                 "optional": true,
62                 "description": "If omitted, this engine does not support instant."
63               },
64               "image_url": {
65                 "type": "string",
66                 "optional": true,
67                 "description": "If omitted, this engine does not support image search."
68               },
69               "search_url_post_params": {
70                 "type": "string",
71                 "optional": true,
72                 "description": "The string of post parameters to search_url"
73               },
74               "suggest_url_post_params": {
75                 "type": "string",
76                 "optional": true,
77                 "description": "The string of post parameters to suggest_url"
78               },
79               "instant_url_post_params": {
80                 "type": "string",
81                 "optional": true,
82                 "description": "The string of post parameters to instant_url"
83               },
84               "image_url_post_params": {
85                 "type": "string",
86                 "optional": true,
87                 "description": "The string of post parameters to image_url"
88               },
89               "alternate_urls": {
90                 "type": "array",
91                 "items": { "type": "string" },
92                 "optional": true,
93                 "description": "A list of URL patterns that can be used, in addition to |search_url|."
94               },
95               "prepopulated_id": {
96                 "type": "integer",
97                 "optional": true,
98                 "description": "An ID of the built-in search engine in Chrome."
99               },
100               "is_default": {
101                 "type": "boolean",
102                 "description": "Specifies if the search provider should be default."
103               }
104             }
105           },
106           "startup_pages": {
107             "description": "An array of length one containing a URL to be used as the startup page.",
108             "optional": true,
109             "type": "array",
110             "items": {"type": "string"}
111           }
112         }
113       },
114       {
115         "id": "ChromeUIOverrides",
116         "type": "object",
117         "description": "Chrome user interface features which can be overriden by an extension.",
118         "properties": {
119           "bookmarks_ui": {
120             "type": "object",
121             "description": "Settings to permit bookmarks user interface customization by extensions.",
122             "optional": true,
123             "properties": {
124               "remove_button": {
125                 "type": "boolean",
126                 "description": "If <code>true</code>, the built-in bookmark button will be removed from the user interface.",
127                 "optional": true
128               },
129               "remove_bookmark_shortcut": {
130                 "type": "boolean",
131                 "description": "If <code>true</code>, the built-in \"Bookmark this page...\" shortcut key is removed and the extension is permitted to override the shortcut by binding it in the commands section of the manifest.",
132                 "optional": true
133               },
134               "remove_bookmark_open_pages_shortcut": {
135                 "type": "boolean",
136                 "nodoc": true,
137                 "description": "[Private] If <code>true</code>, the built-in \"Bookmark open pages...\" shortcut key and corresponding menu item is removed.",
138                 "optional": true
139               }
140             }
141           }
142         }
143       },
144       {
145         "id": "automation",
146         "description": "This API provides programmatic access to the user interface elements of Chrome. This includes everything in the web view, and optionally Chrome's full user interface.",
147         "choices": [
148           { "type": "boolean",
149             "description": "If true, enables non-interactive access to the automation tree only for the sites for which the extension has a <a href='https://developer.chrome.com/extensions/declare_permissions#host-permissions'>host permission</a> or <a href='https://developer.chrome.com/extensions/declare_permissions#activeTab'>activeTab permission</a>)." },
150           { "type": "object",
151             "properties": {
152               "desktop": {
153                 "description": "Whether to request permission to the whole ChromeOS desktop. If granted, this gives the extension access to every aspect of the desktop, and every site and app. If this permission is requested, all other permissions are implicitly included and do not need to be requested separately.",
154                 "optional": true,
155                 "type": "boolean"
156               },
157               "matches": {
158                 "description": "A list of URL patterns for which this extension may request an automation tree. If not specified, automation permission will be granted for the sites for which the extension has a <a href='https://developer.chrome.com/extensions/declare_permissions#host-permissions'>host permission</a> or <a href='https://developer.chrome.com/extensions/declare_permissions#activeTab'>activeTab permission</a>).",
159                 "optional": true,
160                 "type": "array",
161                 "items": { "type": "string" }
162               },
163               "interact": {
164                 "description": "Whether the extension is allowed interactive access (true) or read-only access (false; default) to the automation tree.",
165                 "optional": true,
166                 "type": "boolean"
167               }
168             }
169           }
170         ]
171       }
172     ]
173   }
174 ]