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 63f92e12e9a2ebcf8c437f83f8270e76efd39b0c..23ffc6a0c2553db5b8eac80b59e3778769d78d9a 100644 |
--- a/chrome/browser/task_manager/task_manager_resource_providers.cc |
+++ b/chrome/browser/task_manager/task_manager_resource_providers.cc |
@@ -28,6 +28,10 @@ |
#include "chrome/browser/extensions/extension_service.h" |
#include "chrome/browser/extensions/extension_system.h" |
#include "chrome/browser/favicon/favicon_tab_helper.h" |
+#include "chrome/browser/instant/instant_controller.h" |
+#include "chrome/browser/instant/instant_loader.h" |
+#include "chrome/browser/instant/instant_service.h" |
+#include "chrome/browser/instant/instant_service_factory.h" |
#include "chrome/browser/prerender/prerender_manager.h" |
#include "chrome/browser/prerender/prerender_manager_factory.h" |
#include "chrome/browser/printing/background_printing_manager.h" |
@@ -91,7 +95,7 @@ int GetMessagePrefixID(bool is_app, |
bool is_extension, |
bool is_incognito, |
bool is_prerender, |
- bool is_instant_preview, |
+ bool is_instant_overlay, |
bool is_background) { |
if (is_app) { |
if (is_background) { |
@@ -108,8 +112,8 @@ int GetMessagePrefixID(bool is_app, |
return IDS_TASK_MANAGER_EXTENSION_PREFIX; |
} else if (is_prerender) { |
return IDS_TASK_MANAGER_PRERENDER_PREFIX; |
- } else if (is_instant_preview) { |
- return IDS_TASK_MANAGER_INSTANT_PREVIEW_PREFIX; |
+ } else if (is_instant_overlay) { |
+ return IDS_TASK_MANAGER_INSTANT_OVERLAY_PREFIX; |
} else { |
return IDS_TASK_MANAGER_TAB_PREFIX; |
} |
@@ -158,10 +162,17 @@ bool IsContentsPrerendering(WebContents* web_contents) { |
} |
bool IsContentsInstant(WebContents* web_contents) { |
+ Profile* profile = |
+ Profile::FromBrowserContext(web_contents->GetBrowserContext()); |
+ InstantService* instant_service = |
+ InstantServiceFactory::GetForProfile(profile); |
+ if (instant_service && instant_service->loader()->contents() == web_contents) |
+ return true; |
+ |
for (chrome::BrowserIterator it; !it.done(); it.Next()) { |
if (it->instant_controller() && |
it->instant_controller()->instant()-> |
- GetPreviewContents() == web_contents) { |
+ GetOverlayContents() == web_contents) { |
return true; |
} |
} |
@@ -305,7 +316,7 @@ TaskManagerTabContentsResource::TaskManagerTabContentsResource( |
web_contents->GetRenderViewHost()), |
web_contents_(web_contents), |
profile_(Profile::FromBrowserContext(web_contents->GetBrowserContext())), |
- is_instant_preview_(IsContentsInstant(web_contents)) { |
+ is_instant_overlay_(IsContentsInstant(web_contents)) { |
if (!prerender_icon_) { |
ResourceBundle& rb = ResourceBundle::GetSharedInstance(); |
prerender_icon_ = rb.GetImageSkiaNamed(IDR_PRERENDER); |
@@ -316,8 +327,8 @@ TaskManagerTabContentsResource::~TaskManagerTabContentsResource() { |
} |
void TaskManagerTabContentsResource::InstantCommitted() { |
- DCHECK(is_instant_preview_); |
- is_instant_preview_ = false; |
+ DCHECK(is_instant_overlay_); |
+ is_instant_overlay_ = false; |
} |
bool TaskManagerTabContentsResource::HostsExtension() const { |
@@ -346,7 +357,7 @@ string16 TaskManagerTabContentsResource::GetTitle() const { |
HostsExtension(), |
profile_->IsOffTheRecord(), |
IsContentsPrerendering(web_contents_), |
- is_instant_preview_, |
+ is_instant_overlay_, |
false); |
return l10n_util::GetStringFUTF16(message_id, tab_title); |
} |
@@ -419,25 +430,25 @@ void TaskManagerTabContentsResourceProvider::StartUpdating() { |
updating_ = true; |
// The contents that are tracked by this resource provider are those that |
- // are tab contents (WebContents serving as a tab in a Browser), instant |
+ // are tab contents (WebContents serving as a tab in a Browser), Instant |
// pages, prerender pages, and background printed pages. |
// Add all the existing WebContentses. |
for (TabContentsIterator iterator; !iterator.done(); iterator.Next()) |
Add(*iterator); |
- // Add all the instant pages. |
+ // Add all the Instant pages. |
for (chrome::BrowserIterator it; !it.done(); it.Next()) { |
if (it->instant_controller() && |
- it->instant_controller()->instant()->GetPreviewContents()) { |
- Add(it->instant_controller()->instant()->GetPreviewContents()); |
+ it->instant_controller()->instant()->GetOverlayContents()) { |
+ Add(it->instant_controller()->instant()->GetOverlayContents()); |
} |
} |
- // Add all the prerender pages. |
std::vector<Profile*> profiles( |
g_browser_process->profile_manager()->GetLoadedProfiles()); |
for (size_t i = 0; i < profiles.size(); ++i) { |
+ // Add all the prerender pages. |
prerender::PrerenderManager* prerender_manager = |
prerender::PrerenderManagerFactory::GetForProfile(profiles[i]); |
if (prerender_manager) { |
@@ -446,6 +457,12 @@ void TaskManagerTabContentsResourceProvider::StartUpdating() { |
for (size_t j = 0; j < contentses.size(); ++j) |
Add(contentses[j]); |
} |
+ |
+ // Add the Instant per-profile page. |
+ InstantService* instant_service = |
+ InstantServiceFactory::GetForProfile(profiles[i]); |
+ if (instant_service && instant_service->loader()->contents()) |
+ Add(instant_service->loader()->contents()); |
} |
// Add all the pages being background printed. |
@@ -501,7 +518,7 @@ void TaskManagerTabContentsResourceProvider::Add(WebContents* web_contents) { |
return; |
// The contents that are tracked by this resource provider are those that |
- // are tab contents (WebContents serving as a tab in a Browser), instant |
+ // are tab contents (WebContents serving as a tab in a Browser), Instant |
// pages, prerender pages, and background printed pages. |
if (!chrome::FindBrowserWithWebContents(web_contents) && |
!IsContentsPrerendering(web_contents) && |