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

Unified Diff: components/mus/surfaces/direct_output_surface_ozone.cc

Issue 2002303002: Consolidate OutputSurface constructors into GL vs Vulkan. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: outputsurface-constructors: rebase-and-fixcrash Created 4 years, 7 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: components/mus/surfaces/direct_output_surface_ozone.cc
diff --git a/components/mus/surfaces/direct_output_surface_ozone.cc b/components/mus/surfaces/direct_output_surface_ozone.cc
index deb675f9edb192da4789d70ef9ccb4bd44b0075c..bf28be848ca78cf2b7dcc68a15e8bfada551a621 100644
--- a/components/mus/surfaces/direct_output_surface_ozone.cc
+++ b/components/mus/surfaces/direct_output_surface_ozone.cc
@@ -21,20 +21,20 @@ using display_compositor::BufferQueue;
namespace mus {
DirectOutputSurfaceOzone::DirectOutputSurfaceOzone(
- const scoped_refptr<SurfacesContextProvider>& context_provider,
+ scoped_refptr<SurfacesContextProvider> context_provider,
gfx::AcceleratedWidget widget,
base::SingleThreadTaskRunner* task_runner,
uint32_t target,
uint32_t internalformat)
- : cc::OutputSurface(context_provider),
+ : cc::OutputSurface(context_provider, nullptr, nullptr),
gl_helper_(context_provider->ContextGL(),
context_provider->ContextSupport()),
- output_surface_(new BufferQueue(context_provider,
- target,
- internalformat,
- &gl_helper_,
- &gpu_memory_buffer_manager_,
- widget)),
+ buffer_queue_(new BufferQueue(context_provider->ContextGL(),
+ target,
+ internalformat,
+ &gl_helper_,
+ &gpu_memory_buffer_manager_,
+ widget)),
synthetic_begin_frame_source_(new cc::SyntheticBeginFrameSource(
task_runner,
cc::BeginFrameArgs::DefaultInterval())),
@@ -50,7 +50,7 @@ DirectOutputSurfaceOzone::DirectOutputSurfaceOzone(
// implementation.
capabilities_.max_frames_pending = 2;
- output_surface_->Initialize();
+ buffer_queue_->Initialize();
context_provider->SetSwapBuffersCompletionCallback(
base::Bind(&DirectOutputSurfaceOzone::OnGpuSwapBuffersCompleted,
@@ -67,15 +67,15 @@ bool DirectOutputSurfaceOzone::IsDisplayedAsOverlayPlane() const {
}
unsigned DirectOutputSurfaceOzone::GetOverlayTextureId() const {
- DCHECK(output_surface_);
- return output_surface_->current_texture_id();
+ DCHECK(buffer_queue_);
+ return buffer_queue_->current_texture_id();
}
void DirectOutputSurfaceOzone::SwapBuffers(cc::CompositorFrame* frame) {
- DCHECK(output_surface_);
+ DCHECK(buffer_queue_);
DCHECK(frame->gl_frame_data);
- output_surface_->SwapBuffers(frame->gl_frame_data->sub_buffer_rect);
+ buffer_queue_->SwapBuffers(frame->gl_frame_data->sub_buffer_rect);
// Code combining GpuBrowserCompositorOutputSurface + DirectOutputSurface
if (frame->gl_frame_data->sub_buffer_rect ==
@@ -118,17 +118,17 @@ void DirectOutputSurfaceOzone::OnUpdateVSyncParametersFromGpu(
void DirectOutputSurfaceOzone::OnGpuSwapBuffersCompleted(
gfx::SwapResult result) {
- DCHECK(output_surface_);
+ DCHECK(buffer_queue_);
bool force_swap = false;
if (result == gfx::SwapResult::SWAP_NAK_RECREATE_BUFFERS) {
// Even through the swap failed, this is a fixable error so we can pretend
// it succeeded to the rest of the system.
result = gfx::SwapResult::SWAP_ACK;
- output_surface_->RecreateBuffers();
+ buffer_queue_->RecreateBuffers();
force_swap = true;
}
- output_surface_->PageFlipComplete();
+ buffer_queue_->PageFlipComplete();
OnSwapBuffersComplete();
if (force_swap)
@@ -136,8 +136,8 @@ void DirectOutputSurfaceOzone::OnGpuSwapBuffersCompleted(
}
void DirectOutputSurfaceOzone::BindFramebuffer() {
- DCHECK(output_surface_);
- output_surface_->BindFramebuffer();
+ DCHECK(buffer_queue_);
+ buffer_queue_->BindFramebuffer();
}
// We call this on every frame but changing the size once we've allocated
@@ -149,8 +149,8 @@ void DirectOutputSurfaceOzone::Reshape(const gfx::Size& size,
float scale_factor,
bool alpha) {
OutputSurface::Reshape(size, scale_factor, alpha);
- DCHECK(output_surface_);
- output_surface_->Reshape(SurfaceSize(), scale_factor);
+ DCHECK(buffer_queue_);
+ buffer_queue_->Reshape(SurfaceSize(), scale_factor);
}
} // namespace mus
« no previous file with comments | « components/mus/surfaces/direct_output_surface_ozone.h ('k') | content/browser/compositor/browser_compositor_output_surface.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698