Index: chrome/renderer/extensions/dispatcher.cc |
diff --git a/chrome/renderer/extensions/dispatcher.cc b/chrome/renderer/extensions/dispatcher.cc |
index 1c7ebc16c6039db74c0d9e71c68fd9cd2dd1ad11..01f54365d295a0acfbdfcf87d8b2867260821066 100644 |
--- a/chrome/renderer/extensions/dispatcher.cc |
+++ b/chrome/renderer/extensions/dispatcher.cc |
@@ -708,6 +708,9 @@ void Dispatcher::PopulateSourceMap() { |
source_map_.RegisterSource("webview.experimental", |
IDR_WEB_VIEW_EXPERIMENTAL_JS); |
source_map_.RegisterSource("denyWebview", IDR_WEB_VIEW_DENY_JS); |
+ source_map_.RegisterSource("adView", IDR_AD_VIEW_JS); |
+ source_map_.RegisterSource("adViewCustom", IDR_AD_VIEW_CUSTOM_JS); |
+ source_map_.RegisterSource("denyAdView", IDR_AD_VIEW_DENY_JS); |
source_map_.RegisterSource("platformApp", IDR_PLATFORM_APP_JS); |
source_map_.RegisterSource("injectAppTitlebar", IDR_INJECT_APP_TITLEBAR_JS); |
} |
@@ -847,6 +850,20 @@ void Dispatcher::DidCreateScriptContext( |
} |
} |
+ if (context_type == Feature::BLESSED_EXTENSION_CONTEXT) { |
+ if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kEnableAdview)) { |
+ if (extension->HasAPIPermission(APIPermission::kAdView)) { |
+ if (CommandLine::ForCurrentProcess()->HasSwitch( |
+ switches::kEnableAdviewSrcAttribute)) { |
+ module_system->Require("adViewCustom"); |
+ } |
+ module_system->Require("adView"); |
+ } else { |
+ module_system->Require("denyAdView"); |
+ } |
+ } |
+ } |
+ |
context->set_module_system(module_system.Pass()); |
context->DispatchOnLoadEvent( |