Commit b1651f06 authored by Xianzhu Wang's avatar Xianzhu Wang Committed by Commit Bot

[CompositeAfterPaint] Ensure mask layer etc. draw contents

A layer with backdrop effects (special blending modes including
kDstIn for masks, and backdrop filters) should draw contents even if
it draws nothing, because the "nothing" drawing may still take effect on
the backdrop.

Change-Id: If25525a259777cf848c2af5b424d0308537be1a1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2226065
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: default avatarPhilip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#774660}
parent 98540d95
......@@ -115,9 +115,9 @@ scoped_refptr<cc::PictureLayer> ContentLayerClientImpl::UpdateCcPictureLayer(
cc_picture_layer_->SetIsDrawable(
(!layer_bounds.IsEmpty() && cc_display_item_list_->TotalOpCount()) ||
// Backdrop filters require the layer to be drawable even if the layer
// Backdrop effects require the layer to be drawable even if the layer
// draws nothing.
!layer_state.Effect().BackdropFilter().IsEmpty());
layer_state.Effect().HasBackdropEffect());
auto safe_opaque_background_color =
paint_artifact->SafeOpaqueBackgroundColor(paint_chunks);
......
......@@ -53,7 +53,6 @@ virtual/android/fullscreen/video-overlay-scroll.html [ Failure ]
# Wrong clipping of the right side of nested composited reflection with non-zero filter origin.
compositing/reflections/deeply-nested-reflections.html [ Failure ]
compositing/masks/broken-mask.html [ Failure ]
compositing/masks/mask-with-removed-filters.html [ Failure ]
external/wpt/css/css-transforms/transform3d-backface-visibility-006.html [ Failure ]
external/wpt/css/filter-effects/effect-reference-feimage-002.html [ Failure ]
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment