| Index: Source/core/paint/SVGRootInlineBoxPainter.cpp
|
| diff --git a/Source/core/paint/SVGRootInlineBoxPainter.cpp b/Source/core/paint/SVGRootInlineBoxPainter.cpp
|
| index 978732e63238f6b42c261d9952ad2023d3893696..87cca0df83d20be9a1287533654f833631fb59c9 100644
|
| --- a/Source/core/paint/SVGRootInlineBoxPainter.cpp
|
| +++ b/Source/core/paint/SVGRootInlineBoxPainter.cpp
|
| @@ -24,15 +24,13 @@ void SVGRootInlineBoxPainter::paint(const PaintInfo& paintInfo, const LayoutPoin
|
| bool hasSelection = !isPrinting && m_svgRootInlineBox.selectionState() != LayoutObject::SelectionNone;
|
|
|
| PaintInfo paintInfoBeforeFiltering(paintInfo);
|
| - if (hasSelection) {
|
| + if (hasSelection && !LayoutObjectDrawingRecorder::useCachedDrawingIfPossible(*paintInfoBeforeFiltering.context, m_svgRootInlineBox.layoutObject(), paintInfoBeforeFiltering.phase)) {
|
| LayoutObjectDrawingRecorder recorder(*paintInfoBeforeFiltering.context, m_svgRootInlineBox.layoutObject(), paintInfoBeforeFiltering.phase, paintInfoBeforeFiltering.rect);
|
| - if (!recorder.canUseCachedDrawing()) {
|
| - for (InlineBox* child = m_svgRootInlineBox.firstChild(); child; child = child->nextOnLine()) {
|
| - if (child->isSVGInlineTextBox())
|
| - SVGInlineTextBoxPainter(*toSVGInlineTextBox(child)).paintSelectionBackground(paintInfoBeforeFiltering);
|
| - else if (child->isSVGInlineFlowBox())
|
| - SVGInlineFlowBoxPainter(*toSVGInlineFlowBox(child)).paintSelectionBackground(paintInfoBeforeFiltering);
|
| - }
|
| + for (InlineBox* child = m_svgRootInlineBox.firstChild(); child; child = child->nextOnLine()) {
|
| + if (child->isSVGInlineTextBox())
|
| + SVGInlineTextBoxPainter(*toSVGInlineTextBox(child)).paintSelectionBackground(paintInfoBeforeFiltering);
|
| + else if (child->isSVGInlineFlowBox())
|
| + SVGInlineFlowBoxPainter(*toSVGInlineFlowBox(child)).paintSelectionBackground(paintInfoBeforeFiltering);
|
| }
|
| }
|
|
|
|
|