summaryrefslogtreecommitdiffstats
path: root/extensions/browser/extension_web_contents_observer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/browser/extension_web_contents_observer.cc')
-rw-r--r--extensions/browser/extension_web_contents_observer.cc15
1 files changed, 12 insertions, 3 deletions
diff --git a/extensions/browser/extension_web_contents_observer.cc b/extensions/browser/extension_web_contents_observer.cc
index e64fff1..62ebed8 100644
--- a/extensions/browser/extension_web_contents_observer.cc
+++ b/extensions/browser/extension_web_contents_observer.cc
@@ -21,14 +21,15 @@ namespace extensions {
ExtensionWebContentsObserver::ExtensionWebContentsObserver(
content::WebContents* web_contents)
: content::WebContentsObserver(web_contents),
- browser_context_(web_contents->GetBrowserContext()) {}
+ browser_context_(web_contents->GetBrowserContext()) {
+ NotifyRenderViewType(web_contents->GetRenderViewHost());
+}
ExtensionWebContentsObserver::~ExtensionWebContentsObserver() {}
void ExtensionWebContentsObserver::RenderViewCreated(
content::RenderViewHost* render_view_host) {
- render_view_host->Send(new ExtensionMsg_NotifyRenderViewType(
- render_view_host->GetRoutingID(), GetViewType(web_contents())));
+ NotifyRenderViewType(render_view_host);
const Extension* extension = GetExtension(render_view_host);
if (!extension)
@@ -82,6 +83,14 @@ void ExtensionWebContentsObserver::RenderViewCreated(
}
}
+void ExtensionWebContentsObserver::NotifyRenderViewType(
+ content::RenderViewHost* render_view_host) {
+ if (render_view_host) {
+ render_view_host->Send(new ExtensionMsg_NotifyRenderViewType(
+ render_view_host->GetRoutingID(), GetViewType(web_contents())));
+ }
+}
+
const Extension* ExtensionWebContentsObserver::GetExtension(
content::RenderViewHost* render_view_host) {
std::string extension_id = GetExtensionId(render_view_host);