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

Unified Diff: cc/test/fake_output_surface.h

Issue 1985973002: Defer compositor context creation to the thread. Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: contextfactory: . 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: cc/test/fake_output_surface.h
diff --git a/cc/test/fake_output_surface.h b/cc/test/fake_output_surface.h
index 0374a7d447dd82a752603582338e9ecba0b5fa23..1a77c57e2cd7f0742695642fd287e4262c82fad0 100644
--- a/cc/test/fake_output_surface.h
+++ b/cc/test/fake_output_surface.h
@@ -27,28 +27,30 @@ class FakeOutputSurface : public OutputSurface {
static std::unique_ptr<FakeOutputSurface> Create3d() {
return base::WrapUnique(
- new FakeOutputSurface(TestContextProvider::Create(),
- TestContextProvider::CreateWorker(), false));
+ new FakeOutputSurface(base::MakeUnique<TestContextProvider::Factory>(),
+ TestContextProvider::Create(), false));
}
static std::unique_ptr<FakeOutputSurface> Create3d(
- scoped_refptr<ContextProvider> context_provider) {
- return base::WrapUnique(new FakeOutputSurface(
- context_provider, TestContextProvider::CreateWorker(), false));
+ std::unique_ptr<ContextProvider::Factory> compositor_context_factory) {
+ return base::WrapUnique(
+ new FakeOutputSurface(std::move(compositor_context_factory),
+ TestContextProvider::Create(), false));
}
static std::unique_ptr<FakeOutputSurface> Create3d(
- scoped_refptr<ContextProvider> context_provider,
+ std::unique_ptr<ContextProvider::Factory> compositor_context_factory,
scoped_refptr<ContextProvider> worker_context_provider) {
- return base::WrapUnique(new FakeOutputSurface(
- context_provider, worker_context_provider, false));
+ return base::WrapUnique(
+ new FakeOutputSurface(std::move(compositor_context_factory),
+ std::move(worker_context_provider), false));
}
static std::unique_ptr<FakeOutputSurface> Create3d(
std::unique_ptr<TestWebGraphicsContext3D> context) {
- return base::WrapUnique(
- new FakeOutputSurface(TestContextProvider::Create(std::move(context)),
- TestContextProvider::CreateWorker(), false));
+ return base::WrapUnique(new FakeOutputSurface(
+ base::MakeUnique<TestContextProvider::Factory>(std::move(context)),
+ TestContextProvider::Create(), false));
}
static std::unique_ptr<FakeOutputSurface> CreateSoftware(
@@ -60,27 +62,28 @@ class FakeOutputSurface : public OutputSurface {
static std::unique_ptr<FakeOutputSurface>
Create3dWithResourcelessSoftwareSupport() {
return base::WrapUnique(new FakeOutputSurface(
- TestContextProvider::Create(),
+ base::MakeUnique<TestContextProvider::Factory>(),
base::WrapUnique(new SoftwareOutputDevice), false));
}
static std::unique_ptr<FakeOutputSurface> CreateDelegating3d() {
return base::WrapUnique(
- new FakeOutputSurface(TestContextProvider::Create(),
- TestContextProvider::CreateWorker(), true));
+ new FakeOutputSurface(base::MakeUnique<TestContextProvider::Factory>(),
+ TestContextProvider::Create(), true));
}
static std::unique_ptr<FakeOutputSurface> CreateDelegating3d(
- scoped_refptr<TestContextProvider> context_provider) {
- return base::WrapUnique(new FakeOutputSurface(
- context_provider, TestContextProvider::CreateWorker(), true));
+ std::unique_ptr<ContextProvider::Factory> compositor_context_factory) {
+ return base::WrapUnique(
+ new FakeOutputSurface(std::move(compositor_context_factory),
+ TestContextProvider::Create(), true));
}
static std::unique_ptr<FakeOutputSurface> CreateDelegating3d(
std::unique_ptr<TestWebGraphicsContext3D> context) {
- return base::WrapUnique(
- new FakeOutputSurface(TestContextProvider::Create(std::move(context)),
- TestContextProvider::CreateWorker(), true));
+ return base::WrapUnique(new FakeOutputSurface(
+ base::MakeUnique<TestContextProvider::Factory>(std::move(context)),
+ TestContextProvider::Create(), true));
}
static std::unique_ptr<FakeOutputSurface> CreateDelegatingSoftware(
@@ -99,7 +102,8 @@ class FakeOutputSurface : public OutputSurface {
static std::unique_ptr<FakeOutputSurface> CreateOffscreen(
std::unique_ptr<TestWebGraphicsContext3D> context) {
std::unique_ptr<FakeOutputSurface> surface(new FakeOutputSurface(
- TestContextProvider::Create(std::move(context)), false));
+ base::MakeUnique<TestContextProvider::Factory>(std::move(context)),
+ false));
surface->capabilities_.uses_default_gl_framebuffer = false;
return surface;
}
@@ -153,19 +157,21 @@ class FakeOutputSurface : public OutputSurface {
protected:
FakeOutputSurface(
- scoped_refptr<ContextProvider> context_provider,
+ std::unique_ptr<ContextProvider::Factory> compositor_context_factory,
bool delegated_rendering);
- FakeOutputSurface(scoped_refptr<ContextProvider> context_provider,
- scoped_refptr<ContextProvider> worker_context_provider,
- bool delegated_rendering);
+ FakeOutputSurface(
+ std::unique_ptr<ContextProvider::Factory> compositor_context_factory,
+ scoped_refptr<ContextProvider> worker_context_provider,
+ bool delegated_rendering);
FakeOutputSurface(std::unique_ptr<SoftwareOutputDevice> software_device,
bool delegated_rendering);
- FakeOutputSurface(scoped_refptr<ContextProvider> context_provider,
- std::unique_ptr<SoftwareOutputDevice> software_device,
- bool delegated_rendering);
+ FakeOutputSurface(
+ std::unique_ptr<ContextProvider::Factory> compositor_context_factory,
+ std::unique_ptr<SoftwareOutputDevice> software_device,
+ bool delegated_rendering);
OutputSurfaceClient* client_;
CompositorFrame last_sent_frame_;

Powered by Google App Engine
This is Rietveld 408576698