Bug 1728914 - Remove widget code references to AsLayerManager and access WebRender directly. r=gfx-reviewers,aosmond,jrmuizel
Depends on D124415 Differential Revision: https://phabricator.services.mozilla.com/D124416
This commit is contained in:
@@ -733,8 +733,6 @@ void nsWindow::Destroy() {
|
||||
// to avoid double-freeing.
|
||||
mSurfaceProvider.CleanupResources();
|
||||
|
||||
ClearCachedResources();
|
||||
|
||||
g_signal_handlers_disconnect_by_data(gtk_settings_get_default(), this);
|
||||
|
||||
nsIRollupListener* rollupListener = nsBaseWidget::GetActiveRollupListener();
|
||||
@@ -1111,11 +1109,6 @@ void nsWindow::ApplySizeConstraints(void) {
|
||||
void nsWindow::Show(bool aState) {
|
||||
if (aState == mIsShown) return;
|
||||
|
||||
// Clear our cached resources when the window is hidden.
|
||||
if (mIsShown && !aState) {
|
||||
ClearCachedResources();
|
||||
}
|
||||
|
||||
mIsShown = aState;
|
||||
|
||||
LOG(("nsWindow::Show [%p] state %d\n", (void*)this, aState));
|
||||
@@ -3444,7 +3437,7 @@ gboolean nsWindow::OnExposeEvent(cairo_t* cr) {
|
||||
region.ScaleRoundOut(scale, scale);
|
||||
|
||||
WindowRenderer* renderer = GetWindowRenderer();
|
||||
LayerManager* layerManager = renderer->AsLayerManager();
|
||||
WebRenderLayerManager* layerManager = renderer->AsWebRender();
|
||||
KnowsCompositor* knowsCompositor = renderer->AsKnowsCompositor();
|
||||
|
||||
if (knowsCompositor && layerManager && mCompositorSession) {
|
||||
@@ -8437,21 +8430,6 @@ void nsWindow::SetCompositorWidgetDelegate(CompositorWidgetDelegate* delegate) {
|
||||
}
|
||||
}
|
||||
|
||||
void nsWindow::ClearCachedResources() {
|
||||
if (mWindowRenderer && mWindowRenderer->GetBackendType() ==
|
||||
mozilla::layers::LayersBackend::LAYERS_BASIC) {
|
||||
mWindowRenderer->AsLayerManager()->ClearCachedResources();
|
||||
}
|
||||
|
||||
GList* children = gdk_window_peek_children(mGdkWindow);
|
||||
for (GList* list = children; list; list = list->next) {
|
||||
nsWindow* window = get_window_for_gdk_window(GDK_WINDOW(list->data));
|
||||
if (window) {
|
||||
window->ClearCachedResources();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* nsWindow::UpdateClientOffsetFromCSDWindow() is designed to be called from
|
||||
* nsWindow::OnConfigureEvent() when mContainer window is already positioned.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user