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

Unified Diff: cc/test/fake_external_begin_frame_source.cc

Issue 801973002: Introduce CompositorDependencies for RenderWidgetCompositor. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: compdep: . Created 6 years 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
« no previous file with comments | « cc/test/fake_external_begin_frame_source.h ('k') | cc/test/layer_tree_test.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/test/fake_external_begin_frame_source.cc
diff --git a/cc/test/fake_external_begin_frame_source.cc b/cc/test/fake_external_begin_frame_source.cc
new file mode 100644
index 0000000000000000000000000000000000000000..02e0ae195a7da89d42e949cbc3ec6c1f30e5049e
--- /dev/null
+++ b/cc/test/fake_external_begin_frame_source.cc
@@ -0,0 +1,46 @@
+// Copyright 2014 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "cc/test/fake_external_begin_frame_source.h"
+
+#include "base/location.h"
+#include "base/message_loop/message_loop.h"
+#include "base/time/time.h"
+#include "cc/test/begin_frame_args_test.h"
+
+namespace cc {
+
+FakeExternalBeginFrameSource::FakeExternalBeginFrameSource(double refresh_rate)
+ : milliseconds_per_frame_(1000.0 / refresh_rate),
+ is_ready_(false),
+ weak_ptr_factory_(this) {
+ DetachFromThread();
+}
+
+FakeExternalBeginFrameSource::~FakeExternalBeginFrameSource() {
+ DCHECK(CalledOnValidThread());
+}
+
+void FakeExternalBeginFrameSource::SetClientReady() {
+ DCHECK(CalledOnValidThread());
+ is_ready_ = true;
+}
+
+void FakeExternalBeginFrameSource::OnNeedsBeginFramesChange(
+ bool needs_begin_frames) {
+ DCHECK(CalledOnValidThread());
+ if (needs_begin_frames) {
+ base::MessageLoop::current()->PostDelayedTask(
+ FROM_HERE, base::Bind(&FakeExternalBeginFrameSource::TestOnBeginFrame,
+ weak_ptr_factory_.GetWeakPtr()),
+ base::TimeDelta::FromMilliseconds(milliseconds_per_frame_));
+ }
+}
+
+void FakeExternalBeginFrameSource::TestOnBeginFrame() {
+ DCHECK(CalledOnValidThread());
+ CallOnBeginFrame(CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE));
+}
+
+} // namespace cc
« no previous file with comments | « cc/test/fake_external_begin_frame_source.h ('k') | cc/test/layer_tree_test.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698