| OLD | NEW |
| 1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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/damage_tracker.h" | 5 #include "cc/damage_tracker.h" |
| 6 | 6 |
| 7 #include "cc/layer_impl.h" | 7 #include "cc/layer_impl.h" |
| 8 #include "cc/layer_tree_host_common.h" | 8 #include "cc/layer_tree_host_common.h" |
| 9 #include "cc/math_util.h" | 9 #include "cc/math_util.h" |
| 10 #include "cc/single_thread_proxy.h" | 10 #include "cc/single_thread_proxy.h" |
| (...skipping 543 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 554 | 554 |
| 555 // CASE 2: If the layer is removed, its entire old layer becomes exposed, no
t just the | 555 // CASE 2: If the layer is removed, its entire old layer becomes exposed, no
t just the |
| 556 // last update rect. | 556 // last update rect. |
| 557 | 557 |
| 558 // Advance one frame without damage so that we know the damage rect is not l
eftover from the previous case. | 558 // Advance one frame without damage so that we know the damage rect is not l
eftover from the previous case. |
| 559 clearDamageForAllSurfaces(root.get()); | 559 clearDamageForAllSurfaces(root.get()); |
| 560 emulateDrawingOneFrame(root.get()); | 560 emulateDrawingOneFrame(root.get()); |
| 561 EXPECT_TRUE(root->renderSurface()->damageTracker()->currentDamageRect().IsEm
pty()); | 561 EXPECT_TRUE(root->renderSurface()->damageTracker()->currentDamageRect().IsEm
pty()); |
| 562 | 562 |
| 563 // Then, test removing child1. | 563 // Then, test removing child1. |
| 564 child1->removeFromParent(); | 564 root->removeChild(child1); |
| 565 child1 = NULL; |
| 565 emulateDrawingOneFrame(root.get()); | 566 emulateDrawingOneFrame(root.get()); |
| 566 rootDamageRect = root->renderSurface()->damageTracker()->currentDamageRect()
; | 567 rootDamageRect = root->renderSurface()->damageTracker()->currentDamageRect()
; |
| 567 EXPECT_FLOAT_RECT_EQ(gfx::RectF(100, 100, 30, 30), rootDamageRect); | 568 EXPECT_FLOAT_RECT_EQ(gfx::RectF(100, 100, 30, 30), rootDamageRect); |
| 568 } | 569 } |
| 569 | 570 |
| 570 TEST_F(DamageTrackerTest, verifyDamageForNewUnchangedLayer) | 571 TEST_F(DamageTrackerTest, verifyDamageForNewUnchangedLayer) |
| 571 { | 572 { |
| 572 // If child2 is added to the layer tree, but it doesn't have any explicit da
mage of | 573 // If child2 is added to the layer tree, but it doesn't have any explicit da
mage of |
| 573 // its own, it should still indeed damage the target surface. | 574 // its own, it should still indeed damage the target surface. |
| 574 | 575 |
| (...skipping 587 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1162 EXPECT_TRUE(rootDamageRect.IsEmpty()); | 1163 EXPECT_TRUE(rootDamageRect.IsEmpty()); |
| 1163 | 1164 |
| 1164 // Damage should remain empty even after one frame, since there's yet no new
damage | 1165 // Damage should remain empty even after one frame, since there's yet no new
damage |
| 1165 emulateDrawingOneFrame(root.get()); | 1166 emulateDrawingOneFrame(root.get()); |
| 1166 rootDamageRect = root->renderSurface()->damageTracker()->currentDamageRect()
; | 1167 rootDamageRect = root->renderSurface()->damageTracker()->currentDamageRect()
; |
| 1167 EXPECT_TRUE(rootDamageRect.IsEmpty()); | 1168 EXPECT_TRUE(rootDamageRect.IsEmpty()); |
| 1168 } | 1169 } |
| 1169 | 1170 |
| 1170 } // namespace | 1171 } // namespace |
| 1171 } // namespace cc | 1172 } // namespace cc |
| OLD | NEW |