New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 678825 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Mar 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Composited CSS mask does not clip visual overflow correctly.

Project Member Reported by trchen@chromium.org, Jan 5 2017

Issue description

http://jsbin.com/yesati/
http://jsbin.com/gukecow/

It is similar to the "nine-piece glitch" described in https://crbug.com/678669

In Skia there is no concept of layer size (the bounds passed to saveLayer serves only an optimization hint), so everything in the clip region outside of the bounding box of the mask are cleared.

In compositing code path, the mask layer is sized to whatever size m_graphicsLayer is (i.e. visual overflow of current element excluding compositing children). So when there is composited visual overflow, clamping happens with mask texture coordinate.

I think this is idiotic. It is pointless to paint/raster outside of the mask bounding box just to have it cleared later. We should always apply a hard clip with the size of the mask. For SPv1 I won't open the can of worm, but for SPv2 I think creating a clip node in addition to the effect node is the right approach to it.
 
Status: Fixed (was: Assigned)
Fixed as a side-effect of fixing SPv1 clip-path order.

Sign in to add a comment