Index: cc/output/overlay_processor.cc |
diff --git a/cc/output/overlay_processor.cc b/cc/output/overlay_processor.cc |
index 73e0a59a9b88dca34157e8f3e96ed3b99baca49d..0525d318970b38c36083de69113b977bcda00f4a 100644 |
--- a/cc/output/overlay_processor.cc |
+++ b/cc/output/overlay_processor.cc |
@@ -163,7 +163,7 @@ void OverlayProcessor::ProcessForOverlays( |
} |
} |
-// Subtract on-top overlays from the damage rect, unless the overlays use |
+// Subtract on-top opaque overlays from the damage rect, unless the overlays use |
// the backbuffer as their content (in which case, add their combined rect |
// back to the damage at the end). |
// Also subtract unoccluded underlays from the damage rect if we know that the |
@@ -176,7 +176,7 @@ void OverlayProcessor::UpdateDamageRect(OverlayCandidateList* candidates, |
gfx::Rect output_surface_overlay_damage_rect; |
gfx::Rect this_frame_underlay_rect; |
for (const OverlayCandidate& overlay : *candidates) { |
- if (overlay.plane_z_order > 0) { |
+ if (overlay.plane_z_order > 0 && overlay.is_opaque) { |
const gfx::Rect overlay_display_rect = |
ToEnclosedRect(overlay.display_rect); |
overlay_damage_rect_.Union(overlay_display_rect); |