fix: broken OSR transparent option (#32885)

This commit is contained in:
Shelley Vohr 2022-02-23 11:33:42 +01:00 committed by GitHub
parent 41b2945ced
commit 08e26175fd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -767,8 +767,12 @@ WebContents::WebContents(v8::Isolate* isolate,
#if BUILDFLAG(ENABLE_OSR)
}
} else if (IsOffScreen()) {
bool transparent = false;
options.Get(options::kTransparent, &transparent);
// webPreferences does not have a transparent option, so if the window needs
// to be transparent, that will be set at electron_api_browser_window.cc#L57
// and we then need to pull it back out and check it here.
std::string background_color;
options.GetHidden(options::kBackgroundColor, &background_color);
bool transparent = ParseHexColor(background_color) == SK_ColorTRANSPARENT;
content::WebContents::CreateParams params(session->browser_context());
auto* view = new OffScreenWebContentsView(