Updating trunk VERSION from 2139.0 to 2140.0
[chromium-blink-merge.git] / extensions / common / constants.h
blob3e9f17b9ef4811ae5ba5c1ececcde4a13f0c25f6
1 // Copyright (c) 2012 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 EXTENSIONS_COMMON_CONSTANTS_H_
6 #define EXTENSIONS_COMMON_CONSTANTS_H_
8 #include "base/basictypes.h"
9 #include "base/files/file_path.h"
10 #include "ui/base/layout.h"
12 namespace extensions {
14 // Scheme we serve extension content from.
15 extern const char kExtensionScheme[];
17 // Canonical schemes you can use as input to GURL.SchemeIs().
18 extern const char kExtensionResourceScheme[];
20 // The name of the manifest inside an extension.
21 extern const base::FilePath::CharType kManifestFilename[];
23 // The name of locale folder inside an extension.
24 extern const base::FilePath::CharType kLocaleFolder[];
26 // The name of the messages file inside an extension.
27 extern const base::FilePath::CharType kMessagesFilename[];
29 // The base directory for subdirectories with platform-specific code.
30 extern const base::FilePath::CharType kPlatformSpecificFolder[];
32 // A directory reserved for metadata, generated either by the webstore
33 // or chrome.
34 extern const base::FilePath::CharType kMetadataFolder[];
36 // Name of the verified contents file within the metadata folder.
37 extern const base::FilePath::CharType kVerifiedContentsFilename[];
39 // Name of the computed hashes file within the metadata folder.
40 extern const base::FilePath::CharType kComputedHashesFilename[];
42 // The name of the directory inside the profile where extensions are
43 // installed to.
44 extern const char kInstallDirectoryName[];
46 // The name of a temporary directory to install an extension into for
47 // validation before finalizing install.
48 extern const char kTempExtensionName[];
50 // The file to write our decoded images to, relative to the extension_path.
51 extern const char kDecodedImagesFilename[];
53 // The file to write our decoded message catalogs to, relative to the
54 // extension_path.
55 extern const char kDecodedMessageCatalogsFilename[];
57 // The filename to use for a background page generated from
58 // background.scripts.
59 extern const char kGeneratedBackgroundPageFilename[];
61 // Path to imported modules.
62 extern const char kModulesDir[];
64 // The file extension (.crx) for extensions.
65 extern const base::FilePath::CharType kExtensionFileExtension[];
67 // The file extension (.pem) for private key files.
68 extern const base::FilePath::CharType kExtensionKeyFileExtension[];
70 // Default frequency for auto updates, if turned on.
71 extern const int kDefaultUpdateFrequencySeconds;
73 // The name of the directory inside the profile where per-app local settings
74 // are stored.
75 extern const char kLocalAppSettingsDirectoryName[];
77 // The name of the directory inside the profile where per-extension local
78 // settings are stored.
79 extern const char kLocalExtensionSettingsDirectoryName[];
81 // The name of the directory inside the profile where per-app synced settings
82 // are stored.
83 extern const char kSyncAppSettingsDirectoryName[];
85 // The name of the directory inside the profile where per-extension synced
86 // settings are stored.
87 extern const char kSyncExtensionSettingsDirectoryName[];
89 // The name of the directory inside the profile where per-extension persistent
90 // managed settings are stored.
91 extern const char kManagedSettingsDirectoryName[];
93 // The name of the database inside the profile where chrome-internal
94 // extension state resides.
95 extern const char kStateStoreName[];
97 // The name of the database inside the profile where declarative extension
98 // rules are stored.
99 extern const char kRulesStoreName[];
101 // The URL query parameter key corresponding to multi-login user index.
102 extern const char kAuthUserQueryKey[];
104 } // namespace extensions
106 namespace extension_misc {
108 // Matches chrome.windows.WINDOW_ID_NONE.
109 const int kUnknownWindowId = -1;
111 // Matches chrome.windows.WINDOW_ID_CURRENT.
112 const int kCurrentWindowId = -2;
114 // NOTE: If you change this list, you should also change kExtensionIconSizes
115 // in cc file.
116 enum ExtensionIcons {
117 EXTENSION_ICON_GIGANTOR = 512,
118 EXTENSION_ICON_EXTRA_LARGE = 256,
119 EXTENSION_ICON_LARGE = 128,
120 EXTENSION_ICON_MEDIUM = 48,
121 EXTENSION_ICON_SMALL = 32,
122 EXTENSION_ICON_SMALLISH = 24,
123 EXTENSION_ICON_ACTION = 19,
124 EXTENSION_ICON_BITTY = 16,
125 EXTENSION_ICON_INVALID = 0,
128 // List of sizes for extension icons that can be defined in the manifest.
129 extern const int kExtensionIconSizes[];
130 extern const size_t kNumExtensionIconSizes;
132 struct IconRepresentationInfo {
133 // Size in pixels.
134 const int size;
135 // Size as a string that will be used to retrieve representation value from
136 // ExtensionAction SetIcon function arguments.
137 const char* const size_string;
138 // Scale factor for which the representation should be used.
139 const ui::ScaleFactor scale;
142 // The icon representations for extension actions.
143 extern const IconRepresentationInfo kExtensionActionIconSizes[];
144 const size_t kNumExtensionActionIconSizes = 2u;
146 } // namespace extension_misc
148 #endif // EXTENSIONS_COMMON_CONSTANTS_H_