| Index: Source/core/paint/ReplacedPainter.cpp
|
| diff --git a/Source/core/paint/ReplacedPainter.cpp b/Source/core/paint/ReplacedPainter.cpp
|
| index 241d087b231a45bc922079488a3f08ae69d20b83..3a02322323e5c50cf7da0184dce0ace4709dc1d2 100644
|
| --- a/Source/core/paint/ReplacedPainter.cpp
|
| +++ b/Source/core/paint/ReplacedPainter.cpp
|
| @@ -88,14 +88,12 @@ void ReplacedPainter::paint(const PaintInfo& paintInfo, const LayoutPoint& paint
|
| // The selection tint never gets clipped by border-radius rounding, since we want it to run right up to the edges of
|
| // surrounding content.
|
| bool drawSelectionTint = paintInfo.phase == PaintPhaseForeground && m_layoutReplaced.selectionState() != LayoutObject::SelectionNone && !m_layoutReplaced.document().printing();
|
| - if (drawSelectionTint) {
|
| + if (drawSelectionTint && !LayoutObjectDrawingRecorder::useCachedDrawingIfPossible(*paintInfo.context, m_layoutReplaced, DisplayItem::SelectionTint)) {
|
| LayoutRect selectionPaintingRect = m_layoutReplaced.localSelectionRect();
|
| selectionPaintingRect.moveBy(adjustedPaintOffset);
|
| IntRect selectionPaintingIntRect = pixelSnappedIntRect(selectionPaintingRect);
|
|
|
| LayoutObjectDrawingRecorder drawingRecorder(*paintInfo.context, m_layoutReplaced, DisplayItem::SelectionTint, selectionPaintingIntRect);
|
| - if (drawingRecorder.canUseCachedDrawing())
|
| - return;
|
| paintInfo.context->fillRect(selectionPaintingIntRect, m_layoutReplaced.selectionBackgroundColor());
|
| }
|
| }
|
|
|