Index: chrome/browser/chrome_content_browser_client.cc |
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc |
index f183f91cc765774be96018d7bf11cfbc1ed2c4cb..7447abb9f062b62bd0556cc0994803d1a125dbc6 100644 |
--- a/chrome/browser/chrome_content_browser_client.cc |
+++ b/chrome/browser/chrome_content_browser_client.cc |
@@ -2610,6 +2610,25 @@ ChromeContentBrowserClient::OverrideCookieStoreForRenderProcess( |
render_process_id).get(); |
} |
+void ChromeContentBrowserClient::OverridePageVisibilityState( |
+ RenderFrameHost* render_frame_host, |
+ blink::WebPageVisibilityState* visibility_state) { |
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
+ |
+ WebContents* web_contents = |
+ WebContents::FromRenderFrameHost(render_frame_host); |
+ DCHECK(web_contents); |
+ |
+ Profile* profile = |
+ Profile::FromBrowserContext(web_contents->GetBrowserContext()); |
+ prerender::PrerenderManager* prerender_manager = |
+ prerender::PrerenderManagerFactory::GetForProfile(profile); |
+ if (prerender_manager && |
+ prerender_manager->IsWebContentsPrerendering(web_contents, nullptr)) { |
+ *visibility_state = blink::WebPageVisibilityStatePrerender; |
+ } |
+} |
+ |
#if defined(ENABLE_WEBRTC) |
void ChromeContentBrowserClient::MaybeCopyDisableWebRtcEncryptionSwitch( |
base::CommandLine* to_command_line, |