DescriptionRepaint non-stacking-context composited children when they scroll.
When a PaintLayerScrollableArea is not using composited scrolling, it must
usually issue a paint invalidation for every scroll, but it can skip the
invalidation if all scrolling content is composited. This optimization was
added by http://crrev.com/27239004.
However, one subtlety was not accounted for: a composited child that is not a
stacking context paints negative z-index content into the GraphicsLayer of the
nearest stacking-context ancestor. If we have such a child, we must still issue
the invalidation.
Note that any any transform-related property creates a stacking context (see
call to setZIndex(0) in StyleAdjuster::adjustComputedStyle), so this will not
de-optimize scrollers that force compositing with translateZ(0) or similar.
BUG=596060
Committed: https://crrev.com/188d4f93b86d9640ccf1f05f85e08694e358fc14
Cr-Commit-Position: refs/heads/master@{#402612}
Patch Set 1 : '' #Patch Set 2 : Add test. #
Total comments: 2
Messages
Total messages: 21 (11 generated)
|