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

Unified Diff: ui/compositor/layer_unittest.cc

Issue 2514033002: Introducing SurfaceReferenceFactory (Closed)
Patch Set: fix Created 4 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
« ui/android/delegated_frame_host_android.cc ('K') | « ui/compositor/layer.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/compositor/layer_unittest.cc
diff --git a/ui/compositor/layer_unittest.cc b/ui/compositor/layer_unittest.cc
index 6af9ee719b955df2474e2d0c8357d06a986fda74..ee46a1359860e07972c4560497e8b602ec12b7d9 100644
--- a/ui/compositor/layer_unittest.cc
+++ b/ui/compositor/layer_unittest.cc
@@ -27,6 +27,7 @@
#include "cc/output/copy_output_request.h"
#include "cc/output/copy_output_result.h"
#include "cc/surfaces/surface_id.h"
+#include "cc/surfaces/surface_ref.h"
#include "cc/surfaces/surface_sequence.h"
#include "cc/test/pixel_test_utils.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -1809,10 +1810,18 @@ TEST_F(LayerWithDelegateTest, SetBoundsWhenInvisible) {
namespace {
-void FakeSatisfyCallback(const cc::SurfaceSequence&) {}
-
-void FakeRequireCallback(const cc::SurfaceId&, const cc::SurfaceSequence&) {}
+class SurfaceRef : public cc::SurfaceRefWithSequence<SurfaceRef> {
+ public:
+ SurfaceRef(const cc::SurfaceId& id, float scale, const gfx::Size& size) {
+ SetId(id);
Saman Sami 2016/11/30 18:05:52 SetMetadata
Fady Samuel 2016/11/30 19:51:30 call base constructor instead?
+ SetScale(scale);
+ SetSize(size);
+ }
+ protected:
+ void SatisfySequence(const cc::SurfaceSequence& seq) override {}
+ void RequireSequence(const cc::SurfaceSequence& seq) override {}
+};
} // namespace
TEST_F(LayerWithDelegateTest, ExternalContent) {
@@ -1833,9 +1842,9 @@ TEST_F(LayerWithDelegateTest, ExternalContent) {
// Showing surface content changes the underlying cc layer.
before = child->cc_layer_for_testing();
- child->SetShowSurface(cc::SurfaceId(), base::Bind(&FakeSatisfyCallback),
- base::Bind(&FakeRequireCallback), gfx::Size(10, 10),
- 1.0, gfx::Size(10, 10));
+ child->SetShowSurface(cc::SurfaceRefPtr(new SurfaceRef(cc::SurfaceId(), 1.0,
+ gfx::Size(10, 10))),
+ gfx::Size(10, 10));
Fady Samuel 2016/11/30 19:51:30 Do we need this extra parameter? What does it do?
EXPECT_TRUE(child->cc_layer_for_testing());
EXPECT_NE(before.get(), child->cc_layer_for_testing());
@@ -1849,14 +1858,12 @@ TEST_F(LayerWithDelegateTest, ExternalContent) {
TEST_F(LayerWithDelegateTest, ExternalContentMirroring) {
std::unique_ptr<Layer> layer(CreateLayer(LAYER_SOLID_COLOR));
- const auto satisfy_callback = base::Bind(&FakeSatisfyCallback);
- const auto require_callback = base::Bind(&FakeRequireCallback);
-
cc::SurfaceId surface_id(
cc::FrameSinkId(0, 1),
cc::LocalFrameId(2, base::UnguessableToken::Create()));
- layer->SetShowSurface(surface_id, satisfy_callback, require_callback,
- gfx::Size(10, 10), 1.0f, gfx::Size(10, 10));
+ layer->SetShowSurface(
+ cc::SurfaceRefPtr(new SurfaceRef(surface_id, 1.0f, gfx::Size(10, 10))),
+ gfx::Size(10, 10));
const auto mirror = layer->Mirror();
auto* const cc_layer = mirror->cc_layer_for_testing();
@@ -1864,16 +1871,15 @@ TEST_F(LayerWithDelegateTest, ExternalContentMirroring) {
// Mirroring preserves surface state.
EXPECT_EQ(surface_id, surface->surface_id());
- EXPECT_TRUE(satisfy_callback.Equals(surface->satisfy_callback()));
- EXPECT_TRUE(require_callback.Equals(surface->require_callback()));
EXPECT_EQ(gfx::Size(10, 10), surface->surface_size());
EXPECT_EQ(1.0f, surface->surface_scale());
surface_id =
cc::SurfaceId(cc::FrameSinkId(1, 2),
cc::LocalFrameId(3, base::UnguessableToken::Create()));
- layer->SetShowSurface(surface_id, satisfy_callback, require_callback,
- gfx::Size(20, 20), 2.0f, gfx::Size(20, 20));
+ layer->SetShowSurface(
+ cc::SurfaceRefPtr(new SurfaceRef(surface_id, 2.0f, gfx::Size(20, 20))),
+ gfx::Size(20, 20));
// A new cc::Layer should be created for the mirror.
EXPECT_NE(cc_layer, mirror->cc_layer_for_testing());
@@ -1899,9 +1905,9 @@ TEST_F(LayerWithDelegateTest, LayerFiltersSurvival) {
// Showing surface content changes the underlying cc layer.
scoped_refptr<cc::Layer> before = layer->cc_layer_for_testing();
- layer->SetShowSurface(cc::SurfaceId(), base::Bind(&FakeSatisfyCallback),
- base::Bind(&FakeRequireCallback), gfx::Size(10, 10),
- 1.0, gfx::Size(10, 10));
+ layer->SetShowSurface(cc::SurfaceRefPtr(new SurfaceRef(cc::SurfaceId(), 1.0,
+ gfx::Size(10, 10))),
+ gfx::Size(10, 10));
EXPECT_EQ(layer->layer_grayscale(), 0.5f);
EXPECT_TRUE(layer->cc_layer_for_testing());
EXPECT_NE(before.get(), layer->cc_layer_for_testing());
@@ -2222,9 +2228,9 @@ TEST(LayerDelegateTest, DelegatedFrameDamage) {
FrameDamageCheckingDelegate delegate;
layer->set_delegate(&delegate);
- layer->SetShowSurface(cc::SurfaceId(), base::Bind(&FakeSatisfyCallback),
- base::Bind(&FakeRequireCallback), gfx::Size(10, 10),
- 1.0, gfx::Size(10, 10));
+ layer->SetShowSurface(cc::SurfaceRefPtr(new SurfaceRef(cc::SurfaceId(), 1.0,
+ gfx::Size(10, 10))),
+ gfx::Size(10, 10));
EXPECT_FALSE(delegate.delegated_frame_damage_called());
layer->OnDelegatedFrameDamage(damage_rect);
« ui/android/delegated_frame_host_android.cc ('K') | « ui/compositor/layer.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698