Index: chrome/browser/extensions/extension_process_manager.h |
diff --git a/chrome/browser/extensions/extension_process_manager.h b/chrome/browser/extensions/extension_process_manager.h |
index 12fdf4a9c6358a1bb9cab6113f78680fd2189a79..9230f911abda05f73133c2add3fe75f76ba72dd8 100644 |
--- a/chrome/browser/extensions/extension_process_manager.h |
+++ b/chrome/browser/extensions/extension_process_manager.h |
@@ -134,6 +134,14 @@ class ExtensionProcessManager : public content::NotificationObserver { |
// onSuspendCanceled() event to it. |
void CancelSuspend(const extensions::Extension* extension); |
+ // Determines whether ExtensionHost creation for background hosts is to be |
+ // deferred until CreateDeferredBackgroundHosts is called. If |defer| is |
+ // true, then it will be deferred. |
+ void DeferBackgroundHostCreation(bool defer); |
+ |
+ // Cause any background ExtensionHosts that were deferred to be created. |
+ void CreateDeferredBackgroundHosts(); |
+ |
protected: |
explicit ExtensionProcessManager(Profile* profile); |
@@ -219,6 +227,10 @@ class ExtensionProcessManager : public content::NotificationObserver { |
// sending a Suspend message; read from command-line switch. |
base::TimeDelta event_page_suspending_time_; |
+ // If true, then creation of background hosts is suspended until |
+ // CreateDeferredBackgroundHosts is called. |
+ bool defer_background_host_creation_; |
+ |
base::WeakPtrFactory<ExtensionProcessManager> weak_ptr_factory_; |
base::Callback<void(content::DevToolsAgentHost*, bool)> devtools_callback_; |