Index: chrome/browser/task_manager/providers/web_contents/extension_task.cc |
diff --git a/chrome/browser/task_manager/providers/web_contents/extension_task.cc b/chrome/browser/task_manager/providers/web_contents/extension_task.cc |
index 0d47459cfa9aa9624c977f2bd7218aadb40b7299..4ceb7b144f483ede1015e2b5ec89192c4385daf1 100644 |
--- a/chrome/browser/task_manager/providers/web_contents/extension_task.cc |
+++ b/chrome/browser/task_manager/providers/web_contents/extension_task.cc |
@@ -46,7 +46,8 @@ ExtensionTask::ExtensionTask(content::WebContents* web_contents, |
: RendererTask(GetExtensionTitle(web_contents, extension, view_type), |
GetDefaultIcon(), |
web_contents, |
- web_contents->GetRenderProcessHost()) { |
+ web_contents->GetRenderProcessHost()), |
+ view_type_(view_type) { |
LoadExtensionIcon(extension); |
} |
@@ -93,6 +94,20 @@ Task::Type ExtensionTask::GetType() const { |
return Task::EXTENSION; |
} |
+int ExtensionTask::GetKeepaliveCount() const { |
+ if (view_type_ != extensions::VIEW_TYPE_EXTENSION_BACKGROUND_PAGE) |
+ return -1; |
+ |
+ const extensions::Extension* extension = |
+ extensions::ProcessManager::Get(web_contents()->GetBrowserContext()) |
+ ->GetExtensionForWebContents(web_contents()); |
+ if (!extension) |
+ return -1; |
+ |
+ return extensions::ProcessManager::Get(web_contents()->GetBrowserContext()) |
+ ->GetLazyKeepaliveCount(extension); |
+} |
+ |
void ExtensionTask::OnExtensionIconImageChanged(extensions::IconImage* image) { |
DCHECK_EQ(extension_icon_.get(), image); |