| Index: third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp
|
| diff --git a/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp b/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp
|
| index aadab753778f42c2baff9892774d049ea66e2da3..17b1db83b8d0cdf4582a96643d1d4723d2ce2612 100644
|
| --- a/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp
|
| +++ b/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp
|
| @@ -246,19 +246,18 @@ PaintLayerPainter::PaintResult PaintLayerPainter::paintLayerContents(
|
| paintFlags & PaintLayerPaintingCompositingForegroundPhase;
|
| bool isPaintingCompositedBackground =
|
| paintFlags & PaintLayerPaintingCompositingBackgroundPhase;
|
| + bool isPaintingCompositedDecoration =
|
| + paintFlags & PaintLayerPaintingCompositingDecorationPhase;
|
| bool isPaintingOverflowContents =
|
| paintFlags & PaintLayerPaintingOverflowContents;
|
| // Outline always needs to be painted even if we have no visible content.
|
| - // Also, the outline is painted in the background phase during composited
|
| - // scrolling. If it were painted in the foreground phase, it would move with
|
| - // the scrolled content. When not composited scrolling, the outline is painted
|
| - // in the foreground phase. Since scrolled contents are moved by paint
|
| - // invalidation in this case, the outline won't get 'dragged along'.
|
| + // It used to be painted in either the foreground phase or the background
|
| + // phase. Now it is painted in the decoration phase.
|
| bool shouldPaintSelfOutline =
|
| isSelfPaintingLayer && !isPaintingOverlayScrollbars &&
|
| - ((isPaintingScrollingContent && isPaintingCompositedBackground) ||
|
| - (!isPaintingScrollingContent && isPaintingCompositedForeground)) &&
|
| + (isPaintingCompositedDecoration || !isPaintingScrollingContent) &&
|
| m_paintLayer.layoutObject()->styleRef().hasOutline();
|
| +
|
| bool shouldPaintContent = m_paintLayer.hasVisibleContent() &&
|
| isSelfPaintingLayer && !isPaintingOverlayScrollbars;
|
|
|
|
|