Add a webstorePrivate API to show a permission prompt for delegated bundle installs
[chromium-blink-merge.git] / chrome / browser / extensions / component_extensions_whitelist / whitelist.h
blobf39be914f8dcd8468f7bcdd3d67d29f0a008561b
1 // Copyright 2015 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.
5 #ifndef CHROME_BROWSER_EXTENSIONS_COMPONENT_EXTENSIONS_WHITELIST_WHITELIST_H_
6 #define CHROME_BROWSER_EXTENSIONS_COMPONENT_EXTENSIONS_WHITELIST_WHITELIST_H_
8 #include <string>
10 namespace extensions {
12 // =============================================================================
14 // ADDING NEW EXTENSIONS REQUIRES APPROVAL from chrome-eng-review@google.com
16 // The main acceptable use of extensions in the default Chrome experience (i.e.
17 // not installed explicitly by the user) are to implement things like the
18 // history or settings pages. These are things that look like web pages, load
19 // in response to explicit user action, and use no resources when not opened.
21 // If you are asking for approval to add a new built-in extension to Chrome
22 // (whether downloaded with the binary or downloaded later on-demand), check:
24 // - It must not do anything on startup. Loading extensions processes on
25 // startup can significantly slow things down.
27 // - It must not have a background page. Extension processes use a nontrivial
28 // amount of memory that makes them inappropriate for built-in features.
30 // - Avoid event pages. Some events such as navigation will be even worse than
31 // background pages since it will cause the extension to be frequently
32 // loaded and unloaded. Even if your event page is "good" now, it's
33 // something that is easy to regress with inocuous looking changes, so
34 // try to use explicit C++ invocation of the extension when reasonable.
36 // =============================================================================
38 // Checks using an extension ID.
39 bool IsComponentExtensionWhitelisted(const std::string& extension_id);
41 // Checks using resource ID of manifest.
42 bool IsComponentExtensionWhitelisted(int manifest_resource_id);
44 } // namespace extensions
46 #endif // CHROME_BROWSER_EXTENSIONS_COMPONENT_EXTENSIONS_WHITELIST_WHITELIST_H_