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

Side by Side Diff: cc/test/layer_tree_test.cc

Issue 1127963003: Revert of cc: Adding DidFinishImplFrame to LTHI. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 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 unified diff | Download patch
« no previous file with comments | « cc/test/layer_tree_test.h ('k') | cc/trees/layer_tree_host_impl.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 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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/test/layer_tree_test.h" 5 #include "cc/test/layer_tree_test.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/location.h" 8 #include "base/location.h"
9 #include "base/single_thread_task_runner.h" 9 #include "base/single_thread_task_runner.h"
10 #include "base/thread_task_runner_handle.h" 10 #include "base/thread_task_runner_handle.h"
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
74 main_task_runner, 74 main_task_runner,
75 impl_task_runner, 75 impl_task_runner,
76 external_begin_frame_source.Pass())); 76 external_begin_frame_source.Pass()));
77 } 77 }
78 78
79 ~ThreadProxyForTest() override {} 79 ~ThreadProxyForTest() override {}
80 80
81 private: 81 private:
82 TestHooks* test_hooks_; 82 TestHooks* test_hooks_;
83 83
84 void WillBeginImplFrame(const BeginFrameArgs& args) override {
85 ThreadProxy::WillBeginImplFrame(args);
86 test_hooks_->WillBeginImplFrame(args);
87 }
88
84 void ScheduledActionSendBeginMainFrame() override { 89 void ScheduledActionSendBeginMainFrame() override {
85 test_hooks_->ScheduledActionWillSendBeginMainFrame(); 90 test_hooks_->ScheduledActionWillSendBeginMainFrame();
86 ThreadProxy::ScheduledActionSendBeginMainFrame(); 91 ThreadProxy::ScheduledActionSendBeginMainFrame();
87 test_hooks_->ScheduledActionSendBeginMainFrame(); 92 test_hooks_->ScheduledActionSendBeginMainFrame();
88 } 93 }
89 94
90 DrawResult ScheduledActionDrawAndSwapIfPossible() override { 95 DrawResult ScheduledActionDrawAndSwapIfPossible() override {
91 DrawResult result = ThreadProxy::ScheduledActionDrawAndSwapIfPossible(); 96 DrawResult result = ThreadProxy::ScheduledActionDrawAndSwapIfPossible();
92 test_hooks_->ScheduledActionDrawAndSwapIfPossible(); 97 test_hooks_->ScheduledActionDrawAndSwapIfPossible();
93 return result; 98 return result;
(...skipping 17 matching lines...) Expand all
111 void ScheduledActionPrepareTiles() override { 116 void ScheduledActionPrepareTiles() override {
112 ThreadProxy::ScheduledActionPrepareTiles(); 117 ThreadProxy::ScheduledActionPrepareTiles();
113 test_hooks_->ScheduledActionPrepareTiles(); 118 test_hooks_->ScheduledActionPrepareTiles();
114 } 119 }
115 120
116 void ScheduledActionInvalidateOutputSurface() override { 121 void ScheduledActionInvalidateOutputSurface() override {
117 ThreadProxy::ScheduledActionInvalidateOutputSurface(); 122 ThreadProxy::ScheduledActionInvalidateOutputSurface();
118 test_hooks_->ScheduledActionInvalidateOutputSurface(); 123 test_hooks_->ScheduledActionInvalidateOutputSurface();
119 } 124 }
120 125
121 void SendBeginMainFrameNotExpectedSoon() override {
122 ThreadProxy::SendBeginMainFrameNotExpectedSoon();
123 test_hooks_->SendBeginMainFrameNotExpectedSoon();
124 }
125
126 ThreadProxyForTest( 126 ThreadProxyForTest(
127 TestHooks* test_hooks, 127 TestHooks* test_hooks,
128 LayerTreeHost* host, 128 LayerTreeHost* host,
129 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner, 129 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner,
130 scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner, 130 scoped_refptr<base::SingleThreadTaskRunner> impl_task_runner,
131 scoped_ptr<BeginFrameSource> external_begin_frame_source) 131 scoped_ptr<BeginFrameSource> external_begin_frame_source)
132 : ThreadProxy(host, main_task_runner, 132 : ThreadProxy(host, main_task_runner,
133 impl_task_runner, 133 impl_task_runner,
134 external_begin_frame_source.Pass()), 134 external_begin_frame_source.Pass()),
135 test_hooks_(test_hooks) {} 135 test_hooks_(test_hooks) {}
(...skipping 11 matching lines...) Expand all
147 return make_scoped_ptr(new SingleThreadProxyForTest( 147 return make_scoped_ptr(new SingleThreadProxyForTest(
148 test_hooks, host, client, main_task_runner, 148 test_hooks, host, client, main_task_runner,
149 external_begin_frame_source.Pass())); 149 external_begin_frame_source.Pass()));
150 } 150 }
151 151
152 ~SingleThreadProxyForTest() override {} 152 ~SingleThreadProxyForTest() override {}
153 153
154 private: 154 private:
155 TestHooks* test_hooks_; 155 TestHooks* test_hooks_;
156 156
157 void WillBeginImplFrame(const BeginFrameArgs& args) override {
158 SingleThreadProxy::WillBeginImplFrame(args);
159 test_hooks_->WillBeginImplFrame(args);
160 }
161
157 void ScheduledActionSendBeginMainFrame() override { 162 void ScheduledActionSendBeginMainFrame() override {
158 test_hooks_->ScheduledActionWillSendBeginMainFrame(); 163 test_hooks_->ScheduledActionWillSendBeginMainFrame();
159 SingleThreadProxy::ScheduledActionSendBeginMainFrame(); 164 SingleThreadProxy::ScheduledActionSendBeginMainFrame();
160 test_hooks_->ScheduledActionSendBeginMainFrame(); 165 test_hooks_->ScheduledActionSendBeginMainFrame();
161 } 166 }
162 167
163 DrawResult ScheduledActionDrawAndSwapIfPossible() override { 168 DrawResult ScheduledActionDrawAndSwapIfPossible() override {
164 DrawResult result = 169 DrawResult result =
165 SingleThreadProxy::ScheduledActionDrawAndSwapIfPossible(); 170 SingleThreadProxy::ScheduledActionDrawAndSwapIfPossible();
166 test_hooks_->ScheduledActionDrawAndSwapIfPossible(); 171 test_hooks_->ScheduledActionDrawAndSwapIfPossible();
(...skipping 13 matching lines...) Expand all
180 void ScheduledActionBeginOutputSurfaceCreation() override { 185 void ScheduledActionBeginOutputSurfaceCreation() override {
181 SingleThreadProxy::ScheduledActionBeginOutputSurfaceCreation(); 186 SingleThreadProxy::ScheduledActionBeginOutputSurfaceCreation();
182 test_hooks_->ScheduledActionBeginOutputSurfaceCreation(); 187 test_hooks_->ScheduledActionBeginOutputSurfaceCreation();
183 } 188 }
184 189
185 void ScheduledActionPrepareTiles() override { 190 void ScheduledActionPrepareTiles() override {
186 SingleThreadProxy::ScheduledActionPrepareTiles(); 191 SingleThreadProxy::ScheduledActionPrepareTiles();
187 test_hooks_->ScheduledActionPrepareTiles(); 192 test_hooks_->ScheduledActionPrepareTiles();
188 } 193 }
189 194
190 void ScheduledActionInvalidateOutputSurface() override {
191 SingleThreadProxy::ScheduledActionInvalidateOutputSurface();
192 test_hooks_->ScheduledActionInvalidateOutputSurface();
193 }
194
195 void SendBeginMainFrameNotExpectedSoon() override {
196 SingleThreadProxy::SendBeginMainFrameNotExpectedSoon();
197 test_hooks_->SendBeginMainFrameNotExpectedSoon();
198 }
199
200 SingleThreadProxyForTest( 195 SingleThreadProxyForTest(
201 TestHooks* test_hooks, 196 TestHooks* test_hooks,
202 LayerTreeHost* host, 197 LayerTreeHost* host,
203 LayerTreeHostSingleThreadClient* client, 198 LayerTreeHostSingleThreadClient* client,
204 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner, 199 scoped_refptr<base::SingleThreadTaskRunner> main_task_runner,
205 scoped_ptr<BeginFrameSource> external_begin_frame_source) 200 scoped_ptr<BeginFrameSource> external_begin_frame_source)
206 : SingleThreadProxy(host, client, main_task_runner, 201 : SingleThreadProxy(host, client, main_task_runner,
207 external_begin_frame_source.Pass()), 202 external_begin_frame_source.Pass()),
208 test_hooks_(test_hooks) {} 203 test_hooks_(test_hooks) {}
209 }; 204 };
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 scoped_ptr<ResourcePool>* staging_resource_pool) override { 248 scoped_ptr<ResourcePool>* staging_resource_pool) override {
254 test_hooks_->CreateResourceAndTileTaskWorkerPool( 249 test_hooks_->CreateResourceAndTileTaskWorkerPool(
255 this, tile_task_worker_pool, resource_pool, staging_resource_pool); 250 this, tile_task_worker_pool, resource_pool, staging_resource_pool);
256 } 251 }
257 252
258 void WillBeginImplFrame(const BeginFrameArgs& args) override { 253 void WillBeginImplFrame(const BeginFrameArgs& args) override {
259 LayerTreeHostImpl::WillBeginImplFrame(args); 254 LayerTreeHostImpl::WillBeginImplFrame(args);
260 test_hooks_->WillBeginImplFrameOnThread(this, args); 255 test_hooks_->WillBeginImplFrameOnThread(this, args);
261 } 256 }
262 257
263 void DidFinishImplFrame() override {
264 LayerTreeHostImpl::DidFinishImplFrame();
265 test_hooks_->DidFinishImplFrameOnThread(this);
266 }
267
268 void BeginMainFrameAborted(CommitEarlyOutReason reason) override { 258 void BeginMainFrameAborted(CommitEarlyOutReason reason) override {
269 LayerTreeHostImpl::BeginMainFrameAborted(reason); 259 LayerTreeHostImpl::BeginMainFrameAborted(reason);
270 test_hooks_->BeginMainFrameAbortedOnThread(this, reason); 260 test_hooks_->BeginMainFrameAbortedOnThread(this, reason);
271 } 261 }
272 262
273 void BeginCommit() override { 263 void BeginCommit() override {
274 LayerTreeHostImpl::BeginCommit(); 264 LayerTreeHostImpl::BeginCommit();
275 test_hooks_->BeginCommitOnThread(this); 265 test_hooks_->BeginCommitOnThread(this);
276 } 266 }
277 267
(...skipping 437 matching lines...) Expand 10 before | Expand all | Expand 10 after
715 gfx::ScaleSize(root_bounds, layer_tree_host_->device_scale_factor())); 705 gfx::ScaleSize(root_bounds, layer_tree_host_->device_scale_factor()));
716 layer_tree_host_->SetViewportSize(device_root_bounds); 706 layer_tree_host_->SetViewportSize(device_root_bounds);
717 } 707 }
718 708
719 void LayerTreeTest::Timeout() { 709 void LayerTreeTest::Timeout() {
720 timed_out_ = true; 710 timed_out_ = true;
721 EndTest(); 711 EndTest();
722 } 712 }
723 713
724 void LayerTreeTest::RealEndTest() { 714 void LayerTreeTest::RealEndTest() {
725 // TODO(mithro): Make this method only end when not inside an impl frame.
726 if (layer_tree_host_ && !timed_out_ && 715 if (layer_tree_host_ && !timed_out_ &&
727 proxy()->MainFrameWillHappenForTesting()) { 716 proxy()->MainFrameWillHappenForTesting()) {
728 main_task_runner_->PostTask( 717 main_task_runner_->PostTask(
729 FROM_HERE, 718 FROM_HERE,
730 base::Bind(&LayerTreeTest::RealEndTest, main_thread_weak_ptr_)); 719 base::Bind(&LayerTreeTest::RealEndTest, main_thread_weak_ptr_));
731 return; 720 return;
732 } 721 }
733 722
734 base::MessageLoop::current()->Quit(); 723 base::MessageLoop::current()->Quit();
735 } 724 }
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after
900 LayerTreeHost* LayerTreeTest::layer_tree_host() { 889 LayerTreeHost* LayerTreeTest::layer_tree_host() {
901 // We check for a null proxy here as we sometimes ask for the layer tree host 890 // We check for a null proxy here as we sometimes ask for the layer tree host
902 // when the proxy does not exist, often for checking settings after a test has 891 // when the proxy does not exist, often for checking settings after a test has
903 // completed. For example, LTHPixelResourceTest::RunPixelResourceTest. See 892 // completed. For example, LTHPixelResourceTest::RunPixelResourceTest. See
904 // elsewhere in this file for other examples. 893 // elsewhere in this file for other examples.
905 DCHECK(!proxy() || proxy()->IsMainThread() || proxy()->IsMainThreadBlocked()); 894 DCHECK(!proxy() || proxy()->IsMainThread() || proxy()->IsMainThreadBlocked());
906 return layer_tree_host_.get(); 895 return layer_tree_host_.get();
907 } 896 }
908 897
909 } // namespace cc 898 } // namespace cc
OLDNEW
« no previous file with comments | « cc/test/layer_tree_test.h ('k') | cc/trees/layer_tree_host_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698