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

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

Issue 1778853003: Fold BeginFrameSource::SetClientReady into AddObserver (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@scheduler_always_external
Patch Set: Created 4 years, 9 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/fake_external_begin_frame_source.h ('k') | cc/test/layer_tree_test.cc » ('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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/fake_external_begin_frame_source.h" 5 #include "cc/test/fake_external_begin_frame_source.h"
6 6
7 #include "base/location.h" 7 #include "base/location.h"
8 #include "base/single_thread_task_runner.h" 8 #include "base/single_thread_task_runner.h"
9 #include "base/thread_task_runner_handle.h" 9 #include "base/thread_task_runner_handle.h"
10 #include "base/time/time.h" 10 #include "base/time/time.h"
11 #include "cc/test/begin_frame_args_test.h" 11 #include "cc/test/begin_frame_args_test.h"
12 12
13 namespace cc { 13 namespace cc {
14 14
15 FakeExternalBeginFrameSource::FakeExternalBeginFrameSource(double refresh_rate) 15 FakeExternalBeginFrameSource::FakeExternalBeginFrameSource(double refresh_rate)
16 : milliseconds_per_frame_(1000.0 / refresh_rate), 16 : milliseconds_per_frame_(1000.0 / refresh_rate),
17 is_ready_(false),
18 weak_ptr_factory_(this) { 17 weak_ptr_factory_(this) {
19 DetachFromThread(); 18 DetachFromThread();
20 } 19 }
21 20
22 FakeExternalBeginFrameSource::~FakeExternalBeginFrameSource() { 21 FakeExternalBeginFrameSource::~FakeExternalBeginFrameSource() {
23 DCHECK(CalledOnValidThread()); 22 DCHECK(CalledOnValidThread());
24 } 23 }
25 24
26 void FakeExternalBeginFrameSource::SetClientReady() {
27 DCHECK(CalledOnValidThread());
28 is_ready_ = true;
29 }
30
31 void FakeExternalBeginFrameSource::OnNeedsBeginFramesChanged( 25 void FakeExternalBeginFrameSource::OnNeedsBeginFramesChanged(
32 bool needs_begin_frames) { 26 bool needs_begin_frames) {
33 DCHECK(CalledOnValidThread()); 27 DCHECK(CalledOnValidThread());
34 if (needs_begin_frames) { 28 if (needs_begin_frames) {
35 PostTestOnBeginFrame(); 29 PostTestOnBeginFrame();
36 } else { 30 } else {
37 begin_frame_task_.Cancel(); 31 begin_frame_task_.Cancel();
38 } 32 }
39 } 33 }
40 34
41 void FakeExternalBeginFrameSource::TestOnBeginFrame() { 35 void FakeExternalBeginFrameSource::TestOnBeginFrame() {
42 DCHECK(CalledOnValidThread()); 36 DCHECK(CalledOnValidThread());
43 CallOnBeginFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE)); 37 CallOnBeginFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
44 PostTestOnBeginFrame(); 38 PostTestOnBeginFrame();
45 } 39 }
46 40
47 void FakeExternalBeginFrameSource::PostTestOnBeginFrame() { 41 void FakeExternalBeginFrameSource::PostTestOnBeginFrame() {
48 begin_frame_task_.Reset( 42 begin_frame_task_.Reset(
49 base::Bind(&FakeExternalBeginFrameSource::TestOnBeginFrame, 43 base::Bind(&FakeExternalBeginFrameSource::TestOnBeginFrame,
50 weak_ptr_factory_.GetWeakPtr())); 44 weak_ptr_factory_.GetWeakPtr()));
51 base::ThreadTaskRunnerHandle::Get()->PostDelayedTask( 45 base::ThreadTaskRunnerHandle::Get()->PostDelayedTask(
52 FROM_HERE, begin_frame_task_.callback(), 46 FROM_HERE, begin_frame_task_.callback(),
53 base::TimeDelta::FromMilliseconds(milliseconds_per_frame_)); 47 base::TimeDelta::FromMilliseconds(milliseconds_per_frame_));
54 } 48 }
55 49
56 } // namespace cc 50 } // namespace cc
OLDNEW
« no previous file with comments | « cc/test/fake_external_begin_frame_source.h ('k') | cc/test/layer_tree_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698