diff options
Diffstat (limited to 'ui/compositor/layer.cc')
-rw-r--r-- | ui/compositor/layer.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/ui/compositor/layer.cc b/ui/compositor/layer.cc index 6883270..ca3f385 100644 --- a/ui/compositor/layer.cc +++ b/ui/compositor/layer.cc @@ -328,7 +328,7 @@ void Layer::SetColor(SkColor color) { } bool Layer::SchedulePaint(const gfx::Rect& invalid_rect) { - if (type_ == LAYER_SOLID_COLOR || !delegate_) + if (type_ == LAYER_SOLID_COLOR || (!delegate_ && !texture_)) return false; damaged_region_.op(invalid_rect.x(), @@ -347,7 +347,7 @@ void Layer::ScheduleDraw() { } void Layer::SendDamagedRects() { - if (delegate_ && !damaged_region_.isEmpty()) { + if ((delegate_ || texture_) && !damaged_region_.isEmpty()) { for (SkRegion::Iterator iter(damaged_region_); !iter.done(); iter.next()) { const SkIRect& sk_damaged = iter.rect(); @@ -359,7 +359,7 @@ void Layer::SendDamagedRects() { if (scale_content_ && web_layer_is_accelerated_) { damaged.Inset(-1, -1); - damaged = damaged.Intersect(bounds_); + damaged = damaged.Intersect(gfx::Rect(bounds_.size())); } gfx::Rect damaged_in_pixel = ConvertRectToPixel(this, damaged); |