Revert "Fix background color assignment for popups (fixes issue #2482)"

This change is causing the OSRTest.OsrPopupJSOtherClient test to fail.

This reverts commit 3adb801ca8.
This commit is contained in:
Marshall Greenblatt 2020-04-24 15:41:07 -04:00
parent fd1f465fa7
commit cbc0625272
4 changed files with 23 additions and 7 deletions

View File

@ -2534,13 +2534,6 @@ void CefBrowserHostImpl::RenderViewCreated(
RenderFrameCreated(render_view_host->GetMainFrame());
platform_delegate_->RenderViewCreated(render_view_host);
// Make sure the background color is set on the WebView and the Widget.
render_view_host->OnWebkitPreferencesChanged();
if (render_view_host->GetWidget()->GetView()) {
render_view_host->GetWidget()->GetView()->SetBackgroundColor(
GetBackgroundColor());
}
}
void CefBrowserHostImpl::RenderViewDeleted(

View File

@ -1051,6 +1051,11 @@ void CefContentBrowserClient::OverrideWebkitPrefs(
// Using RVH instead of RFH here because rvh->GetMainFrame() may be nullptr
// when this method is called.
renderer_prefs::PopulateWebPreferences(rvh, *prefs);
if (rvh->GetWidget()->GetView()) {
rvh->GetWidget()->GetView()->SetBackgroundColor(
prefs->base_background_color);
}
}
void CefContentBrowserClient::BrowserURLHandlerCreated(

View File

@ -487,5 +487,10 @@ patches = [
# Fix ScreenlockMonitorDeviceSource window creation error.
# https://bugs.chromium.org/p/chromium/issues/detail?id=1058556
'name': 'win_screenlock_1058556',
},
{
# Fix unbound AssociatedRemote error in SetBackgroundOpaque.
# https://bugs.chromium.org/p/chromium/issues/detail?id=1070713
'name': 'renderer_host_1070713',
}
]

View File

@ -0,0 +1,13 @@
diff --git content/browser/renderer_host/render_view_host_impl.cc content/browser/renderer_host/render_view_host_impl.cc
index 01a4e3dc134b..cddb71886d4f 100644
--- content/browser/renderer_host/render_view_host_impl.cc
+++ content/browser/renderer_host/render_view_host_impl.cc
@@ -455,6 +455,8 @@ bool RenderViewHostImpl::IsRenderViewLive() {
}
void RenderViewHostImpl::SetBackgroundOpaque(bool opaque) {
+ if (!GetWidget()->GetAssociatedFrameWidget().is_bound())
+ return;
GetWidget()->GetAssociatedFrameWidget()->SetBackgroundOpaque(opaque);
}