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

Side by Side Diff: cc/surfaces/surface_display_output_surface_unittest.cc

Issue 2304483002: Revert of Make cc::Display not own its BeginFrameSource (Closed)
Patch Set: 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 unified diff | Download patch
« no previous file with comments | « cc/surfaces/display_unittest.cc ('k') | cc/test/test_delegating_output_surface.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/surfaces/surface_display_output_surface.h" 5 #include "cc/surfaces/surface_display_output_surface.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "cc/output/renderer_settings.h" 9 #include "cc/output/renderer_settings.h"
10 #include "cc/output/texture_mailbox_deleter.h" 10 #include "cc/output/texture_mailbox_deleter.h"
(...skipping 24 matching lines...) Expand all
35 allocator_(kArbitraryClientId), 35 allocator_(kArbitraryClientId),
36 display_size_(1920, 1080), 36 display_size_(1920, 1080),
37 display_rect_(display_size_), 37 display_rect_(display_size_),
38 context_provider_(TestContextProvider::Create()) { 38 context_provider_(TestContextProvider::Create()) {
39 surface_manager_.RegisterSurfaceClientId(allocator_.client_id()); 39 surface_manager_.RegisterSurfaceClientId(allocator_.client_id());
40 40
41 std::unique_ptr<FakeOutputSurface> display_output_surface = 41 std::unique_ptr<FakeOutputSurface> display_output_surface =
42 FakeOutputSurface::Create3d(); 42 FakeOutputSurface::Create3d();
43 display_output_surface_ = display_output_surface.get(); 43 display_output_surface_ = display_output_surface.get();
44 44
45 begin_frame_source_.reset(new BackToBackBeginFrameSource( 45 std::unique_ptr<BeginFrameSource> begin_frame_source(
46 base::MakeUnique<DelayBasedTimeSource>(task_runner_.get()))); 46 new BackToBackBeginFrameSource(
47 base::MakeUnique<DelayBasedTimeSource>(task_runner_.get())));
47 48
48 int max_frames_pending = 2; 49 int max_frames_pending = 2;
49 std::unique_ptr<DisplayScheduler> scheduler(new DisplayScheduler( 50 std::unique_ptr<DisplayScheduler> scheduler(new DisplayScheduler(
50 begin_frame_source_.get(), task_runner_.get(), max_frames_pending)); 51 begin_frame_source.get(), task_runner_.get(), max_frames_pending));
51 52
52 display_.reset(new Display( 53 display_.reset(new Display(
53 &bitmap_manager_, &gpu_memory_buffer_manager_, RendererSettings(), 54 &bitmap_manager_, &gpu_memory_buffer_manager_, RendererSettings(),
54 begin_frame_source_.get(), std::move(display_output_surface), 55 std::move(begin_frame_source), std::move(display_output_surface),
55 std::move(scheduler), 56 std::move(scheduler),
56 base::MakeUnique<TextureMailboxDeleter>(task_runner_.get()))); 57 base::MakeUnique<TextureMailboxDeleter>(task_runner_.get())));
57 delegated_output_surface_.reset(new SurfaceDisplayOutputSurface( 58 delegated_output_surface_.reset(new SurfaceDisplayOutputSurface(
58 &surface_manager_, &allocator_, display_.get(), context_provider_, 59 &surface_manager_, &allocator_, display_.get(), context_provider_,
59 nullptr)); 60 nullptr));
60 61
61 delegated_output_surface_->BindToClient(&delegated_output_surface_client_); 62 delegated_output_surface_->BindToClient(&delegated_output_surface_client_);
62 display_->Resize(display_size_); 63 display_->Resize(display_size_);
63 display_->SetVisible(true); 64 display_->SetVisible(true);
64 65
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 99
99 const gfx::Size display_size_; 100 const gfx::Size display_size_;
100 const gfx::Rect display_rect_; 101 const gfx::Rect display_rect_;
101 SurfaceManager surface_manager_; 102 SurfaceManager surface_manager_;
102 TestSharedBitmapManager bitmap_manager_; 103 TestSharedBitmapManager bitmap_manager_;
103 TestGpuMemoryBufferManager gpu_memory_buffer_manager_; 104 TestGpuMemoryBufferManager gpu_memory_buffer_manager_;
104 105
105 scoped_refptr<TestContextProvider> context_provider_; 106 scoped_refptr<TestContextProvider> context_provider_;
106 FakeOutputSurface* display_output_surface_ = nullptr; 107 FakeOutputSurface* display_output_surface_ = nullptr;
107 std::unique_ptr<Display> display_; 108 std::unique_ptr<Display> display_;
108 std::unique_ptr<BeginFrameSource> begin_frame_source_;
109 FakeOutputSurfaceClient delegated_output_surface_client_; 109 FakeOutputSurfaceClient delegated_output_surface_client_;
110 std::unique_ptr<SurfaceDisplayOutputSurface> delegated_output_surface_; 110 std::unique_ptr<SurfaceDisplayOutputSurface> delegated_output_surface_;
111 }; 111 };
112 112
113 TEST_F(SurfaceDisplayOutputSurfaceTest, DamageTriggersSwapBuffers) { 113 TEST_F(SurfaceDisplayOutputSurfaceTest, DamageTriggersSwapBuffers) {
114 SwapBuffersWithDamage(display_rect_); 114 SwapBuffersWithDamage(display_rect_);
115 EXPECT_EQ(1u, display_output_surface_->num_sent_frames()); 115 EXPECT_EQ(1u, display_output_surface_->num_sent_frames());
116 task_runner_->RunUntilIdle(); 116 task_runner_->RunUntilIdle();
117 EXPECT_EQ(2u, display_output_surface_->num_sent_frames()); 117 EXPECT_EQ(2u, display_output_surface_->num_sent_frames());
118 } 118 }
(...skipping 28 matching lines...) Expand all
147 EXPECT_EQ(1u, display_output_surface_->num_sent_frames()); 147 EXPECT_EQ(1u, display_output_surface_->num_sent_frames());
148 148
149 SwapBuffersWithDamage(gfx::Rect()); 149 SwapBuffersWithDamage(gfx::Rect());
150 EXPECT_EQ(1u, display_output_surface_->num_sent_frames()); 150 EXPECT_EQ(1u, display_output_surface_->num_sent_frames());
151 task_runner_->RunUntilIdle(); 151 task_runner_->RunUntilIdle();
152 EXPECT_EQ(1u, display_output_surface_->num_sent_frames()); 152 EXPECT_EQ(1u, display_output_surface_->num_sent_frames());
153 } 153 }
154 154
155 } // namespace 155 } // namespace
156 } // namespace cc 156 } // namespace cc
OLDNEW
« no previous file with comments | « cc/surfaces/display_unittest.cc ('k') | cc/test/test_delegating_output_surface.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698