| Index: chrome/browser/extensions/extension_prefs.h
|
| diff --git a/chrome/browser/extensions/extension_prefs.h b/chrome/browser/extensions/extension_prefs.h
|
| index c4a9b3eaa8cd1a756887e54cbec7f7a24a75b1a7..893547c93c9ab6d933e32aeb26caccaf88054973 100644
|
| --- a/chrome/browser/extensions/extension_prefs.h
|
| +++ b/chrome/browser/extensions/extension_prefs.h
|
| @@ -83,6 +83,17 @@ class ExtensionPrefs : public ContentSettingsStore::Observer,
|
| LAUNCH_DEFAULT = LAUNCH_REGULAR
|
| };
|
|
|
| + // This enum is used to store the reason an extension's install has been
|
| + // delayed. Do not remove items or re-order this enum as it is used in
|
| + // preferences.
|
| + enum DelayReason {
|
| + DELAY_REASON_NONE = 0,
|
| + DELAY_REASON_GC = 1,
|
| + DELAY_REASON_WAIT_FOR_IDLE = 2,
|
| + DELAY_REASON_WAIT_FOR_IMPORTS = 3,
|
| + };
|
| +
|
| +
|
| // Creates base::Time classes. The default implementation is just to return
|
| // the current time, but tests can inject alternative implementations.
|
| class TimeProvider {
|
| @@ -396,9 +407,10 @@ class ExtensionPrefs : public ContentSettingsStore::Observer,
|
| const std::string& extension_id) const;
|
|
|
| // We've downloaded an updated .crx file for the extension, but are waiting
|
| - // for idle time to install it.
|
| + // to install it.
|
| void SetDelayedInstallInfo(const Extension* extension,
|
| Extension::State initial_state,
|
| + DelayReason delay_reason,
|
| const syncer::StringOrdinal& page_ordinal);
|
|
|
| // Removes any delayed install information we have for the given
|
| @@ -413,6 +425,8 @@ class ExtensionPrefs : public ContentSettingsStore::Observer,
|
| scoped_ptr<ExtensionInfo> GetDelayedInstallInfo(
|
| const std::string& extension_id) const;
|
|
|
| + DelayReason GetDelayedInstallReason(const std::string& extension_id) const;
|
| +
|
| // Returns information about all the extensions that have delayed install
|
| // information.
|
| scoped_ptr<ExtensionsInfo> GetAllDelayedInstallInfo() const;
|
| @@ -463,6 +477,9 @@ class ExtensionPrefs : public ContentSettingsStore::Observer,
|
| // Returns the creation flags mask for the extension.
|
| int GetCreationFlags(const std::string& extension_id) const;
|
|
|
| + // Returns the creation flags mask for a delayed install extension.
|
| + int GetDelayedInstallCreationFlags(const std::string& extension_id) const;
|
| +
|
| // Returns true if the extension was installed from the Chrome Web Store.
|
| bool IsFromWebStore(const std::string& extension_id) const;
|
|
|
|
|