diff --git a/shell/browser/api/electron_api_web_contents.cc b/shell/browser/api/electron_api_web_contents.cc index 17f84c8375e7b..2e019cf78a617 100644 --- a/shell/browser/api/electron_api_web_contents.cc +++ b/shell/browser/api/electron_api_web_contents.cc @@ -393,12 +393,6 @@ WebContents::WebContents(v8::Isolate* isolate, : content::WebContentsObserver(web_contents), type_(Type::REMOTE), weak_factory_(this) { -#if BUILDFLAG(ENABLE_ELECTRON_EXTENSIONS) - extensions::ElectronExtensionWebContentsObserver::CreateForWebContents( - web_contents); - script_executor_.reset(new extensions::ScriptExecutor(web_contents)); -#endif - auto session = Session::CreateFrom(isolate, GetBrowserContext()); session_.Reset(isolate, session.ToV8()); @@ -409,6 +403,12 @@ WebContents::WebContents(v8::Isolate* isolate, AttachAsUserData(web_contents); InitZoomController(web_contents, gin::Dictionary::CreateEmpty(isolate)); +#if BUILDFLAG(ENABLE_ELECTRON_EXTENSIONS) + extensions::ElectronExtensionWebContentsObserver::CreateForWebContents( + web_contents); + script_executor_.reset(new extensions::ScriptExecutor(web_contents)); +#endif + registry_.AddInterface(base::BindRepeating(&WebContents::BindElectronBrowser, base::Unretained(this))); bindings_.set_connection_error_handler(base::BindRepeating(