Chromium Code Reviews| Index: ui/compositor/layer_unittest.cc |
| diff --git a/ui/compositor/layer_unittest.cc b/ui/compositor/layer_unittest.cc |
| index 9cb80c4d9975ec224fa7bd9ad1a91b3e1d120871..7a96d32d0c53418afbf86766d4af348897b8670d 100644 |
| --- a/ui/compositor/layer_unittest.cc |
| +++ b/ui/compositor/layer_unittest.cc |
| @@ -66,6 +66,9 @@ class ColoredLayer : public Layer, public LayerDelegate { |
| canvas->DrawColor(color_); |
| } |
| + virtual void OnDelegatedFrameDamage( |
| + const gfx::Rect& damage_rect_in_dip) OVERRIDE {} |
| + |
| virtual void OnDeviceScaleFactorChanged(float device_scale_factor) OVERRIDE { |
| } |
| @@ -240,6 +243,9 @@ class TestLayerDelegate : public LayerDelegate { |
| scale_y_ = matrix.getScaleY(); |
| } |
| + virtual void OnDelegatedFrameDamage( |
| + const gfx::Rect& damage_rect_in_dip) OVERRIDE {} |
| + |
| virtual void OnDeviceScaleFactorChanged(float device_scale_factor) OVERRIDE { |
| device_scale_factor_ = device_scale_factor; |
| } |
| @@ -283,6 +289,8 @@ class DrawTreeLayerDelegate : public LayerDelegate { |
| virtual void OnPaintLayer(gfx::Canvas* canvas) OVERRIDE { |
| painted_ = true; |
| } |
| + virtual void OnDelegatedFrameDamage( |
| + const gfx::Rect& damage_rect_in_dip) OVERRIDE {} |
| virtual void OnDeviceScaleFactorChanged(float device_scale_factor) OVERRIDE { |
| } |
| virtual base::Closure PrepareForLayerBoundsChange() OVERRIDE { |
| @@ -302,10 +310,10 @@ class NullLayerDelegate : public LayerDelegate { |
| private: |
| // Overridden from LayerDelegate: |
| - virtual void OnPaintLayer(gfx::Canvas* canvas) OVERRIDE { |
| - } |
| - virtual void OnDeviceScaleFactorChanged(float device_scale_factor) OVERRIDE { |
| - } |
| + virtual void OnPaintLayer(gfx::Canvas* canvas) OVERRIDE {} |
| + virtual void OnDelegatedFrameDamage( |
| + const gfx::Rect& damage_rect_in_dip) OVERRIDE {} |
| + virtual void OnDeviceScaleFactorChanged(float device_scale_factor) OVERRIDE {} |
| virtual base::Closure PrepareForLayerBoundsChange() OVERRIDE { |
| return base::Closure(); |
| } |
| @@ -1121,6 +1129,9 @@ class SchedulePaintLayerDelegate : public LayerDelegate { |
| last_clip_rect_ = gfx::SkRectToRectF(sk_clip_rect); |
| } |
| + virtual void OnDelegatedFrameDamage( |
| + const gfx::Rect& damage_rect_in_dip) OVERRIDE {} |
| + |
| virtual void OnDeviceScaleFactorChanged(float device_scale_factor) OVERRIDE { |
| } |
| @@ -1591,4 +1602,39 @@ TEST_F(LayerWithRealCompositorTest, SnapLayerToPixels) { |
| Vector2dFTo100thPercisionString(c11->subpixel_position_offset())); |
| } |
| +class FrameDamageCheckingDelegate : public TestLayerDelegate { |
| + public: |
| + FrameDamageCheckingDelegate() : delegated_frame_damage_called_(false) {} |
| + |
| + virtual void OnDelegatedFrameDamage( |
| + const gfx::Rect& damage_rect_in_dip) OVERRIDE { |
| + delegated_frame_damage_called_ = true; |
| + delegated_frame_damage_rect_ = damage_rect_in_dip; |
| + } |
| + |
| + const gfx::Rect& delegated_frame_damage_rect() const { |
| + return delegated_frame_damage_rect_; |
| + } |
| + bool delegated_frame_damage_called() const { |
| + return delegated_frame_damage_called_; |
| + } |
| + |
| + private: |
| + gfx::Rect delegated_frame_damage_rect_; |
| + bool delegated_frame_damage_called_; |
| +}; |
|
sky
2014/08/18 23:43:57
DISALLOW_...
enne (OOO)
2014/08/19 17:08:50
Done.
|
| + |
| +TEST(LayerDelegateTest, DelegatedFrameDamage) { |
| + scoped_ptr<Layer> layer(new Layer(LAYER_TEXTURED)); |
| + gfx::Rect damage_rect(10, 1, 5, 3); |
| + |
| + FrameDamageCheckingDelegate delegate; |
| + layer->set_delegate(&delegate); |
| + |
| + EXPECT_FALSE(delegate.delegated_frame_damage_called()); |
| + layer->OnDelegatedFrameDamage(damage_rect); |
| + EXPECT_TRUE(delegate.delegated_frame_damage_called()); |
| + EXPECT_EQ(damage_rect, delegate.delegated_frame_damage_rect()); |
| +} |
| + |
| } // namespace ui |