summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/external_provider_impl.h
diff options
context:
space:
mode:
authordpolukhin@chromium.org <dpolukhin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-30 06:51:03 +0000
committerdpolukhin@chromium.org <dpolukhin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-30 06:51:03 +0000
commit19eac6d673dcf516a5976c6a241963f0374fec2f (patch)
treee04dc96d5967523862285a9842e088cedabc4639 /chrome/browser/extensions/external_provider_impl.h
parentd9bcf70c4a2650ab0155d2d57d5c9468ff3a7034 (diff)
downloadchromium_src-19eac6d673dcf516a5976c6a241963f0374fec2f.zip
chromium_src-19eac6d673dcf516a5976c6a241963f0374fec2f.tar.gz
chromium_src-19eac6d673dcf516a5976c6a241963f0374fec2f.tar.bz2
Add ability to keep external extension for existing user but don't install it for new users
This feature is required to prevent user base expansion without removing extension for user that use the app. See crbug.com/242806 to see more details. BUG=242806 TEST=ExtensionServiceTest.ExternalPrefProvider R=asargent@chromium.org Review URL: https://codereview.chromium.org/15899007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203101 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/external_provider_impl.h')
-rw-r--r--chrome/browser/extensions/external_provider_impl.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/chrome/browser/extensions/external_provider_impl.h b/chrome/browser/extensions/external_provider_impl.h
index 6c31b90..ef6a890 100644
--- a/chrome/browser/extensions/external_provider_impl.h
+++ b/chrome/browser/extensions/external_provider_impl.h
@@ -38,6 +38,7 @@ class ExternalProviderImpl : public ExternalProviderInterface {
// be initialized as Manifest::INVALID_LOCATION.
ExternalProviderImpl(VisitorInterface* service,
ExternalLoader* loader,
+ Profile* profile,
Manifest::Location crx_location,
Manifest::Location download_location,
int creation_flags);
@@ -71,6 +72,7 @@ class ExternalProviderImpl : public ExternalProviderInterface {
static const char kSupportedLocales[];
static const char kIsBookmarkApp[];
static const char kIsFromWebstore[];
+ static const char kKeepIfPresent[];
void set_auto_acknowledge(bool auto_acknowledge) {
auto_acknowledge_ = auto_acknowledge;
@@ -100,6 +102,9 @@ class ExternalProviderImpl : public ExternalProviderInterface {
// via |SetPrefs|.
scoped_refptr<ExternalLoader> loader_;
+ // The profile that will be used to install external extensions.
+ Profile* profile_;
+
// Creation flags to use for the extension. These flags will be used
// when calling Extension::Create() by the crx installer.
int creation_flags_;