| Index: Source/core/layout/LayoutObject.h
|
| diff --git a/Source/core/layout/LayoutObject.h b/Source/core/layout/LayoutObject.h
|
| index 90cabe8b419f3a523bdbf7ae55a244461e182e44..588f37a12c2ea11997f45725ae62949f512d0f11 100644
|
| --- a/Source/core/layout/LayoutObject.h
|
| +++ b/Source/core/layout/LayoutObject.h
|
| @@ -902,7 +902,6 @@ public:
|
| // coordinate space. This method deals with outlines and overflow.
|
| virtual LayoutRect absoluteClippedOverflowRect() const;
|
| virtual LayoutRect clippedOverflowRectForPaintInvalidation(const LayoutBoxModelObject* paintInvalidationContainer, const PaintInvalidationState* = nullptr) const;
|
| - virtual LayoutRect rectWithOutlineForPaintInvalidation(const LayoutBoxModelObject* paintInvalidationContainer, LayoutUnit outlineWidth, const PaintInvalidationState* = nullptr) const;
|
|
|
| // Given a rect in the object's coordinate space, compute a rect suitable for invalidating paints of
|
| // that rect in the coordinate space of paintInvalidationContainer.
|
| @@ -1017,6 +1016,8 @@ public:
|
|
|
| bool createsGroup() const { return isTransparent() || hasMask() || hasFilter() || style()->hasBlendMode(); }
|
|
|
| + // Collects rectangles that the outline of this object would be drawing along the outside of,
|
| + // even if the object isn't styled with a outline for now.
|
| virtual void addOutlineRects(Vector<LayoutRect>&, const LayoutPoint& additionalOffset) const { }
|
|
|
| // Compute a list of hit-test rectangles per layer rooted at this layoutObject.
|
| @@ -1222,6 +1223,9 @@ protected:
|
| // Remove this object and all descendants from the containing LayoutFlowThread.
|
| void removeFromLayoutFlowThread();
|
|
|
| + bool containsInlineWithOutlineAndContinuation() const { return m_bitfields.containsInlineWithOutlineAndContinuation(); }
|
| + void setContainsInlineWithOutlineAndContinuation(bool b) { m_bitfields.setContainsInlineWithOutlineAndContinuation(b); }
|
| +
|
| private:
|
| void fullyInvalidatePaint(const LayoutBoxModelObject& paintInvalidationContainer, PaintInvalidationReason, const LayoutRect& oldBounds, const LayoutRect& newBounds);
|
|
|
| @@ -1348,6 +1352,7 @@ private:
|
| , m_notifiedOfSubtreeChange(false)
|
| , m_consumesSubtreeChangeNotification(false)
|
| , m_childrenInline(false)
|
| + , m_containsInlineWithOutlineAndContinuation(false)
|
| , m_alwaysCreateLineBoxesForLayoutInline(false)
|
| , m_lastBoxDecorationBackgroundObscured(false)
|
| , m_isSlowRepaintObject(false)
|
| @@ -1358,7 +1363,7 @@ private:
|
| {
|
| }
|
|
|
| - // 32 bits have been used in the first word, and 16 in the second.
|
| + // 32 bits have been used in the first word, and 17 in the second.
|
|
|
| // Self needs layout means that this layout object is marked for a full layout.
|
| // This is the default layout but it is expensive as it recomputes everything.
|
| @@ -1450,6 +1455,9 @@ private:
|
| // from LayoutBlock
|
| ADD_BOOLEAN_BITFIELD(childrenInline, ChildrenInline);
|
|
|
| + // from LayoutBlockFlow
|
| + ADD_BOOLEAN_BITFIELD(containsInlineWithOutlineAndContinuation, ContainsInlineWithOutlineAndContinuation);
|
| +
|
| // from LayoutInline
|
| ADD_BOOLEAN_BITFIELD(alwaysCreateLineBoxesForLayoutInline, AlwaysCreateLineBoxesForLayoutInline);
|
|
|
|
|