Index: chrome/browser/task_manager/task_manager_resource_providers.cc |
diff --git a/chrome/browser/task_manager/task_manager_resource_providers.cc b/chrome/browser/task_manager/task_manager_resource_providers.cc |
index 13cd82fab50d5ff780f0539fb76fe5fbf52728b7..73476c9027a15e66c131f57644608b0be18d1246 100644 |
--- a/chrome/browser/task_manager/task_manager_resource_providers.cc |
+++ b/chrome/browser/task_manager/task_manager_resource_providers.cc |
@@ -382,6 +382,10 @@ SkBitmap TaskManagerBackgroundContentsResource::GetIcon() const { |
return *default_icon_; |
} |
+bool TaskManagerBackgroundContentsResource::IsBackground() const { |
+ return true; |
+} |
+ |
//////////////////////////////////////////////////////////////////////////////// |
// TaskManagerBackgroundContentsResourceProvider class |
//////////////////////////////////////////////////////////////////////////////// |
@@ -550,6 +554,9 @@ void TaskManagerBackgroundContentsResourceProvider::Observe( |
} |
Add(Details<BackgroundContentsOpenedDetails>(details)->contents, |
application_name); |
+ // Opening a new BackgroundContents needs to force the display to refresh |
+ // (applications may now be considered "background" that weren't before). |
+ task_manager_->ModelChanged(); |
break; |
} |
case NotificationType::BACKGROUND_CONTENTS_NAVIGATED: { |
@@ -565,6 +572,9 @@ void TaskManagerBackgroundContentsResourceProvider::Observe( |
} |
case NotificationType::BACKGROUND_CONTENTS_DELETED: |
Remove(Details<BackgroundContents>(details).ptr()); |
+ // Closing a BackgroundContents needs to force the display to refresh |
+ // (applications may now be considered "foreground" that weren't before). |
+ task_manager_->ModelChanged(); |
break; |
default: |
NOTREACHED() << "Unexpected notification."; |
@@ -847,6 +857,11 @@ const Extension* TaskManagerExtensionProcessResource::GetExtension() const { |
return extension_host_->extension(); |
} |
+bool TaskManagerExtensionProcessResource::IsBackground() const { |
+ return extension_host_->GetRenderViewType() == |
+ ViewType::EXTENSION_BACKGROUND_PAGE; |
+} |
+ |
//////////////////////////////////////////////////////////////////////////////// |
// TaskManagerExtensionProcessResourceProvider class |
//////////////////////////////////////////////////////////////////////////////// |