Index: Source/core/rendering/RenderObject.h |
diff --git a/Source/core/rendering/RenderObject.h b/Source/core/rendering/RenderObject.h |
index 38281267a91f570b9e645286cc792887148f34eb..3c0056221128ebaac01707f45e64dd42bc49919a 100644 |
--- a/Source/core/rendering/RenderObject.h |
+++ b/Source/core/rendering/RenderObject.h |
@@ -320,6 +320,9 @@ private: |
void addAbsoluteRectForLayer(LayoutRect& result); |
bool requiresAnonymousTableWrappers(const RenderObject*) const; |
+ // This renderer has column-span:all, but is it really a valid column spanner? |
+ bool isValidColumnSpanAll() const; |
+ |
// Gets pseudoStyle from Shadow host(in case of input elements) |
// or from Parent element. |
PassRefPtr<RenderStyle> getUncachedPseudoStyleFromParentOrShadowHost() const; |
@@ -382,6 +385,7 @@ public: |
virtual bool isRenderImage() const { return false; } |
virtual bool isRenderInline() const { return false; } |
virtual bool isRenderMultiColumnSet() const { return false; } |
+ virtual bool isRenderMultiColumnSpannerSet() const { return false; } |
virtual bool isRenderPart() const { return false; } |
virtual bool isRenderRegion() const { return false; } |
virtual bool isRenderScrollbarPart() const { return false; } |
@@ -523,7 +527,7 @@ public: |
// RenderBlock::createAnonymousBlock(). This includes creating an anonymous |
// RenderBlock having a BLOCK or BOX display. Other classes such as RenderTextFragment |
// are not RenderBlocks and will return false. See https://bugs.webkit.org/show_bug.cgi?id=56709. |
- return isAnonymous() && (style()->display() == BLOCK || style()->display() == BOX) && style()->styleType() == NOPSEUDO && isRenderBlock() && !isListMarker() && !isRenderFlowThread() |
+ return isAnonymous() && (style()->display() == BLOCK || style()->display() == BOX) && style()->styleType() == NOPSEUDO && isRenderBlock() && !isListMarker() && !isRenderFlowThread() && !isRenderMultiColumnSet() |
&& !isRenderFullScreen() |
&& !isRenderFullScreenPlaceholder(); |
} |
@@ -645,6 +649,8 @@ public: |
Document& document() const { return m_node->document(); } |
LocalFrame* frame() const { return document().frame(); } |
+ bool isColumnSpanAll() const { return style()->columnSpan() == ColumnSpanAll && isValidColumnSpanAll(); } |
+ |
// Returns the object containing this one. Can be different from parent for positioned elements. |
// If paintInvalidationContainer and paintInvalidationContainerSkipped are not null, on return *paintInvalidationContainerSkipped |
// is true if the renderer returned is an ancestor of paintInvalidationContainer. |