Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(879)

Unified Diff: content/browser/renderer_host/render_widget_host_view_mac.mm

Issue 1461463002: Reland fix for thumbnail generation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix nits. Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/render_widget_host_view_mac.mm
diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm
index e4a9f42be8091d18bd02a8a15b805fa84da4d6fc..df1948626cdd5c1956dc141beb7d575246d356f2 100644
--- a/content/browser/renderer_host/render_widget_host_view_mac.mm
+++ b/content/browser/renderer_host/render_widget_host_view_mac.mm
@@ -655,10 +655,12 @@ void RenderWidgetHostViewMac::DestroyBrowserCompositorView() {
// Destroy the BrowserCompositorView to transition Suspended -> Destroyed.
if (browser_compositor_state_ == BrowserCompositorSuspended) {
- browser_compositor_->accelerated_widget_mac()->ResetNSView();
- browser_compositor_->compositor()->SetScaleAndSize(1.0, gfx::Size(0, 0));
- browser_compositor_->compositor()->SetRootLayer(nullptr);
- BrowserCompositorMac::Recycle(browser_compositor_.Pass());
+ if (browser_compositor_) {
+ browser_compositor_->accelerated_widget_mac()->ResetNSView();
+ browser_compositor_->compositor()->SetScaleAndSize(1.0, gfx::Size(0, 0));
+ browser_compositor_->compositor()->SetRootLayer(nullptr);
+ BrowserCompositorMac::Recycle(std::move(browser_compositor_));
+ }
browser_compositor_state_ = BrowserCompositorDestroyed;
}
}
@@ -893,7 +895,7 @@ void RenderWidgetHostViewMac::WasOccluded() {
// occur in this specific order. However, because thumbnail generation is
// asychronous, that operation won't run before SuspendBrowserCompositorView()
// completes. As a result you won't get a thumbnail for the page unless you
- // happen to switch back to it. See http://crbug.com/530707 .
+ // execute these two statements in this specific order.
render_widget_host_->WasHidden();
SuspendBrowserCompositorView();
}

Powered by Google App Engine
This is Rietveld 408576698