Index: chrome/browser/extensions/chrome_extensions_browser_client.cc |
diff --git a/chrome/browser/extensions/chrome_extensions_browser_client.cc b/chrome/browser/extensions/chrome_extensions_browser_client.cc |
index c66d02366f9fe3ccf28297d9e0556fd024d914d4..db2ae3b53a8b07af2a091e69afa54c18df7e7ce2 100644 |
--- a/chrome/browser/extensions/chrome_extensions_browser_client.cc |
+++ b/chrome/browser/extensions/chrome_extensions_browser_client.cc |
@@ -21,7 +21,6 @@ |
#include "chrome/browser/external_protocol/external_protocol_handler.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/profiles/profile_manager.h" |
-#include "chrome/browser/ui/browser_finder.h" |
#include "chrome/common/chrome_paths.h" |
#include "chrome/common/chrome_switches.h" |
#include "chrome/common/chrome_version_info.h" |
@@ -42,12 +41,14 @@ |
#include "chrome/browser/extensions/activity_log/activity_log.h" |
#include "chrome/browser/extensions/api/chrome_extensions_api_client.h" |
#include "chrome/browser/extensions/api/content_settings/content_settings_service.h" |
+#include "chrome/browser/extensions/chrome_process_manager_delegate.h" |
#endif |
namespace extensions { |
ChromeExtensionsBrowserClient::ChromeExtensionsBrowserClient() { |
#if defined(ENABLE_EXTENSIONS) |
+ process_manager_delegate_.reset(new ChromeProcessManagerDelegate); |
api_client_.reset(new ChromeExtensionsAPIClient); |
#endif |
// Only set if it hasn't already been set (e.g. by a test). |
@@ -158,35 +159,15 @@ void ChromeExtensionsBrowserClient::GetEarlyExtensionPrefsObservers( |
#endif |
} |
-bool ChromeExtensionsBrowserClient::DeferLoadingBackgroundHosts( |
- content::BrowserContext* context) const { |
- Profile* profile = static_cast<Profile*>(context); |
- |
- // The profile may not be valid yet if it is still being initialized. |
- // In that case, defer loading, since it depends on an initialized profile. |
- // http://crbug.com/222473 |
- if (!g_browser_process->profile_manager()->IsValidProfile(profile)) |
- return true; |
- |
-#if defined(OS_ANDROID) |
- return false; |
+ProcessManagerDelegate* |
+ChromeExtensionsBrowserClient::GetProcessManagerDelegate() const { |
+#if defined(ENABLE_EXTENSIONS) |
+ return process_manager_delegate_.get(); |
#else |
- // There are no browser windows open and the browser process was |
- // started to show the app launcher. |
- return chrome::GetTotalBrowserCountForProfile(profile) == 0 && |
- CommandLine::ForCurrentProcess()->HasSwitch(switches::kShowAppList); |
+ return NULL; |
#endif |
} |
-bool ChromeExtensionsBrowserClient::IsBackgroundPageAllowed( |
- content::BrowserContext* context) const { |
- // Returns true if current session is Guest mode session and current |
- // browser context is *not* off-the-record. Such context is artificial and |
- // background page shouldn't be created in it. |
- return !static_cast<Profile*>(context)->IsGuestSession() || |
- context->IsOffTheRecord(); |
-} |
- |
scoped_ptr<ExtensionHostDelegate> |
ChromeExtensionsBrowserClient::CreateExtensionHostDelegate() { |
return scoped_ptr<ExtensionHostDelegate>(new ChromeExtensionHostDelegate); |