Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / chrome / common / extensions / api / manifest_types.json
index d2e1af6..94544ec 100644 (file)
     },
     "types": [
       {
-        "id": "ExternallyConnectable",
-        "type": "object",
-        // Note: description commented out because externally_connectable.html
-        // already describes it, and the repetition looks odd.
-        // "description": "The <code>externally_connectable</code> manifest property declares which extensions, apps, and web pages can connect to your extension via $(ref:runtime.connect) and $(ref:runtime.sendMessage).",
-        "properties": {
-          "ids": {
-            "description": "<p>The IDs of extensions or apps that are allowed to connect. If left empty or unspecified, no extensions or apps can connect.</p><p>The wildcard <code>\"*\"</code> will allow all extensions and apps to connect.</p>",
-            "optional": true,
-            "type": "array",
-            "items": {"type": "string"}
-          },
-          "matches": {
-            "description": "<p>The URL patterns for <em>web pages</em> that are allowed to connect. <em>This does not affect content scripts.</em> If left empty or unspecified, no web pages can connect.</p><p>Patterns cannot include wildcard domains nor subdomains of <a href=\"http://publicsuffix.org/list/\">(effective) top level domains</a>; <code>*://google.com/*</code> and <code>http://*.chromium.org/*</code> are valid, while <code>&lt;all_urls&gt;</code>, <code>http://*/*</code>, <code>*://*.com/*</code>, and even <code>http://*.appspot.com/*</code> are not.</p>",
-            "optional": true,
-            "type": "array",
-            "items": {"type": "string"}
-          },
-          "accepts_tls_channel_id": {
-            "description": "If <code>true</code>, messages sent via $(ref:runtime.connect) or $(ref:runtime.sendMessage) will set $(ref:runtime.MessageSender.tlsChannelId) if those methods request it to be. If <code>false</code>, $(ref:runtime.MessageSender.tlsChannelId) will never be set under any circumstance.",
-            "optional": true,
-            "type": "boolean"
-          }
-        }
-      },
-      {
         "id": "ChromeSettingsOverrides",
         "type": "object",
         "description": "Chrome settings which can be overriden by an extension.",
             }
           },
           "startup_pages": {
-            "description": "URLs to be added to the list of startup pages.",
+            "description": "An array of length one containing a URL to be used as the startup page.",
             "optional": true,
             "type": "array",
             "items": {"type": "string"}
         }
       },
       {
-        "id": "SocketHostPatterns",
-        "description": "<p>A single string or a list of strings representing host:port patterns.</p>",
-        "choices": [
-          { "type": "string" },
-          { "type": "array", "items": { "type": "string" } }
-        ]
-      },
-      {
-        "id": "sockets",
-        "type": "object",
-        "description": "The <code>sockets</code> manifest property declares which sockets operations an app can issue.",
-        "properties": {
-          "udp": {
-            "description": "The <code>udp</code> manifest property declares which sockets.udp operations an app can issue.",
-            "optional": true,
-            "type": "object",
-            "properties": {
-              "bind": {
-                "description": "<p>The host:port pattern for <code>bind</code> operations.</p>",
-                "optional": true,
-                "$ref": "SocketHostPatterns"
-              },
-              "send": {
-                "description": "<p>The host:port pattern for <code>send</code> operations.</p>",
-                "optional": true,
-                "$ref": "SocketHostPatterns"
-              },
-              "multicastMembership": {
-                "description": "<p>The host:port pattern for <code>joinGroup</code> operations.</p>",
-                "optional": true,
-                "$ref": "SocketHostPatterns"
-              }
-            }
-          },
-          "tcp": {
-            "description": "The <code>tcp</code> manifest property declares which sockets.tcp operations an app can issue.",
-            "optional": true,
-            "type": "object",
-            "properties": {
-              "connect": {
-                "description": "<p>The host:port pattern for <code>connect</code> operations.</p>",
-                "optional": true,
-                "$ref": "SocketHostPatterns"
-              }
-            }
-          },
-          "tcpServer": {
-            "description": "The <code>tcpServer</code> manifest property declares which sockets.tcpServer operations an app can issue.",
-            "optional": true,
-            "type": "object",
-            "properties": {
-              "listen": {
-                "description": "<p>The host:port pattern for <code>listen</code> operations.</p>",
-                "optional": true,
-                "$ref": "SocketHostPatterns"
-              }
-            }
-          }
-        }
-      },
-      {
         "id": "bluetooth",
         "type": "object",
         "description": "The <code>bluetooth</code> manifest property give permission to an app to use the $(ref:bluetooth) API. A list of UUIDs can be optionally specified to enable communication with devices.",
             }
           }
         }
+      },
+      {
+        "id": "automation",
+        "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.",
+        "choices": [
+          { "type": "boolean",
+            "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>)." },
+          { "type": "object",
+            "properties": {
+              "desktop": {
+                "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.",
+                "optional": true,
+                "type": "boolean"
+              },
+              "matches": {
+                "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>).",
+                "optional": true,
+                "type": "array",
+                "items": { "type": "string" }
+              },
+              "interact": {
+                "description": "Whether the extension is allowed interactive access (true) or read-only access (false; default) to the automation tree.",
+                "optional": true,
+                "type": "boolean"
+              }
+            }
+          }
+        ]
       }
     ]
   }