Index: cc/trees/damage_tracker.cc |
diff --git a/cc/trees/damage_tracker.cc b/cc/trees/damage_tracker.cc |
index d740521408dc7658abb38bfcac7b2dc97c0da96e..51cb25c20e4f34d0fba156b4933aaf351b70a795 100644 |
--- a/cc/trees/damage_tracker.cc |
+++ b/cc/trees/damage_tracker.cc |
@@ -26,7 +26,8 @@ std::unique_ptr<DamageTracker> DamageTracker::Create() { |
} |
DamageTracker::DamageTracker() |
- : mailboxId_(0) {} |
+ : mailboxId_(0), |
+ has_property_change_on_contributing_render_surface_(false) {} |
DamageTracker::~DamageTracker() {} |
@@ -258,6 +259,7 @@ DamageTracker::DamageAccumulator DamageTracker::TrackDamageFromSurfaceMask( |
void DamageTracker::PrepareForUpdate() { |
mailboxId_++; |
damage_for_this_update_ = DamageAccumulator(); |
+ has_property_change_on_contributing_render_surface_ = false; |
} |
DamageTracker::DamageAccumulator DamageTracker::TrackDamageFromLeftoverRects() { |
@@ -421,6 +423,10 @@ void DamageTracker::AccumulateDamageFromRenderSurface( |
gfx::ToEnclosingRect(render_surface->DrawableContentRect()); |
data.Update(surface_rect_in_target_space, mailboxId_); |
+ has_property_change_on_contributing_render_surface_ |= |
weiliangc
2017/06/07 21:19:01
The flag for not able to use the texture should be
wutao
2017/06/09 02:31:32
This is a very good point.
Do you mean damage_for_
|
+ render_surface->SurfacePropertyChanged() || |
weiliangc
2017/06/07 21:19:01
SurfacePropertyChanged() seems to be ok for reusin
wutao
2017/06/09 02:31:32
Acknowledged.
|
+ render_surface->ContributingRenderSurfacePropertyChanged(); |
+ |
if (surface_is_new || render_surface->SurfacePropertyChanged()) { |
// The entire surface contributes damage. |
damage_for_this_update_.Union(surface_rect_in_target_space); |