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

Unified Diff: chrome/browser/task_manager_resource_providers.cc

Issue 3210007: Add support for a "split" incognito behavior for extensions. (Closed)
Patch Set: latest Created 10 years, 4 months 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
Index: chrome/browser/task_manager_resource_providers.cc
diff --git a/chrome/browser/task_manager_resource_providers.cc b/chrome/browser/task_manager_resource_providers.cc
index 2b41233eafc9ff8e933c49ca595b6849539ea2ca..1207462ac798be1d518339e20aa7bd251ba95bf9 100644
--- a/chrome/browser/task_manager_resource_providers.cc
+++ b/chrome/browser/task_manager_resource_providers.cc
@@ -529,8 +529,16 @@ TaskManagerExtensionProcessResource::TaskManagerExtensionProcessResource(
pid_ = base::GetProcId(process_handle_);
std::wstring extension_name(UTF8ToWide(GetExtension()->name()));
DCHECK(!extension_name.empty());
- title_ = l10n_util::GetStringF(IDS_TASK_MANAGER_EXTENSION_PREFIX,
- extension_name);
+
+ int message_id =
+ GetExtension()->is_app() ?
+ (extension_host_->profile()->IsOffTheRecord() ?
+ IDS_TASK_MANAGER_APP_INCOGNITO_PREFIX :
+ IDS_TASK_MANAGER_APP_PREFIX) :
+ (extension_host_->profile()->IsOffTheRecord() ?
+ IDS_TASK_MANAGER_EXTENSION_INCOGNITO_PREFIX :
+ IDS_TASK_MANAGER_EXTENSION_PREFIX);
+ title_ = l10n_util::GetStringF(message_id, extension_name);
}
TaskManagerExtensionProcessResource::~TaskManagerExtensionProcessResource() {
@@ -586,13 +594,25 @@ void TaskManagerExtensionProcessResourceProvider::StartUpdating() {
ProfileManager* profile_manager = g_browser_process->profile_manager();
for (ProfileManager::const_iterator it = profile_manager->begin();
it != profile_manager->end(); ++it) {
+ ExtensionProcessManager* process_manager =
+ (*it)->GetExtensionProcessManager();
+ if (process_manager) {
+ ExtensionProcessManager::const_iterator jt;
+ for (jt = process_manager->begin(); jt != process_manager->end(); ++jt)
+ AddToTaskManager(*jt);
+ }
+
+ // If we have an incognito profile active, include the split-mode incognito
+ // extensions.
+ if (BrowserList::IsOffTheRecordSessionActive()) {
ExtensionProcessManager* process_manager =
- (*it)->GetExtensionProcessManager();
- if (!process_manager)
- continue;
+ (*it)->GetOffTheRecordProfile()->GetExtensionProcessManager();
+ if (process_manager) {
ExtensionProcessManager::const_iterator jt;
for (jt = process_manager->begin(); jt != process_manager->end(); ++jt)
AddToTaskManager(*jt);
+ }
+ }
}
// Register for notifications about extension process changes.
« no previous file with comments | « chrome/browser/resources/extensions_ui.html ('k') | chrome/browser/views/location_bar/icon_label_bubble_view.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698