Index: chrome/browser/profiles/off_the_record_profile_impl.cc |
=================================================================== |
--- chrome/browser/profiles/off_the_record_profile_impl.cc (revision 124830) |
+++ chrome/browser/profiles/off_the_record_profile_impl.cc (working copy) |
@@ -21,13 +21,11 @@ |
#include "chrome/browser/download/download_service_factory.h" |
#include "chrome/browser/extensions/api/webrequest/webrequest_api.h" |
#include "chrome/browser/extensions/extension_info_map.h" |
+#include "chrome/browser/extensions/extension_message_service.h" |
#include "chrome/browser/extensions/extension_pref_store.h" |
-#include "chrome/browser/extensions/extension_pref_value_map.h" |
#include "chrome/browser/extensions/extension_process_manager.h" |
#include "chrome/browser/extensions/extension_service.h" |
#include "chrome/browser/extensions/extension_special_storage_policy.h" |
-#include "chrome/browser/extensions/extension_system.h" |
-#include "chrome/browser/extensions/extension_system_factory.h" |
#include "chrome/browser/io_thread.h" |
#include "chrome/browser/net/proxy_service_factory.h" |
#include "chrome/browser/plugin_prefs.h" |
@@ -87,6 +85,8 @@ |
} |
void OffTheRecordProfileImpl::Init() { |
+ extension_process_manager_.reset(ExtensionProcessManager::Create(this)); |
+ |
BrowserList::AddObserver(this); |
ProfileDependencyManager::GetInstance()->CreateProfileServices(this, false); |
@@ -124,13 +124,6 @@ |
ChromePluginServiceFilter::GetInstance()->UnregisterResourceContext( |
io_data_.GetResourceContextNoInit()); |
- ExtensionService* extension_service = |
- ExtensionSystemFactory::GetForProfile(this)->extension_service(); |
- if (extension_service) { |
- extension_service->extension_prefs()-> |
- ClearIncognitoSessionOnlyContentSettings(); |
- } |
- |
ProfileDependencyManager::GetInstance()->DestroyProfileServices(this); |
BrowserThread::PostTask( |
@@ -145,6 +138,12 @@ |
if (pref_proxy_config_tracker_.get()) |
pref_proxy_config_tracker_->DetachFromPrefService(); |
+ ExtensionService* extension_service = GetExtensionService(); |
+ if (extension_service) { |
+ ExtensionPrefs* extension_prefs = extension_service->extension_prefs(); |
+ extension_prefs->ClearIncognitoSessionOnlyContentSettings(); |
+ } |
+ |
// Clears any data the network stack contains that may be related to the |
// OTR session. |
g_browser_process->io_thread()->ChangedToOnTheRecord(); |
@@ -197,25 +196,33 @@ |
return NULL; |
} |
-ExtensionPrefValueMap* OffTheRecordProfileImpl::GetExtensionPrefValueMap() { |
- return NULL; |
-} |
- |
ExtensionService* OffTheRecordProfileImpl::GetExtensionService() { |
- return ExtensionSystemFactory::GetForProfile(this)->extension_service(); |
+ return GetOriginalProfile()->GetExtensionService(); |
} |
UserScriptMaster* OffTheRecordProfileImpl::GetUserScriptMaster() { |
- return ExtensionSystemFactory::GetForProfile(this)->user_script_master(); |
+ return GetOriginalProfile()->GetUserScriptMaster(); |
} |
+ExtensionDevToolsManager* |
+ OffTheRecordProfileImpl::GetExtensionDevToolsManager() { |
+ // TODO(mpcomplete): figure out whether we should return the original |
+ // profile's version. |
+ return NULL; |
+} |
+ |
ExtensionProcessManager* |
OffTheRecordProfileImpl::GetExtensionProcessManager() { |
- return ExtensionSystemFactory::GetForProfile(this)->process_manager(); |
+ return extension_process_manager_.get(); |
} |
+ExtensionMessageService* |
+ OffTheRecordProfileImpl::GetExtensionMessageService() { |
+ return GetOriginalProfile()->GetExtensionMessageService(); |
+} |
+ |
ExtensionEventRouter* OffTheRecordProfileImpl::GetExtensionEventRouter() { |
- return ExtensionSystemFactory::GetForProfile(this)->event_router(); |
+ return GetOriginalProfile()->GetExtensionEventRouter(); |
} |
ExtensionSpecialStoragePolicy* |
@@ -404,6 +411,10 @@ |
void OffTheRecordProfileImpl::MarkAsCleanShutdown() { |
} |
+void OffTheRecordProfileImpl::InitExtensions(bool extensions_enabled) { |
+ NOTREACHED(); |
+} |
+ |
void OffTheRecordProfileImpl::InitPromoResources() { |
NOTREACHED(); |
} |
@@ -442,6 +453,10 @@ |
void OffTheRecordProfileImpl::OnBrowserRemoved(const Browser* browser) { |
} |
+ExtensionInfoMap* OffTheRecordProfileImpl::GetExtensionInfoMap() { |
+ return profile_->GetExtensionInfoMap(); |
+} |
+ |
ChromeURLDataManager* OffTheRecordProfileImpl::GetChromeURLDataManager() { |
if (!chrome_url_data_manager_.get()) |
chrome_url_data_manager_.reset(new ChromeURLDataManager( |