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

Unified Diff: cc/surfaces/surface_display_output_surface_unittest.cc

Issue 2029323004: Get rid of virtual Display::CreateScheduler. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@onscreendisplayclient
Patch Set: displaytest: ownership-all-the-things Created 4 years, 6 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/surfaces/surface_display_output_surface_unittest.cc
diff --git a/cc/surfaces/surface_display_output_surface_unittest.cc b/cc/surfaces/surface_display_output_surface_unittest.cc
index 44859b06bf6690ef0d37df45d0137ac9c6305ed3..070420cd2ea4e4e1e9c75e76cb3ffb0f2e0f3119 100644
--- a/cc/surfaces/surface_display_output_surface_unittest.cc
+++ b/cc/surfaces/surface_display_output_surface_unittest.cc
@@ -7,8 +7,10 @@
#include <memory>
#include "cc/output/renderer_settings.h"
+#include "cc/output/texture_mailbox_deleter.h"
#include "cc/scheduler/begin_frame_source.h"
#include "cc/surfaces/display.h"
+#include "cc/surfaces/display_scheduler.h"
#include "cc/surfaces/surface_id_allocator.h"
#include "cc/surfaces/surface_manager.h"
#include "cc/test/fake_output_surface.h"
@@ -27,7 +29,6 @@ class SurfaceDisplayOutputSurfaceTest : public testing::Test {
SurfaceDisplayOutputSurfaceTest()
: now_src_(new base::SimpleTestTickClock()),
task_runner_(new OrderedSimpleTaskRunner(now_src_.get(), true)),
- begin_frame_source_(new BackToBackBeginFrameSource(task_runner_.get())),
allocator_(0),
display_size_(1920, 1080),
display_rect_(display_size_),
@@ -37,19 +38,24 @@ class SurfaceDisplayOutputSurfaceTest : public testing::Test {
std::unique_ptr<FakeOutputSurface> display_output_surface =
FakeOutputSurface::Create3d();
display_output_surface_ = display_output_surface.get();
- display_output_surface_->set_max_frames_pending(2);
- display_.reset(new Display(&surface_manager_, &bitmap_manager_,
- &gpu_memory_buffer_manager_, renderer_settings_,
- allocator_.id_namespace(), task_runner_.get(),
- std::move(display_output_surface)));
+ std::unique_ptr<BeginFrameSource> begin_frame_source(
+ new BackToBackBeginFrameSource(task_runner_.get()));
+
+ int max_frames_pending = 2;
+ std::unique_ptr<DisplayScheduler> scheduler(new DisplayScheduler(
+ begin_frame_source.get(), task_runner_.get(), max_frames_pending));
+
+ display_.reset(new Display(
+ &surface_manager_, &bitmap_manager_, &gpu_memory_buffer_manager_,
+ renderer_settings_, allocator_.id_namespace(),
+ std::move(begin_frame_source), std::move(display_output_surface),
+ std::move(scheduler),
+ base::MakeUnique<TextureMailboxDeleter>(task_runner_.get())));
delegated_output_surface_.reset(new SurfaceDisplayOutputSurface(
&surface_manager_, &allocator_, display_.get(), context_provider_,
nullptr));
- // Set the Display's begin frame source like a real browser compositor
- // output surface would.
- display_->SetBeginFrameSource(begin_frame_source_.get());
delegated_output_surface_->BindToClient(&delegated_output_surface_client_);
display_->Resize(display_size_);
@@ -85,7 +91,6 @@ class SurfaceDisplayOutputSurfaceTest : public testing::Test {
protected:
std::unique_ptr<base::SimpleTestTickClock> now_src_;
scoped_refptr<OrderedSimpleTaskRunner> task_runner_;
- std::unique_ptr<BackToBackBeginFrameSource> begin_frame_source_;
SurfaceIdAllocator allocator_;
const gfx::Size display_size_;

Powered by Google App Engine
This is Rietveld 408576698