Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1040)

Unified Diff: chrome/browser/extensions/component_loader.h

Issue 11572036: Do not load extension system in the Profile import process. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: rollback to patchset 10 Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/chrome_browser_main.cc ('k') | chrome/browser/extensions/component_loader.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/extensions/component_loader.h
diff --git a/chrome/browser/extensions/component_loader.h b/chrome/browser/extensions/component_loader.h
index 02798b31b01616aacd5dc612546214c6831aee61..7e61e0bd652ecb2f4d0a5a349b545ed11b75f934 100644
--- a/chrome/browser/extensions/component_loader.h
+++ b/chrome/browser/extensions/component_loader.h
@@ -32,8 +32,17 @@ class ComponentLoader {
return component_extensions_.size();
}
- // Loads any registered component extensions.
- void LoadAll();
+ // Creates and loads all registered component extensions, including those with
+ // background pages.
+ void BulkLoadAll();
+
+ // Create all registered component extensions, loading those without
+ // background pages and deferring others until a call to BulkLoadDeferred.
+ void BulkLoadDeferBackgroundPages();
+
+ // Load component extensions deferred in the last call to
+ // BulkLoadDeferBackgroundPages.
+ void BulkLoadDeferred();
// Clear the list of all registered extensions and unloads them from the
// extension service.
@@ -111,7 +120,8 @@ class ComponentLoader {
const FilePath& root_directory);
// Loads a registered component extension.
- const Extension* Load(const ComponentExtensionInfo& info);
+ void Load(const ComponentExtensionInfo& info,
+ bool defer_if_has_background_page);
void AddDefaultComponentExtensionsWithBackgroundPages(
bool skip_session_components);
@@ -140,6 +150,10 @@ class ComponentLoader {
PrefChangeRegistrar pref_change_registrar_;
+ // Extensions with background pages deferred by LoadAll(true).
+ typedef std::vector<scoped_refptr<const Extension> > DeferredAtLoadExtensions;
+ DeferredAtLoadExtensions deferred_at_load_extensions;
+
DISALLOW_COPY_AND_ASSIGN(ComponentLoader);
};
« no previous file with comments | « chrome/browser/chrome_browser_main.cc ('k') | chrome/browser/extensions/component_loader.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698