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

Unified Diff: content/browser/compositor/gpu_output_surface_mac.mm

Issue 2365583004: Mac: Clean up plumbing of accelerated widgets (Closed)
Patch Set: make_scoped_refptr Created 4 years, 3 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/compositor/gpu_output_surface_mac.mm
diff --git a/content/browser/compositor/gpu_output_surface_mac.mm b/content/browser/compositor/gpu_output_surface_mac.mm
index 74dfb4133b6ae09b053f80b46283df4a7f6a909e..76d372a92fd3064061c223a54b1506598252001c 100644
--- a/content/browser/compositor/gpu_output_surface_mac.mm
+++ b/content/browser/compositor/gpu_output_surface_mac.mm
@@ -12,6 +12,7 @@
#include "gpu/ipc/client/gpu_process_hosted_ca_layer_tree_params.h"
#include "ui/accelerated_widget_mac/accelerated_widget_mac.h"
#include "ui/base/cocoa/remote_layer_api.h"
+#include "ui/compositor/compositor.h"
#include "ui/display/types/display_snapshot.h"
#include "ui/gfx/mac/io_surface.h"
@@ -48,6 +49,7 @@ void UpdateLayers(CAContextID content_ca_context_id,
};
GpuOutputSurfaceMac::GpuOutputSurfaceMac(
+ gfx::AcceleratedWidget widget,
scoped_refptr<ContextProviderCommandBuffer> context,
gpu::SurfaceHandle surface_handle,
scoped_refptr<ui::CompositorVSyncManager> vsync_manager,
@@ -65,6 +67,7 @@ void UpdateLayers(CAContextID content_ca_context_id,
GL_RGBA,
gfx::BufferFormat::RGBA_8888,
gpu_memory_buffer_manager),
+ widget_(widget),
remote_layers_(new RemoteLayers) {}
GpuOutputSurfaceMac::~GpuOutputSurfaceMac() {}
@@ -85,9 +88,7 @@ void UpdateLayers(CAContextID content_ca_context_id,
remote_layers_->UpdateLayers(params_mac->ca_context_id,
params_mac->fullscreen_low_power_ca_context_id);
if (should_show_frames_state_ == SHOULD_SHOW_FRAMES) {
- ui::AcceleratedWidgetMac* widget = ui::AcceleratedWidgetMac::Get(
- content::GpuSurfaceTracker::Get()->AcquireNativeWidget(
- params_mac->surface_handle));
+ ui::AcceleratedWidgetMac* widget = ui::AcceleratedWidgetMac::Get(widget_);
if (widget) {
if (remote_layers_->content_layer) {
widget->GotCALayerFrame(
« no previous file with comments | « content/browser/compositor/gpu_output_surface_mac.h ('k') | content/browser/compositor/gpu_process_transport_factory.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698