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 d27c0b252b8b24b82d45b593d0d7beb09ac51617..cce04749c85cf79288a2298fa6822de88f8953bf 100644 |
--- a/chrome/browser/chrome_content_browser_client.cc |
+++ b/chrome/browser/chrome_content_browser_client.cc |
@@ -867,6 +867,23 @@ bool ChromeContentBrowserClient::ShouldSwapProcessesForRedirect( |
ExtensionURLInfo(current_url), ExtensionURLInfo(new_url), false); |
} |
+void ChromeContentBrowserClient::GuestWebContentsCreated( |
+ WebContents* guest_web_contents, WebContents* embedder_web_contents) { |
+ Profile* profile = Profile::FromBrowserContext( |
+ embedder_web_contents->GetBrowserContext()); |
+ ExtensionService* service = |
+ extensions::ExtensionSystem::Get(profile)->extension_service(); |
+ if (!service) |
+ return; |
+ const GURL& url = embedder_web_contents->GetSiteInstance()->GetSiteURL(); |
+ const Extension* extension = service->extensions()->GetByID(url.host()); |
Matt Perry
2013/01/23 02:50:49
Use GetExtensionOrAppByURL - the URL here is not n
Fady Samuel
2013/01/23 20:12:03
Done.
|
+ if (!extension) |
+ return; |
+ std::vector<ExtensionMsg_Loaded_Params> extensions; |
+ extensions.push_back(ExtensionMsg_Loaded_Params(extension)); |
+ guest_web_contents->Send(new ExtensionMsg_Loaded(extensions)); |
Matt Perry
2013/01/23 02:50:49
Normally this is sent by ChromeRenderViewHostObser
Fady Samuel
2013/01/23 20:12:03
ChromeRenderViewHostObserver::GetExtension() retur
|
+} |
+ |
std::string ChromeContentBrowserClient::GetCanonicalEncodingNameByAliasName( |
const std::string& alias_name) { |
return CharacterEncoding::GetCanonicalEncodingNameByAliasName(alias_name); |