| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| [ |
| { |
| "namespace": "contentSettings", |
| "description": "The contentSettings API.", |
| "types": [ |
| { |
| "id": "ResourceIdentifier", |
| "type": "object", |
| "properties": { |
| "id": { |
| "type": "string", |
| "description": "The resource identifier for the given content type." |
| }, |
| "description": { |
| "type": "string", |
| "optional": true, |
| "description": "A human readable description of the resource." |
| } |
| }, |
| "description": "The only content type using resource identifiers is <a href=\"contentSettings.html#property-plugins\"><var>plugins</var></a>. For more information, see <a href=\"contentSettings.html#resource-identifiers\">Resource Identifiers</a>." |
| }, |
| { |
| "id": "ContentSetting", |
| "type": "object", |
| "functions": [ |
| { |
| "name": "clear", |
| "type": "function", |
| "description": "Clear all content setting rules set by this extension.", |
| "parameters": [ |
| { |
| "name": "details", |
| "type": "object", |
| "properties": { |
| "scope": { |
| "type": "string", |
| "enum": ["regular", "incognito_session_only"], |
| "optional": true, |
| "description": "Where to set the setting (default: regular). One of<br><var>regular</var>: setting for regular profile (which is inherited by the incognito profile if not overridden elsewhere),<br><var>incognito_session_only</var>: setting for incognito profile that can only be set during an incognito session and is deleted when the incognito session ends (overrides regular settings)." |
| } |
| } |
| }, |
| { |
| "type": "function", |
| "name": "callback", |
| "optional": true, |
| "parameters": [] |
| } |
| ] |
| }, |
| { |
| "name": "get", |
| "type": "function", |
| "description": "Gets the current content setting for a given pair of URLs.", |
| "parameters": [ |
| { |
| "name": "details", |
| "type": "object", |
| "properties": { |
| "primaryUrl": { |
| "type": "string", |
| "description": "The primary URL for which the content setting should be retrieved. Note that the meaning of a primary URL depends on the content type." |
| }, |
| "secondaryUrl": { |
| "type": "string", |
| "description": "The secondary URL for which the content setting should be retrieved. Defaults to the primary URL. Note that the meaning of a secondary URL depends on the content type, and not all content types use secondary URLs.", |
| "optional": true |
| }, |
| "resourceIdentifier": { |
| "$ref": "ResourceIdentifier", |
| "optional": true, |
| "description": "A more specific identifier of the type of content for which the settings should be retrieved." |
| }, |
| "incognito": { |
| "type": "boolean", |
| "optional": true, |
| "description": "Whether to check the content settings for an incognito session. (default false)" |
| } |
| } |
| }, |
| { |
| "type": "function", |
| "name": "callback", |
| "parameters": [ |
| { |
| "name": "details", |
| "type": "object", |
| "properties": { |
| "setting": { |
| "type": "any", |
| "description": "The content setting. See the description of the individual ContentSetting objects for the possible values." |
| } |
| } |
| } |
| ] |
| } |
| ] |
| }, |
| { |
| "name": "set", |
| "type": "function", |
| "description": "Applies a new content setting rule.", |
| "parameters": [ |
| { |
| "name": "details", |
| "type": "object", |
| "properties": { |
| "primaryPattern": { |
| "type": "string", |
| "description": "The pattern for the primary URL. For details on the format of a pattern, see <a href='contentSettings.html#patterns'>Content Setting Patterns</a>." |
| }, |
| "secondaryPattern": { |
| "type": "string", |
| "description": "The pattern for the secondary URL. Defaults to matching all URLs. For details on the format of a pattern, see <a href='contentSettings.html#patterns'>Content Setting Patterns</a>.", |
| "optional": true |
| }, |
| "resourceIdentifier": { |
| "$ref": "ResourceIdentifier", |
| "optional": true, |
| "description": "The resource identifier for the content type." |
| }, |
| "setting": { |
| "type": "any", |
| "description": "The setting applied by this rule. See the description of the individual ContentSetting objects for the possible values." |
| }, |
| "scope": { |
| "type": "string", |
| "enum": ["regular", "incognito_session_only"], |
| "optional": true, |
| "description": "Where to clear the setting (default: regular). One of<br><var>regular</var>: setting for regular profile (which is inherited by the incognito profile if not overridden elsewhere),<br><var>incognito_session_only</var>: setting for incognito profile that can only be set during an incognito session and is deleted when the incognito session ends (overrides regular settings)." |
| } |
| } |
| }, |
| { |
| "type": "function", |
| "name": "callback", |
| "optional": true, |
| "parameters": [] |
| } |
| ] |
| }, |
| { |
| "name": "getResourceIdentifiers", |
| "type": "function", |
| "description": "", |
| "parameters": [ |
| { |
| "name": "callback", |
| "type": "function", |
| "parameters": [ |
| { |
| "name": "resourceIdentifiers", |
| "type": "array", |
| "description": "A list of resource identifiers for this content type, or <var>undefined</var> if this content type does not use resource identifiers.", |
| "optional": true, |
| "items": { |
| "$ref": "ResourceIdentifier" |
| } |
| } |
| ] |
| } |
| ] |
| } |
| ] |
| } |
| ], |
| "properties": { |
| "cookies": { |
| "$ref": "ContentSetting", |
| "description": "Whether to allow cookies and other local data to be set by websites. One of<br><var>allow</var>: Accept cookies,<br><var>block</var>: Block cookies,<br><var>session_only</var>: Accept cookies only for the current session. <br>Default is <var>allow</var>.<br>The primary URL is the URL representing the cookie origin. The secondary URL is the URL of the top-level frame.", |
| "value": [ |
| "cookies", |
| {"type":"string", "enum": ["allow", "block", "session_only"]} |
| ] |
| }, |
| "images": { |
| "$ref": "ContentSetting", |
| "description": "Whether to show images. One of<br><var>allow</var>: Show images,<br><var>block</var>: Don't show images. <br>Default is <var>allow</var>.<br>The primary URL is the main-frame URL. The secondary URL is the URL of the image.", |
| "value": [ |
| "images", |
| {"type":"string", "enum": ["allow", "block"]} |
| ] |
| }, |
| "javascript": { |
| "$ref": "ContentSetting", |
| "description": "Whether to run JavaScript. One of<br><var>allow</var>: Run JavaScript,<br><var>block</var>: Don't run JavaScript. <br>Default is <var>allow</var>.<br>The primary URL is the main-frame URL. The secondary URL is not used.", |
| "value": [ |
| "javascript", |
| {"type":"string", "enum": ["allow", "block"]} |
| ] |
| }, |
| "plugins": { |
| "$ref": "ContentSetting", |
| "description": "Whether to run plug-ins. One of<br><var>allow</var>: Run plug-ins automatically,<br><var>block</var>: Don't run plug-ins automatically. <br>Default is <var>allow</var>.<br>The primary URL is the main-frame URL. The secondary URL is not used.", |
| "value": [ |
| "plugins", |
| {"type":"string", "enum": ["allow", "block"]} |
| ] |
| }, |
| "popups": { |
| "$ref": "ContentSetting", |
| "description": "Whether to allow sites to show pop-ups. One of<br><var>allow</var>: Allow sites to show pop-ups,<br><var>block</var>: Don't allow sites to show pop-ups. <br>Default is <var>block</var>.<br>The primary URL is the main-frame URL. The secondary URL is not used.", |
| "value": [ |
| "popups", |
| {"type":"string", "enum": ["allow", "block"]} |
| ] |
| }, |
| "notifications": { |
| "$ref": "ContentSetting", |
| "description": "Whether to allow sites to show desktop notifications. One of<br><var>allow</var>: Allow sites to show desktop notifications,<br><var>block</var>: Don't allow sites to show desktop notifications,<br><var>ask</var>: Ask when a site wants to show desktop notifications. <br>Default is <var>ask</var>.<br>The primary URL is the main-frame URL. The secondary URL is not used.", |
| "value": [ |
| "notifications", |
| {"type":"string", "enum": ["allow", "block", "ask"]} |
| ] |
| } |
| } |
| } |
| ] |