Title: [229091] trunk/Source/WebCore
- Revision
- 229091
- Author
- za...@apple.com
- Date
- 2018-02-28 08:31:34 -0800 (Wed, 28 Feb 2018)
Log Message
Remove RenderElement::s_affectsParentBlock
https://bugs.webkit.org/show_bug.cgi?id=183187
<rdar://problem/37961079>
Reviewed by Antti Koivisto.
Remove the hack to track floating/out-of-flow changes between styleWillChange and styleDidChange.
Covered by existing tests.
* rendering/RenderElement.cpp:
(WebCore::RenderElement::styleWillChange):
(WebCore::RenderElement::styleDidChange):
* rendering/RenderElement.h:
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (229090 => 229091)
--- trunk/Source/WebCore/ChangeLog 2018-02-28 15:50:00 UTC (rev 229090)
+++ trunk/Source/WebCore/ChangeLog 2018-02-28 16:31:34 UTC (rev 229091)
@@ -1,3 +1,20 @@
+2018-02-28 Zalan Bujtas <za...@apple.com>
+
+ Remove RenderElement::s_affectsParentBlock
+ https://bugs.webkit.org/show_bug.cgi?id=183187
+ <rdar://problem/37961079>
+
+ Reviewed by Antti Koivisto.
+
+ Remove the hack to track floating/out-of-flow changes between styleWillChange and styleDidChange.
+
+ Covered by existing tests.
+
+ * rendering/RenderElement.cpp:
+ (WebCore::RenderElement::styleWillChange):
+ (WebCore::RenderElement::styleDidChange):
+ * rendering/RenderElement.h:
+
2018-02-28 Antti Koivisto <an...@apple.com>
Filter attribute selectors with selector filter
Modified: trunk/Source/WebCore/rendering/RenderElement.cpp (229090 => 229091)
--- trunk/Source/WebCore/rendering/RenderElement.cpp 2018-02-28 15:50:00 UTC (rev 229090)
+++ trunk/Source/WebCore/rendering/RenderElement.cpp 2018-02-28 16:31:34 UTC (rev 229091)
@@ -94,7 +94,6 @@
static_assert(sizeof(RenderElement) == sizeof(SameSizeAsRenderElement), "RenderElement should stay small");
-bool RenderElement::s_affectsParentBlock = false;
bool RenderElement::s_noLongerAffectsParentBlock = false;
inline RenderElement::RenderElement(ContainerNode& elementOrDocument, RenderStyle&& style, BaseTypeFlags baseTypeFlags)
@@ -749,10 +748,6 @@
downcast<RenderBox>(*this).removeFloatingOrPositionedChildFromBlockLists();
}
- s_affectsParentBlock = isFloatingOrOutOfFlowPositioned()
- && (!newStyle.isFloating() && !newStyle.hasOutOfFlowPosition())
- && parent() && (parent()->isRenderBlockFlow() || parent()->isRenderInline());
-
s_noLongerAffectsParentBlock = ((!isFloating() && newStyle.isFloating()) || (!isOutOfFlowPositioned() && newStyle.hasOutOfFlowPosition()))
&& parent() && parent()->isRenderBlock();
@@ -769,10 +764,8 @@
setHasOverflowClip(false);
setHasTransformRelatedProperty(false);
setHasReflection(false);
- } else {
- s_affectsParentBlock = false;
+ } else
s_noLongerAffectsParentBlock = false;
- }
bool newStyleSlowScroll = false;
if (newStyle.hasFixedBackgroundImage() && !settings().fixedBackgroundsPaintRelativeToDocument()) {
@@ -813,7 +806,10 @@
updateImage(oldStyle ? oldStyle->maskBoxImage().image() : nullptr, m_style.maskBoxImage().image());
updateShapeImage(oldStyle ? oldStyle->shapeOutside() : nullptr, m_style.shapeOutside());
- if (s_affectsParentBlock) {
+ bool affectsParentBlock = oldStyle && (oldStyle->isFloating() || oldStyle->hasOutOfFlowPosition())
+ && !style().isFloating() && !style().hasOutOfFlowPosition()
+ && parent() && (parent()->isRenderBlockFlow() || parent()->isRenderInline());
+ if (affectsParentBlock) {
// We have gone from not affecting the inline status of the parent flow to suddenly
// having an impact. See if there is a mismatch between the parent flow's
// childrenInline() state and our state.
Modified: trunk/Source/WebCore/rendering/RenderElement.h (229090 => 229091)
--- trunk/Source/WebCore/rendering/RenderElement.h 2018-02-28 15:50:00 UTC (rev 229090)
+++ trunk/Source/WebCore/rendering/RenderElement.h 2018-02-28 16:31:34 UTC (rev 229091)
@@ -351,7 +351,6 @@
// FIXME: Get rid of this hack.
// Store state between styleWillChange and styleDidChange
- static bool s_affectsParentBlock;
static bool s_noLongerAffectsParentBlock;
};
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes