// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// This features file defines extension APIs implemented under src/chrome.
// See chrome/common/extensions/api/_features.md to understand this file, as
// well as feature.h, simple_feature.h, and feature_provider.h.
//
// Note that specifying "web_page", "privileged_web_page", or "all" as a context
// type will require manually updating javascript bindings code in the
// renderer.

{
  "action": {
    "dependencies": ["manifest:action"],
    "contexts": ["privileged_extension"]
  },
  "action.isEnabled": {
    "channel": "stable"
  },
  "action.getBadgeTextColor": {
    "channel": "stable"
  },
  "action.setBadgeTextColor": {
    "channel": "stable"
  },
  "extension": {
    "channel": "stable",
    "extension_types": ["extension"],
    "contexts": ["privileged_extension"]
  },
  "extension.getBackgroundPage": {
    "contexts": ["privileged_extension"],
    "disallow_for_service_workers": true
  },
  "extension.getURL": {
    "contexts": ["privileged_extension", "unprivileged_extension", "content_script"],
    "max_manifest_version": 2
  },
  "extension.lastError": {
    "contexts": [
      "privileged_extension",
      "unprivileged_extension",
      "content_script"
    ],
    "max_manifest_version": 2
  },
  "mimeHandlerViewGuestInternal": {
    "internal": true,
    "contexts": "all",
    "channel": "stable",
    "matches": ["<all_urls>"]
  },
  "pdfViewerPrivate": {
    "dependencies": ["permission:pdfViewerPrivate"],
    "contexts": ["privileged_extension"]
  },
  "resourcesPrivate": [{
    "dependencies": ["permission:resourcesPrivate"],
    "contexts": ["privileged_extension"]
  }, {
    "channel": "stable",
    "contexts": ["webui"],
    "matches": [
      "chrome://print/*"
    ]
  }],
  "scripting": {
    "dependencies": ["permission:scripting"],
    "contexts": ["privileged_extension"]
  },
  "scripting.globalParams": {
    "channel": "trunk",
    "dependencies": ["permission:scripting"],
    "contexts": ["content_script"]
  },
  "tabs": {
    "channel": "stable",
    "extension_types": ["extension"],
    "contexts": ["privileged_extension"]
  },
  "tabs.executeScript": {
    "max_manifest_version": 2
  },
  "tabs.insertCSS": {
    "max_manifest_version": 2
  },
  "tabs.removeCSS": {
    "max_manifest_version": 2
  }
}
