Index: chrome/browser/extensions/extension_service.cc |
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc |
index 45f2f631011672c6736c460cd2b58d4e33f4467c..f8f1dae4a46d59d41c8af53bd926ba5f9f67c266 100644 |
--- a/chrome/browser/extensions/extension_service.cc |
+++ b/chrome/browser/extensions/extension_service.cc |
@@ -20,7 +20,6 @@ |
#include "chrome/browser/chrome_notification_types.h" |
#include "chrome/browser/extensions/api/extension_action/extension_action_api.h" |
#include "chrome/browser/extensions/component_loader.h" |
-#include "chrome/browser/extensions/crx_installer.h" |
#include "chrome/browser/extensions/data_deleter.h" |
#include "chrome/browser/extensions/extension_assets_manager.h" |
#include "chrome/browser/extensions/extension_disabled_ui.h" |
@@ -38,7 +37,6 @@ |
#include "chrome/browser/extensions/shared_module_service.h" |
#include "chrome/browser/extensions/unpacked_installer.h" |
#include "chrome/browser/extensions/updater/extension_cache.h" |
-#include "chrome/browser/extensions/updater/extension_updater.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/ui/webui/extensions/extension_icon_source.h" |
#include "chrome/browser/ui/webui/favicon_source.h" |
@@ -80,6 +78,13 @@ |
#include "webkit/browser/fileapi/file_system_context.h" |
#endif |
+// TODO(thestig): Eventually remove the #ifdefs when ExtensionService is no |
+// longer used on mobile. |
+#if defined(ENABLE_EXTENSIONS) |
+#include "chrome/browser/extensions/crx_installer.h" |
+#include "chrome/browser/extensions/updater/extension_updater.h" |
+#endif |
+ |
using content::BrowserContext; |
using content::BrowserThread; |
using content::DevToolsAgentHost; |
@@ -114,13 +119,15 @@ enum ExternalExtensionEvent { |
EXTERNAL_EXTENSION_BUCKET_BOUNDARY, |
}; |
+#if defined(ENABLE_EXTENSIONS) |
// Prompt the user this many times before considering an extension acknowledged. |
-static const int kMaxExtensionAcknowledgePromptCount = 3; |
+const int kMaxExtensionAcknowledgePromptCount = 3; |
+#endif |
// Wait this many seconds after an extensions becomes idle before updating it. |
-static const int kUpdateIdleDelay = 5; |
+const int kUpdateIdleDelay = 5; |
-static bool IsCWSSharedModule(const Extension* extension) { |
+bool IsCWSSharedModule(const Extension* extension) { |
return extension->from_webstore() && |
SharedModuleInfo::IsSharedModule(extension); |
} |
@@ -321,6 +328,7 @@ ExtensionService::ExtensionService(Profile* profile, |
callback); |
pref_change_registrar_.Add(extensions::pref_names::kAllowedTypes, callback); |
+#if defined(ENABLE_EXTENSIONS) |
// Set up the ExtensionUpdater |
if (autoupdate_enabled) { |
int update_frequency = extensions::kDefaultUpdateFrequencySeconds; |
@@ -337,6 +345,7 @@ ExtensionService::ExtensionService(Profile* profile, |
update_frequency, |
extensions::ExtensionCache::GetInstance())); |
} |
+#endif |
component_loader_.reset( |
new extensions::ComponentLoader(this, |
@@ -508,6 +517,7 @@ bool ExtensionService::UpdateExtension(const std::string& id, |
bool file_ownership_passed, |
CrxInstaller** out_crx_installer) { |
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
+#if defined(ENABLE_EXTENSIONS) |
if (browser_terminating_) { |
LOG(WARNING) << "Skipping UpdateExtension due to browser shutdown"; |
// Leak the temp file at extension_path. We don't want to add to the disk |
@@ -596,6 +606,9 @@ bool ExtensionService::UpdateExtension(const std::string& id, |
*out_crx_installer = installer.get(); |
return true; |
+#else |
+ return false; |
+#endif |
} |
void ExtensionService::ReloadExtension( |
@@ -1177,6 +1190,7 @@ void ExtensionService::CheckManagementPolicy() { |
} |
void ExtensionService::CheckForUpdatesSoon() { |
+#if defined(ENABLE_EXTENSIONS) |
// This can legitimately happen in unit tests. |
if (!updater_.get()) |
return; |
@@ -1189,6 +1203,7 @@ void ExtensionService::CheckForUpdatesSoon() { |
// but not before. |
update_once_all_providers_are_ready_ = true; |
} |
+#endif |
} |
// Some extensions will autoupdate themselves externally from Chrome. These |
@@ -1246,6 +1261,7 @@ bool ExtensionService::AreAllExternalProvidersReady() const { |
void ExtensionService::OnAllExternalProvidersReady() { |
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
+#if defined(ENABLE_EXTENSIONS) |
base::TimeDelta elapsed = base::Time::Now() - profile_->GetStartTime(); |
UMA_HISTOGRAM_TIMES("Extension.ExternalProvidersReadyAfter", elapsed); |
@@ -1269,6 +1285,7 @@ void ExtensionService::OnAllExternalProvidersReady() { |
error_controller_->ShowErrorIfNeeded(); |
UpdateExternalExtensionAlert(); |
+#endif |
} |
void ExtensionService::AcknowledgeExternalExtension(const std::string& id) { |
@@ -1288,6 +1305,7 @@ bool ExtensionService::IsUnacknowledgedExternalExtension( |
} |
void ExtensionService::UpdateExternalExtensionAlert() { |
+#if defined(ENABLE_EXTENSIONS) |
if (!FeatureSwitch::prompt_for_external_extensions()->IsEnabled()) |
return; |
@@ -1335,6 +1353,7 @@ void ExtensionService::UpdateExternalExtensionAlert() { |
external_install_manager_->AddExternalInstallError(extension, first_run); |
} |
} |
+#endif // defined(ENABLE_EXTENSIONS) |
} |
void ExtensionService::UnloadExtension( |
@@ -1419,10 +1438,12 @@ void ExtensionService::SetReadyAndNotifyListeners() { |
} |
void ExtensionService::OnLoadedInstalledExtensions() { |
+#if defined(ENABLE_EXTENSIONS) |
if (updater_) |
updater_->Start(); |
OnBlacklistUpdated(); |
+#endif |
} |
void ExtensionService::AddExtension(const Extension* extension) { |
@@ -2032,6 +2053,7 @@ bool ExtensionService::OnExternalExtensionFileFound( |
int creation_flags, |
bool mark_acknowledged) { |
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
+#if defined(ENABLE_EXTENSIONS) |
CHECK(Extension::IdIsValid(id)); |
if (extension_prefs_->IsExternalExtensionUninstalled(id)) |
return false; |
@@ -2095,6 +2117,9 @@ bool ExtensionService::OnExternalExtensionFileFound( |
AcknowledgeExternalExtension(id); |
return true; |
+#else |
+ return false; |
+#endif // defined(ENABLE_EXTENSIONS) |
} |
void ExtensionService::DidCreateRenderViewForBackgroundPage( |