Index: cc/trees/occlusion_tracker_unittest.cc |
diff --git a/cc/trees/occlusion_tracker_unittest.cc b/cc/trees/occlusion_tracker_unittest.cc |
index aaf655f2a7f409ff277bd60dfe83f7fe03243572..a372d5f3d5601c4b2804a2d9699a80c5e182f3d0 100644 |
--- a/cc/trees/occlusion_tracker_unittest.cc |
+++ b/cc/trees/occlusion_tracker_unittest.cc |
@@ -131,6 +131,9 @@ struct OcclusionTrackerTestMainThreadTypes { |
*layer = NULL; |
return ref; |
} |
+ static void SetForceRenderSurface(LayerType* layer, bool force) { |
+ layer->SetForceRenderSurface(force); |
+ } |
static void DestroyLayer(LayerPtrType* layer) { *layer = NULL; } |
@@ -163,6 +166,9 @@ struct OcclusionTrackerTestImplThreadTypes { |
return layer->PassAs<LayerType>(); |
} |
+ static void SetForceRenderSurface(LayerType* layer, bool force) { |
+ layer->SetHasRenderSurface(force); |
+ } |
static void DestroyLayer(LayerPtrType* layer) { layer->reset(); } |
static void RecursiveUpdateNumChildren(LayerType* layer) { |
@@ -194,6 +200,7 @@ template <typename Types> class OcclusionTrackerTest : public testing::Test { |
DCHECK(!root_.get()); |
root_ = Types::PassLayerPtr(&layer); |
+ Types::SetForceRenderSurface(layer_ptr, true); |
SetRootLayerOnMainThread(layer_ptr); |
return layer_ptr; |
@@ -216,7 +223,7 @@ template <typename Types> class OcclusionTrackerTest : public testing::Test { |
const gfx::Size& bounds) { |
typename Types::LayerType* layer = |
CreateLayer(parent, transform, position, bounds); |
- layer->SetForceRenderSurface(true); |
+ Types::SetForceRenderSurface(layer, true); |
return layer; |
} |
@@ -277,7 +284,7 @@ template <typename Types> class OcclusionTrackerTest : public testing::Test { |
bool opaque) { |
typename Types::ContentLayerType* layer = |
CreateDrawingLayer(parent, transform, position, bounds, opaque); |
- layer->SetForceRenderSurface(true); |
+ Types::SetForceRenderSurface(layer, true); |
return layer; |
} |
@@ -305,12 +312,12 @@ template <typename Types> class OcclusionTrackerTest : public testing::Test { |
CopyOutputRequest::CreateBitmapRequest(base::Bind( |
&OcclusionTrackerTest<Types>::CopyOutputCallback, |
base::Unretained(this)))); |
+ layer->SetHasRenderSurface(true); |
layer->PassCopyRequests(&requests); |
} |
void CalcDrawEtc(TestContentLayerImpl* root) { |
DCHECK(root == root_.get()); |
- DCHECK(!root->render_surface()); |
Types::RecursiveUpdateNumChildren(root); |
LayerTreeHostCommon::CalcDrawPropsImplInputsForTesting inputs( |
@@ -738,7 +745,7 @@ class OcclusionTrackerTestScaledRenderSurface |
layer1_matrix.Scale(2.0, 2.0); |
typename Types::ContentLayerType* layer1 = this->CreateDrawingLayer( |
parent, layer1_matrix, gfx::PointF(), gfx::Size(100, 100), true); |
- layer1->SetForceRenderSurface(true); |
+ Types::SetForceRenderSurface(layer1, true); |
gfx::Transform layer2_matrix; |
layer2_matrix.Translate(25.0, 25.0); |
@@ -852,9 +859,8 @@ class OcclusionTrackerTestSurfaceRotatedOffAxis |
this->identity_matrix, gfx::PointF(), gfx::Size(1000, 1000)); |
typename Types::ContentLayerType* parent = this->CreateDrawingLayer( |
root, this->identity_matrix, gfx::PointF(), gfx::Size(100, 100), true); |
- typename Types::LayerType* child = this->CreateLayer( |
+ typename Types::LayerType* child = this->CreateSurface( |
parent, child_transform, gfx::PointF(30.f, 30.f), gfx::Size(500, 500)); |
- child->SetMasksToBounds(true); |
typename Types::ContentLayerType* layer = this->CreateDrawingLayer( |
child, layer_transform, gfx::PointF(), gfx::Size(500, 500), true); |
this->CalcDrawEtc(root); |
@@ -1176,14 +1182,17 @@ class OcclusionTrackerTestFilters : public OcclusionTrackerTest<Types> { |
FilterOperations filters; |
filters.Append(FilterOperation::CreateBlurFilter(10.f)); |
blur_layer->SetFilters(filters); |
+ Types::SetForceRenderSurface(blur_layer, true); |
filters.Clear(); |
filters.Append(FilterOperation::CreateGrayscaleFilter(0.5f)); |
opaque_layer->SetFilters(filters); |
+ Types::SetForceRenderSurface(opaque_layer, true); |
filters.Clear(); |
filters.Append(FilterOperation::CreateOpacityFilter(0.5f)); |
opacity_layer->SetFilters(filters); |
+ Types::SetForceRenderSurface(opacity_layer, true); |
this->CalcDrawEtc(parent); |
@@ -2234,7 +2243,7 @@ class OcclusionTrackerTestDontOccludePixelsNeededForBackgroundFilter |
gfx::Size(100, 100), |
false); |
filtered_surface->SetBackgroundFilters(filters); |
- |
+ Types::SetForceRenderSurface(filtered_surface, true); |
gfx::Rect occlusion_rect; |
switch (i) { |
case LEFT: |
@@ -2349,6 +2358,8 @@ class OcclusionTrackerTestTwoBackgroundFiltersReduceOcclusionTwice |
filters.Append(FilterOperation::CreateBlurFilter(1.f)); |
filtered_surface1->SetBackgroundFilters(filters); |
filtered_surface2->SetBackgroundFilters(filters); |
+ Types::SetForceRenderSurface(filtered_surface1, true); |
+ Types::SetForceRenderSurface(filtered_surface2, true); |
// Save the distance of influence for the blur effect. |
int outset_top, outset_right, outset_bottom, outset_left; |
@@ -2435,6 +2446,7 @@ class OcclusionTrackerTestDontReduceOcclusionBelowBackgroundFilter |
filters.Append(FilterOperation::CreateBlurFilter(3.f)); |
filtered_surface->SetBackgroundFilters(filters); |
+ Types::SetForceRenderSurface(filtered_surface, true); |
danakj
2014/09/25 16:02:12
nit: move right beside SetBGFilters, whitespace be
awoloszyn
2014/11/25 15:48:47
Done.
|
this->CalcDrawEtc(parent); |
TestOcclusionTrackerWithClip<typename Types::LayerType> occlusion( |
@@ -2508,6 +2520,7 @@ class OcclusionTrackerTestDontReduceOcclusionIfBackgroundFilterIsOccluded |
FilterOperations filters; |
filters.Append(FilterOperation::CreateBlurFilter(3.f)); |
filtered_surface->SetBackgroundFilters(filters); |
+ Types::SetForceRenderSurface(filtered_surface, true); |
this->CalcDrawEtc(parent); |
@@ -2604,6 +2617,7 @@ class OcclusionTrackerTestReduceOcclusionWhenBackgroundFilterIsPartiallyOccluded |
FilterOperations filters; |
filters.Append(FilterOperation::CreateBlurFilter(3.f)); |
filtered_surface->SetBackgroundFilters(filters); |
+ Types::SetForceRenderSurface(filtered_surface, true); |
// Save the distance of influence for the blur effect. |
int outset_top, outset_right, outset_bottom, outset_left; |