diff --git a/atom/renderer/renderer_client_base.cc b/atom/renderer/renderer_client_base.cc index 19853096387b..eb35f78349d1 100644 --- a/atom/renderer/renderer_client_base.cc +++ b/atom/renderer/renderer_client_base.cc @@ -200,22 +200,26 @@ void RendererClientBase::RenderFrameCreated( blink::WebSecurityPolicy::AddOriginAccessWhitelistEntry( GURL(kPdfViewerUIOrigin), "file", "", true); #endif // BUILDFLAG(ENABLE_PDF_VIEWER) + + content::RenderView* render_view = render_frame->GetRenderView(); + if (render_frame->IsMainFrame() && render_view) { + blink::WebFrameWidget* web_frame_widget = render_view->GetWebFrameWidget(); + if (web_frame_widget) { + base::CommandLine* cmd = base::CommandLine::ForCurrentProcess(); + if (cmd->HasSwitch(switches::kGuestInstanceID)) { // webview. + web_frame_widget->SetBaseBackgroundColor(SK_ColorTRANSPARENT); + } else { // normal window. + std::string name = cmd->GetSwitchValueASCII(switches::kBackgroundColor); + SkColor color = + name.empty() ? SK_ColorTRANSPARENT : ParseHexColor(name); + web_frame_widget->SetBaseBackgroundColor(color); + } + } + } } void RendererClientBase::RenderViewCreated(content::RenderView* render_view) { new AtomRenderViewObserver(render_view); - blink::WebFrameWidget* web_frame_widget = render_view->GetWebFrameWidget(); - if (!web_frame_widget) - return; - - base::CommandLine* cmd = base::CommandLine::ForCurrentProcess(); - if (cmd->HasSwitch(switches::kGuestInstanceID)) { // webview. - web_frame_widget->SetBaseBackgroundColor(SK_ColorTRANSPARENT); - } else { // normal window. - std::string name = cmd->GetSwitchValueASCII(switches::kBackgroundColor); - SkColor color = name.empty() ? SK_ColorTRANSPARENT : ParseHexColor(name); - web_frame_widget->SetBaseBackgroundColor(color); - } } void RendererClientBase::DidClearWindowObject(