diff options
Diffstat (limited to 'chromium/ui/ozone/demo')
-rw-r--r-- | chromium/ui/ozone/demo/gl_renderer.cc | 14 | ||||
-rw-r--r-- | chromium/ui/ozone/demo/gl_renderer.h | 4 | ||||
-rw-r--r-- | chromium/ui/ozone/demo/skia/skia_gl_renderer.cc | 17 | ||||
-rw-r--r-- | chromium/ui/ozone/demo/skia/skia_gl_renderer.h | 4 | ||||
-rw-r--r-- | chromium/ui/ozone/demo/skia/skia_renderer_factory.h | 1 | ||||
-rw-r--r-- | chromium/ui/ozone/demo/skia/skia_surfaceless_gl_renderer.cc | 9 | ||||
-rw-r--r-- | chromium/ui/ozone/demo/skia/skia_surfaceless_gl_renderer.h | 3 | ||||
-rw-r--r-- | chromium/ui/ozone/demo/surfaceless_gl_renderer.cc | 11 | ||||
-rw-r--r-- | chromium/ui/ozone/demo/surfaceless_gl_renderer.h | 3 | ||||
-rw-r--r-- | chromium/ui/ozone/demo/vulkan_renderer.cc | 1 |
10 files changed, 28 insertions, 39 deletions
diff --git a/chromium/ui/ozone/demo/gl_renderer.cc b/chromium/ui/ozone/demo/gl_renderer.cc index c5812189846..c25b8f9c15d 100644 --- a/chromium/ui/ozone/demo/gl_renderer.cc +++ b/chromium/ui/ozone/demo/gl_renderer.cc @@ -46,7 +46,7 @@ bool GlRenderer::Initialize() { gl_surface_->Resize(size_, 1.f, gfx::ColorSpace(), true); // Schedule the initial render. - PostRenderFrameTask(gfx::SwapResult::SWAP_ACK, nullptr); + PostRenderFrameTask(gfx::SwapCompletionResult(gfx::SwapResult::SWAP_ACK)); return true; } @@ -69,16 +69,14 @@ void GlRenderer::RenderFrame() { weak_ptr_factory_.GetWeakPtr())); } else { PostRenderFrameTask( - gl_surface_->SwapBuffers(base::BindOnce( - &GlRenderer::OnPresentation, weak_ptr_factory_.GetWeakPtr())), - nullptr); + gfx::SwapCompletionResult(gl_surface_->SwapBuffers(base::BindOnce( + &GlRenderer::OnPresentation, weak_ptr_factory_.GetWeakPtr())))); } } -void GlRenderer::PostRenderFrameTask(gfx::SwapResult result, - std::unique_ptr<gfx::GpuFence> gpu_fence) { - if (gpu_fence) - gpu_fence->Wait(); +void GlRenderer::PostRenderFrameTask(gfx::SwapCompletionResult result) { + if (result.gpu_fence) + result.gpu_fence->Wait(); base::ThreadTaskRunnerHandle::Get()->PostTask( FROM_HERE, diff --git a/chromium/ui/ozone/demo/gl_renderer.h b/chromium/ui/ozone/demo/gl_renderer.h index c5a6a3b2ada..62d391b0f1d 100644 --- a/chromium/ui/ozone/demo/gl_renderer.h +++ b/chromium/ui/ozone/demo/gl_renderer.h @@ -14,7 +14,6 @@ #include "ui/ozone/demo/renderer_base.h" namespace gfx { -class GpuFence; struct PresentationFeedback; } // namespace gfx @@ -39,8 +38,7 @@ class GlRenderer : public RendererBase { private: void RenderFrame(); - void PostRenderFrameTask(gfx::SwapResult result, - std::unique_ptr<gfx::GpuFence> gpu_fence); + void PostRenderFrameTask(gfx::SwapCompletionResult result); void OnPresentation(const gfx::PresentationFeedback& feedback); std::unique_ptr<PlatformWindowSurface> window_surface_; diff --git a/chromium/ui/ozone/demo/skia/skia_gl_renderer.cc b/chromium/ui/ozone/demo/skia/skia_gl_renderer.cc index ceb5cc4f5f2..c5be0bb4632 100644 --- a/chromium/ui/ozone/demo/skia/skia_gl_renderer.cc +++ b/chromium/ui/ozone/demo/skia/skia_gl_renderer.cc @@ -76,7 +76,7 @@ bool SkiaGlRenderer::Initialize() { gr_context_ = GrContext::MakeGL(std::move(native_interface), options); DCHECK(gr_context_); - PostRenderFrameTask(gfx::SwapResult::SWAP_ACK, nullptr); + PostRenderFrameTask(gfx::SwapCompletionResult(gfx::SwapResult::SWAP_ACK)); return true; } @@ -106,7 +106,7 @@ void SkiaGlRenderer::RenderFrame() { } else { Draw(sk_surface_->getCanvas(), NextFraction()); } - gr_context_->flush(); + gr_context_->flushAndSubmit(); glFinish(); if (gl_surface_->SupportsAsyncSwap()) { @@ -117,17 +117,14 @@ void SkiaGlRenderer::RenderFrame() { weak_ptr_factory_.GetWeakPtr())); } else { PostRenderFrameTask( - gl_surface_->SwapBuffers(base::BindOnce( - &SkiaGlRenderer::OnPresentation, weak_ptr_factory_.GetWeakPtr())), - nullptr); + gfx::SwapCompletionResult(gl_surface_->SwapBuffers(base::BindOnce( + &SkiaGlRenderer::OnPresentation, weak_ptr_factory_.GetWeakPtr())))); } } -void SkiaGlRenderer::PostRenderFrameTask( - gfx::SwapResult result, - std::unique_ptr<gfx::GpuFence> gpu_fence) { - if (gpu_fence) - gpu_fence->Wait(); +void SkiaGlRenderer::PostRenderFrameTask(gfx::SwapCompletionResult result) { + if (result.gpu_fence) + result.gpu_fence->Wait(); base::ThreadTaskRunnerHandle::Get()->PostTask( FROM_HERE, base::BindOnce(&SkiaGlRenderer::RenderFrame, diff --git a/chromium/ui/ozone/demo/skia/skia_gl_renderer.h b/chromium/ui/ozone/demo/skia/skia_gl_renderer.h index 8abcc67d6cf..08195eebf87 100644 --- a/chromium/ui/ozone/demo/skia/skia_gl_renderer.h +++ b/chromium/ui/ozone/demo/skia/skia_gl_renderer.h @@ -21,7 +21,6 @@ #include "ui/ozone/demo/renderer_base.h" namespace gfx { -class GpuFence; struct PresentationFeedback; } // namespace gfx @@ -47,8 +46,7 @@ class SkiaGlRenderer : public RendererBase, protected: virtual void RenderFrame(); - virtual void PostRenderFrameTask(gfx::SwapResult result, - std::unique_ptr<gfx::GpuFence>); + virtual void PostRenderFrameTask(gfx::SwapCompletionResult result); void Draw(SkCanvas* canvas, float fraction); void StartDDLRenderThreadIfNecessary(SkSurface* sk_surface); diff --git a/chromium/ui/ozone/demo/skia/skia_renderer_factory.h b/chromium/ui/ozone/demo/skia/skia_renderer_factory.h index 192c12d67af..029211cad06 100644 --- a/chromium/ui/ozone/demo/skia/skia_renderer_factory.h +++ b/chromium/ui/ozone/demo/skia/skia_renderer_factory.h @@ -7,6 +7,7 @@ #include <memory> +#include "base/macros.h" #include "ui/gfx/geometry/size.h" #include "ui/gfx/native_widget_types.h" #include "ui/ozone/demo/renderer_factory.h" diff --git a/chromium/ui/ozone/demo/skia/skia_surfaceless_gl_renderer.cc b/chromium/ui/ozone/demo/skia/skia_surfaceless_gl_renderer.cc index e2ee9432d98..ec083066e53 100644 --- a/chromium/ui/ozone/demo/skia/skia_surfaceless_gl_renderer.cc +++ b/chromium/ui/ozone/demo/skia/skia_surfaceless_gl_renderer.cc @@ -244,7 +244,7 @@ void SurfacelessSkiaGlRenderer::RenderFrame() { } else { Draw(sk_surface->getCanvas(), NextFraction()); } - gr_context_->flush(); + gr_context_->flushAndSubmit(); glFinish(); if (!disable_primary_plane_) { @@ -270,9 +270,8 @@ void SurfacelessSkiaGlRenderer::RenderFrame() { } void SurfacelessSkiaGlRenderer::PostRenderFrameTask( - gfx::SwapResult result, - std::unique_ptr<gfx::GpuFence> gpu_fence) { - switch (result) { + gfx::SwapCompletionResult result) { + switch (result.swap_result) { case gfx::SwapResult::SWAP_NAK_RECREATE_BUFFERS: for (size_t i = 0; i < base::size(buffers_); ++i) { buffers_[i] = std::make_unique<BufferWrapper>(); @@ -282,7 +281,7 @@ void SurfacelessSkiaGlRenderer::PostRenderFrameTask( } FALLTHROUGH; // We want to render a new frame anyways. case gfx::SwapResult::SWAP_ACK: - SkiaGlRenderer::PostRenderFrameTask(result, std::move(gpu_fence)); + SkiaGlRenderer::PostRenderFrameTask(std::move(result)); break; case gfx::SwapResult::SWAP_FAILED: LOG(FATAL) << "Failed to swap buffers"; diff --git a/chromium/ui/ozone/demo/skia/skia_surfaceless_gl_renderer.h b/chromium/ui/ozone/demo/skia/skia_surfaceless_gl_renderer.h index e24652c26a5..469083f14dd 100644 --- a/chromium/ui/ozone/demo/skia/skia_surfaceless_gl_renderer.h +++ b/chromium/ui/ozone/demo/skia/skia_surfaceless_gl_renderer.h @@ -30,8 +30,7 @@ class SurfacelessSkiaGlRenderer : public SkiaGlRenderer { private: // SkiaGlRenderer: void RenderFrame() override; - void PostRenderFrameTask(gfx::SwapResult result, - std::unique_ptr<gfx::GpuFence>) override; + void PostRenderFrameTask(gfx::SwapCompletionResult result) override; class BufferWrapper; diff --git a/chromium/ui/ozone/demo/surfaceless_gl_renderer.cc b/chromium/ui/ozone/demo/surfaceless_gl_renderer.cc index 6117ac4f0f3..bc45833e24b 100644 --- a/chromium/ui/ozone/demo/surfaceless_gl_renderer.cc +++ b/chromium/ui/ozone/demo/surfaceless_gl_renderer.cc @@ -202,7 +202,7 @@ bool SurfacelessGlRenderer::Initialize() { use_gpu_fences_ = gl_surface_->SupportsPlaneGpuFences(); // Schedule the initial render. - PostRenderFrameTask(gfx::SwapResult::SWAP_ACK, nullptr); + PostRenderFrameTask(gfx::SwapCompletionResult(gfx::SwapResult::SWAP_ACK)); return true; } @@ -288,12 +288,11 @@ void SurfacelessGlRenderer::RenderFrame() { } void SurfacelessGlRenderer::PostRenderFrameTask( - gfx::SwapResult result, - std::unique_ptr<gfx::GpuFence> gpu_fence) { - if (gpu_fence) - gpu_fence->Wait(); + gfx::SwapCompletionResult result) { + if (result.gpu_fence) + result.gpu_fence->Wait(); - switch (result) { + switch (result.swap_result) { case gfx::SwapResult::SWAP_NAK_RECREATE_BUFFERS: for (size_t i = 0; i < base::size(buffers_); ++i) { buffers_[i] = std::make_unique<BufferWrapper>(); diff --git a/chromium/ui/ozone/demo/surfaceless_gl_renderer.h b/chromium/ui/ozone/demo/surfaceless_gl_renderer.h index ba6d12a24e5..af3a3b2c690 100644 --- a/chromium/ui/ozone/demo/surfaceless_gl_renderer.h +++ b/chromium/ui/ozone/demo/surfaceless_gl_renderer.h @@ -34,8 +34,7 @@ class SurfacelessGlRenderer : public RendererBase { private: void RenderFrame(); - void PostRenderFrameTask(gfx::SwapResult result, - std::unique_ptr<gfx::GpuFence> gpu_fence); + void PostRenderFrameTask(gfx::SwapCompletionResult result); void OnPresentation(const gfx::PresentationFeedback& feedback); class BufferWrapper { diff --git a/chromium/ui/ozone/demo/vulkan_renderer.cc b/chromium/ui/ozone/demo/vulkan_renderer.cc index 6d778ce8e98..04235e74ee3 100644 --- a/chromium/ui/ozone/demo/vulkan_renderer.cc +++ b/chromium/ui/ozone/demo/vulkan_renderer.cc @@ -10,6 +10,7 @@ #include "base/bind.h" #include "base/location.h" +#include "base/logging.h" #include "base/threading/thread_task_runner_handle.h" #include "base/trace_event/trace_event.h" #include "gpu/vulkan/init/vulkan_factory.h" |