| Index: third_party/WebKit/Source/core/paint/PaintLayer.h
|
| diff --git a/third_party/WebKit/Source/core/paint/PaintLayer.h b/third_party/WebKit/Source/core/paint/PaintLayer.h
|
| index a9a813efa21cf1fa1e69c7473414735a07bbe2bc..7f508d5ba7db7c72d317ef847a465280d15535a9 100644
|
| --- a/third_party/WebKit/Source/core/paint/PaintLayer.h
|
| +++ b/third_party/WebKit/Source/core/paint/PaintLayer.h
|
| @@ -669,36 +669,16 @@ public:
|
| void setPreviousPaintResult(PaintLayerPainter::PaintResult result) { m_previousPaintResult = static_cast<unsigned>(result); ASSERT(m_previousPaintResult == static_cast<unsigned>(result)); }
|
|
|
| // Used to skip PaintPhaseDescendantOutlinesOnly for layers that have never had descendant outlines.
|
| - // The flag is set during paint invalidation on a self painting layer if any contained object has outline.
|
| - // It's cleared during painting if PaintPhaseDescendantOutlinesOnly painted nothing.
|
| - bool needsPaintPhaseDescendantOutlines() const { return m_needsPaintPhaseDescendantOutlines && !m_previousPaintPhaseDescendantOutlinesWasEmpty; }
|
| - void setNeedsPaintPhaseDescendantOutlines()
|
| - {
|
| - ASSERT(isSelfPaintingLayer());
|
| - m_needsPaintPhaseDescendantOutlines = true;
|
| - m_previousPaintPhaseDescendantOutlinesWasEmpty = false;
|
| - }
|
| - void setPreviousPaintPhaseDescendantOutlinesEmpty(bool isEmpty) { m_previousPaintPhaseDescendantOutlinesWasEmpty = isEmpty; }
|
| + // Once it's set we never clear it because it's not easy to track if all outlines have been removed.
|
| + bool needsPaintPhaseDescendantOutlines() const { return m_needsPaintPhaseDescendantOutlines; }
|
| + void setNeedsPaintPhaseDescendantOutlines() { ASSERT(isSelfPaintingLayer()); m_needsPaintPhaseDescendantOutlines = true; }
|
|
|
| // Similar to above, but for PaintPhaseFloat.
|
| - bool needsPaintPhaseFloat() const { return m_needsPaintPhaseFloat && !m_previousPaintPhaseFloatWasEmpty; }
|
| - void setNeedsPaintPhaseFloat()
|
| - {
|
| - ASSERT(isSelfPaintingLayer());
|
| - m_needsPaintPhaseFloat = true;
|
| - m_previousPaintPhaseFloatWasEmpty = false;
|
| - }
|
| - void setPreviousPaintPhaseFloatEmpty(bool isEmpty) { m_previousPaintPhaseFloatWasEmpty= isEmpty; }
|
| + bool needsPaintPhaseFloat() const { return m_needsPaintPhaseFloat; }
|
| + void setNeedsPaintPhaseFloat() { ASSERT(isSelfPaintingLayer()); m_needsPaintPhaseFloat = true; }
|
|
|
| - // Similar to above, but for PaintPhaseDescendantBlockBackgroundsOnly.
|
| - bool needsPaintPhaseDescendantBlockBackgrounds() const { return m_needsPaintPhaseDescendantBlockBackgrounds && !m_previousPaintPhaseDescendantBlockBackgroundsWasEmpty; }
|
| - void setNeedsPaintPhaseDescendantBlockBackgrounds()
|
| - {
|
| - ASSERT(isSelfPaintingLayer());
|
| - m_needsPaintPhaseDescendantBlockBackgrounds = true;
|
| - m_previousPaintPhaseDescendantBlockBackgroundsWasEmpty = false;
|
| - }
|
| - void setPreviousPaintPhaseDescendantBlockBackgroundsEmpty(bool isEmpty) { m_previousPaintPhaseDescendantBlockBackgroundsWasEmpty = isEmpty; }
|
| + bool needsPaintPhaseDescendantBlockBackgrounds() const { return m_needsPaintPhaseDescendantBlockBackgrounds; }
|
| + void setNeedsPaintPhaseDescendantBlockBackgrounds() { ASSERT(isSelfPaintingLayer()); m_needsPaintPhaseDescendantBlockBackgrounds = true; }
|
|
|
| PaintTiming* paintTiming();
|
|
|
| @@ -847,11 +827,8 @@ private:
|
| unsigned m_previousPaintResult : 1; // PaintLayerPainter::PaintResult
|
|
|
| unsigned m_needsPaintPhaseDescendantOutlines : 1;
|
| - unsigned m_previousPaintPhaseDescendantOutlinesWasEmpty : 1;
|
| unsigned m_needsPaintPhaseFloat : 1;
|
| - unsigned m_previousPaintPhaseFloatWasEmpty : 1;
|
| unsigned m_needsPaintPhaseDescendantBlockBackgrounds : 1;
|
| - unsigned m_previousPaintPhaseDescendantBlockBackgroundsWasEmpty : 1;
|
|
|
| // These bitfields are part of ancestor/descendant dependent compositing inputs.
|
| unsigned m_hasDescendantWithClipPath : 1;
|
|
|