Make the various shouldApplyContainment() functions member functions on RenderElement
https://bugs.webkit.org/show_bug.cgi?id=240156
Reviewed by Alan Bujtas.
These were free functions, but make more sense as member functions on RenderElement
since most callers passed `*this`. Just one call site needs to downcast<> to
RenderElement.
No behavior change.
* rendering/GridTrackSizingAlgorithm.cpp:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeIntrinsicLogicalWidths const):
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths const):
(WebCore::RenderBlock::firstLineBaseline const):
(WebCore::RenderBlock::inlineBlockBaseline const):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::computeIntrinsicLogicalWidths const):
(WebCore::RenderBlockFlow::adjustBlockChildForPagination):
(WebCore::RenderBlockFlow::adjustSizeContainmentChildForPagination):
(WebCore::RenderBlockFlow::firstLineBaseline const):
(WebCore::RenderBlockFlow::inlineBlockBaseline const):
(WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths const):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleDidChange):
(WebCore::RenderBox::updateLogicalHeight):
(WebCore::RenderBox::isUnsplittableForPagination const):
(WebCore::RenderBox::layoutOverflowRectForPropagation const):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::updateFromStyle):
* rendering/RenderButton.cpp:
(WebCore::RenderButton::baselinePosition const):
* rendering/RenderCounter.cpp:
(WebCore::makeCounterNode):
(WebCore::RenderCounter::rendererSubtreeAttached):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::computeIntrinsicLogicalWidths const):
* rendering/RenderElement.h:
(WebCore::RenderElement::canContainFixedPositionObjects const):
(WebCore::RenderElement::canContainAbsolutelyPositionedObjects const):
(WebCore::RenderElement::shouldApplyLayoutContainment const):
(WebCore::RenderElement::shouldApplySizeContainment const):
(WebCore::RenderElement::shouldApplyInlineSizeContainment const):
(WebCore::RenderElement::shouldApplyStyleContainment const):
(WebCore::RenderElement::shouldApplyPaintContainment const):
(WebCore::RenderElement::shouldApplyAnyContainment const):
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::computeIntrinsicLogicalWidths const):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::computeIntrinsicLogicalWidths const):
(WebCore::RenderFlexibleBox::firstLineBaseline const):
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutBlock):
(WebCore::RenderGrid::computeEmptyTracksForAutoRepeat const):
(WebCore::RenderGrid::firstLineBaseline const):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::computeIntrinsicRatioInformation const):
* rendering/RenderInline.h:
* rendering/RenderLayer.cpp:
(WebCore::canCreateStackingContext):
(WebCore::RenderLayer::shouldBeCSSStackingContext const):
(WebCore::RenderLayer::setAncestorChainHasSelfPaintingLayerDescendant):
(WebCore::RenderLayer::setAncestorChainHasVisibleDescendant):
(WebCore::RenderLayer::calculateClipRects const):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::computeIntrinsicLogicalWidths const):
(WebCore::RenderListBox::baselinePosition const):
* rendering/RenderMenuList.cpp:
(RenderMenuList::computeIntrinsicLogicalWidths const):
* rendering/RenderObject.cpp:
(WebCore::objectIsRelayoutBoundary):
(WebCore::shouldApplyLayoutContainment): Deleted.
(WebCore::shouldApplySizeContainment): Deleted.
(WebCore::shouldApplyInlineSizeContainment): Deleted.
(WebCore::shouldApplyStyleContainment): Deleted.
(WebCore::shouldApplyPaintContainment): Deleted.
(WebCore::shouldApplyAnyContainment): Deleted.
* rendering/RenderObject.h:
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computeAspectRatioInformationForRenderBox const):
(WebCore::RenderReplaced::computeIntrinsicRatioInformation const):
* rendering/RenderReplaced.h:
* rendering/RenderSlider.cpp:
(WebCore::RenderSlider::computeIntrinsicLogicalWidths const):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::firstLineBaseline const):
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::computeIntrinsicLogicalWidths const):
* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::calculateIntrinsicSize):
* rendering/RenderView.cpp:
(WebCore::RenderView::rendererForRootBackground const):
* rendering/svg/LegacyRenderSVGRoot.cpp:
(WebCore::LegacyRenderSVGRoot::computeIntrinsicRatioInformation const):
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation const):
* style/ContainerQueryEvaluator.cpp:
(WebCore::Style::ContainerQueryEvaluator::evaluateSizeFeature const):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@293900 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index aef99d2..c6415a8 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,105 @@
+2022-05-06 Simon Fraser <simon.fraser@apple.com>
+
+ Make the various shouldApplyContainment() functions member functions on RenderElement
+ https://bugs.webkit.org/show_bug.cgi?id=240156
+
+ Reviewed by Alan Bujtas.
+
+ These were free functions, but make more sense as member functions on RenderElement
+ since most callers passed `*this`. Just one call site needs to downcast<> to
+ RenderElement.
+
+ No behavior change.
+
+ * rendering/GridTrackSizingAlgorithm.cpp:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::computeIntrinsicLogicalWidths const):
+ (WebCore::RenderBlock::computeBlockPreferredLogicalWidths const):
+ (WebCore::RenderBlock::firstLineBaseline const):
+ (WebCore::RenderBlock::inlineBlockBaseline const):
+ * rendering/RenderBlockFlow.cpp:
+ (WebCore::RenderBlockFlow::computeIntrinsicLogicalWidths const):
+ (WebCore::RenderBlockFlow::adjustBlockChildForPagination):
+ (WebCore::RenderBlockFlow::adjustSizeContainmentChildForPagination):
+ (WebCore::RenderBlockFlow::firstLineBaseline const):
+ (WebCore::RenderBlockFlow::inlineBlockBaseline const):
+ (WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths const):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::styleDidChange):
+ (WebCore::RenderBox::updateLogicalHeight):
+ (WebCore::RenderBox::isUnsplittableForPagination const):
+ (WebCore::RenderBox::layoutOverflowRectForPropagation const):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::updateFromStyle):
+ * rendering/RenderButton.cpp:
+ (WebCore::RenderButton::baselinePosition const):
+ * rendering/RenderCounter.cpp:
+ (WebCore::makeCounterNode):
+ (WebCore::RenderCounter::rendererSubtreeAttached):
+ * rendering/RenderDeprecatedFlexibleBox.cpp:
+ (WebCore::RenderDeprecatedFlexibleBox::computeIntrinsicLogicalWidths const):
+ * rendering/RenderElement.h:
+ (WebCore::RenderElement::canContainFixedPositionObjects const):
+ (WebCore::RenderElement::canContainAbsolutelyPositionedObjects const):
+ (WebCore::RenderElement::shouldApplyLayoutContainment const):
+ (WebCore::RenderElement::shouldApplySizeContainment const):
+ (WebCore::RenderElement::shouldApplyInlineSizeContainment const):
+ (WebCore::RenderElement::shouldApplyStyleContainment const):
+ (WebCore::RenderElement::shouldApplyPaintContainment const):
+ (WebCore::RenderElement::shouldApplyAnyContainment const):
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::computeIntrinsicLogicalWidths const):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::computeIntrinsicLogicalWidths const):
+ (WebCore::RenderFlexibleBox::firstLineBaseline const):
+ * rendering/RenderGrid.cpp:
+ (WebCore::RenderGrid::layoutBlock):
+ (WebCore::RenderGrid::computeEmptyTracksForAutoRepeat const):
+ (WebCore::RenderGrid::firstLineBaseline const):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::computeIntrinsicRatioInformation const):
+ * rendering/RenderInline.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::canCreateStackingContext):
+ (WebCore::RenderLayer::shouldBeCSSStackingContext const):
+ (WebCore::RenderLayer::setAncestorChainHasSelfPaintingLayerDescendant):
+ (WebCore::RenderLayer::setAncestorChainHasVisibleDescendant):
+ (WebCore::RenderLayer::calculateClipRects const):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::computeIntrinsicLogicalWidths const):
+ (WebCore::RenderListBox::baselinePosition const):
+ * rendering/RenderMenuList.cpp:
+ (RenderMenuList::computeIntrinsicLogicalWidths const):
+ * rendering/RenderObject.cpp:
+ (WebCore::objectIsRelayoutBoundary):
+ (WebCore::shouldApplyLayoutContainment): Deleted.
+ (WebCore::shouldApplySizeContainment): Deleted.
+ (WebCore::shouldApplyInlineSizeContainment): Deleted.
+ (WebCore::shouldApplyStyleContainment): Deleted.
+ (WebCore::shouldApplyPaintContainment): Deleted.
+ (WebCore::shouldApplyAnyContainment): Deleted.
+ * rendering/RenderObject.h:
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::computeAspectRatioInformationForRenderBox const):
+ (WebCore::RenderReplaced::computeIntrinsicRatioInformation const):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::computeIntrinsicLogicalWidths const):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::firstLineBaseline const):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::computeIntrinsicLogicalWidths const):
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::calculateIntrinsicSize):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::rendererForRootBackground const):
+ * rendering/svg/LegacyRenderSVGRoot.cpp:
+ (WebCore::LegacyRenderSVGRoot::computeIntrinsicRatioInformation const):
+ * rendering/svg/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::computeIntrinsicRatioInformation const):
+ * style/ContainerQueryEvaluator.cpp:
+ (WebCore::Style::ContainerQueryEvaluator::evaluateSizeFeature const):
+
2022-05-06 Jer Noble <jer.noble@apple.com>
[Cocoa] Seeking into a xHE-AAC track backed by a SourceBuffer can stall playback
diff --git a/Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp b/Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp
index 901a783..bd76d46 100644
--- a/Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp
+++ b/Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp
@@ -1045,8 +1045,8 @@
double findUsedFlexFraction(Vector<unsigned>& flexibleSizedTracksIndex, GridTrackSizingDirection, std::optional<LayoutUnit> freeSpace) const override;
bool recomputeUsedFlexFractionIfNeeded(double& flexFraction, LayoutUnit& totalGrowth) const override;
LayoutUnit freeSpaceForStretchAutoTracksStep() const override;
- bool isComputingSizeContainment() const override { return shouldApplySizeContainment(*renderGrid()); }
- bool isComputingInlineSizeContainment() const override { return shouldApplyInlineSizeContainment(*renderGrid()); }
+ bool isComputingSizeContainment() const override { return renderGrid()->shouldApplySizeContainment(); }
+ bool isComputingInlineSizeContainment() const override { return renderGrid()->shouldApplyInlineSizeContainment(); }
void accumulateFlexFraction(double& flexFraction, GridIterator&, GridTrackSizingDirection outermostDirection, HashSet<RenderBox*>& itemsSet) const;
};
diff --git a/Source/WebCore/rendering/RenderBlock.cpp b/Source/WebCore/rendering/RenderBlock.cpp
index 47ed24e..ce7bf15 100644
--- a/Source/WebCore/rendering/RenderBlock.cpp
+++ b/Source/WebCore/rendering/RenderBlock.cpp
@@ -2258,7 +2258,7 @@
void RenderBlock::computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const
{
ASSERT(!childrenInline());
- auto shouldIgnoreDescendantContentForLogicalWidth = shouldApplySizeContainment(*this) || shouldApplyInlineSizeContainment(*this);
+ auto shouldIgnoreDescendantContentForLogicalWidth = shouldApplySizeContainment() || shouldApplyInlineSizeContainment();
if (!shouldIgnoreDescendantContentForLogicalWidth)
computeBlockPreferredLogicalWidths(minLogicalWidth, maxLogicalWidth);
@@ -2293,7 +2293,7 @@
void RenderBlock::computeBlockPreferredLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const
{
- ASSERT(!shouldApplyInlineSizeContainment(*this));
+ ASSERT(!shouldApplyInlineSizeContainment());
const RenderStyle& styleToUse = style();
bool nowrap = styleToUse.whiteSpace() == WhiteSpace::NoWrap;
@@ -2531,7 +2531,7 @@
std::optional<LayoutUnit> RenderBlock::firstLineBaseline() const
{
- if (shouldApplyLayoutContainment(*this))
+ if (shouldApplyLayoutContainment())
return std::nullopt;
if (isWritingModeRoot() && !isRubyRun())
@@ -2549,7 +2549,7 @@
std::optional<LayoutUnit> RenderBlock::inlineBlockBaseline(LineDirectionMode lineDirection) const
{
- if (shouldApplyLayoutContainment(*this))
+ if (shouldApplyLayoutContainment())
return synthesizedBaselineFromBorderBox(*this, lineDirection) + (lineDirection == HorizontalLine ? marginBottom() : marginLeft());
if (isWritingModeRoot() && !isRubyRun())
diff --git a/Source/WebCore/rendering/RenderBlockFlow.cpp b/Source/WebCore/rendering/RenderBlockFlow.cpp
index 83cf5a6..43b9842 100644
--- a/Source/WebCore/rendering/RenderBlockFlow.cpp
+++ b/Source/WebCore/rendering/RenderBlockFlow.cpp
@@ -345,7 +345,7 @@
void RenderBlockFlow::computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const
{
- auto shouldIgnoreDescendantContentForLogicalWidth = shouldApplySizeContainment(*this) || shouldApplyInlineSizeContainment(*this);
+ auto shouldIgnoreDescendantContentForLogicalWidth = shouldApplySizeContainment() || shouldApplyInlineSizeContainment();
if (!shouldIgnoreDescendantContentForLogicalWidth) {
if (childrenInline())
computeInlinePreferredLogicalWidths(minLogicalWidth, maxLogicalWidth);
@@ -1523,7 +1523,7 @@
}
}
- if (shouldApplySizeContainment(child))
+ if (child.shouldApplySizeContainment())
adjustSizeContainmentChildForPagination(child, result);
// For replaced elements and scrolled elements, we want to shift them to the next page if they don't fit on the current one.
@@ -1903,7 +1903,7 @@
void RenderBlockFlow::adjustSizeContainmentChildForPagination(RenderBox& child, LayoutUnit offset)
{
- if (!shouldApplySizeContainment(child))
+ if (!child.shouldApplySizeContainment())
return;
LayoutUnit childOverflowHeight = child.isHorizontalWritingMode() ? child.layoutOverflowRect().maxY() : child.layoutOverflowRect().maxX();
@@ -2946,7 +2946,7 @@
if (isWritingModeRoot() && !isRubyRun() && !isGridItem())
return std::nullopt;
- if (shouldApplyLayoutContainment(*this))
+ if (shouldApplyLayoutContainment())
return std::nullopt;
if (!childrenInline())
@@ -2971,7 +2971,7 @@
if (isWritingModeRoot() && !isRubyRun())
return std::nullopt;
- if (shouldApplyLayoutContainment(*this))
+ if (shouldApplyLayoutContainment())
return RenderBlock::inlineBlockBaseline(lineDirection);
if (style().display() == DisplayType::InlineBlock) {
@@ -4083,7 +4083,7 @@
void RenderBlockFlow::computeInlinePreferredLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const
{
- ASSERT(!shouldApplyInlineSizeContainment(*this));
+ ASSERT(!shouldApplyInlineSizeContainment());
#if ENABLE(LAYOUT_FORMATTING_CONTEXT)
if (const_cast<RenderBlockFlow&>(*this).tryComputePreferredWidthsUsingModernPath(minLogicalWidth, maxLogicalWidth))
diff --git a/Source/WebCore/rendering/RenderBox.cpp b/Source/WebCore/rendering/RenderBox.cpp
index b5b4222..75b88ca 100644
--- a/Source/WebCore/rendering/RenderBox.cpp
+++ b/Source/WebCore/rendering/RenderBox.cpp
@@ -364,7 +364,7 @@
// Propagate the new writing mode and direction up to the RenderView.
if (!documentElementRenderer)
return;
- if (!isBodyRenderer || !(shouldApplyAnyContainment(*this) || shouldApplyAnyContainment(*documentElementRenderer))) {
+ if (!isBodyRenderer || !(shouldApplyAnyContainment() || documentElementRenderer->shouldApplyAnyContainment())) {
if (viewStyle.direction() != newStyle.direction() && (isDocElementRenderer || !documentElementRenderer->style().hasExplicitlySetDirection())) {
viewStyle.setDirection(newStyle.direction());
viewDirectionOrWritingModeChanged = true;
@@ -3088,7 +3088,7 @@
void RenderBox::updateLogicalHeight()
{
- if (shouldApplySizeContainment(*this) && !isRenderGrid()) {
+ if (shouldApplySizeContainment() && !isRenderGrid()) {
// We need the exact width of border and padding here, yet we can't use borderAndPadding* interfaces.
// Because these interfaces evetually call borderAfter/Before, and RenderBlock::borderBefore
// adds extra border to fieldset by adding intrinsicBorderForFieldset which is not needed here.
@@ -5130,7 +5130,7 @@
|| hasUnsplittableScrollingOverflow()
|| (parent() && isWritingModeRoot())
|| (isFloating() && style().styleType() == PseudoId::FirstLetter && style().initialLetterDrop() > 0)
- || shouldApplySizeContainment(*this);
+ || shouldApplySizeContainment();
}
LayoutUnit RenderBox::lineHeight(bool /*firstLine*/, LineDirectionMode direction, LinePositionMode /*linePositionMode*/) const
@@ -5198,7 +5198,7 @@
{
// Only propagate interior layout overflow if we don't completely clip it.
LayoutRect rect = borderBoxRect();
- if (!shouldApplyLayoutContainment(*this)) {
+ if (!shouldApplyLayoutContainment()) {
if (style().overflowX() == Overflow::Clip && style().overflowY() == Overflow::Visible) {
LayoutRect clippedOverflowRect = layoutOverflowRect();
clippedOverflowRect.setX(rect.x());
diff --git a/Source/WebCore/rendering/RenderBoxModelObject.cpp b/Source/WebCore/rendering/RenderBoxModelObject.cpp
index 45bdcbb..66ba885 100644
--- a/Source/WebCore/rendering/RenderBoxModelObject.cpp
+++ b/Source/WebCore/rendering/RenderBoxModelObject.cpp
@@ -211,7 +211,7 @@
setHorizontalWritingMode(styleToUse.isHorizontalWritingMode());
if (styleToUse.isFlippedBlocksWritingMode())
view().frameView().setHasFlippedBlockRenderers(true);
- setPaintContainmentApplies(shouldApplyPaintContainment(*this));
+ setPaintContainmentApplies(shouldApplyPaintContainment());
}
static LayoutSize accumulateInFlowPositionOffsets(const RenderObject* child)
diff --git a/Source/WebCore/rendering/RenderButton.cpp b/Source/WebCore/rendering/RenderButton.cpp
index 073af5c..d88b897 100644
--- a/Source/WebCore/rendering/RenderButton.cpp
+++ b/Source/WebCore/rendering/RenderButton.cpp
@@ -150,7 +150,7 @@
LayoutUnit RenderButton::baselinePosition(FontBaseline fontBaseline, bool firstLine, LineDirectionMode direction, LinePositionMode mode) const
{
- if (shouldApplyLayoutContainment(*this))
+ if (shouldApplyLayoutContainment())
return RenderFlexibleBox::baselinePosition(fontBaseline, firstLine, direction, mode);
// We cannot rely on RenderFlexibleBox::baselinePosition() because of flexboxes have some special behavior
// regarding baselines that shouldn't apply to buttons.
diff --git a/Source/WebCore/rendering/RenderCounter.cpp b/Source/WebCore/rendering/RenderCounter.cpp
index 485ce73..f7d2fd1 100644
--- a/Source/WebCore/rendering/RenderCounter.cpp
+++ b/Source/WebCore/rendering/RenderCounter.cpp
@@ -357,7 +357,7 @@
maps.add(&renderer, makeUnique<CounterMap>()).iterator->value->add(identifier, newNode.copyRef());
renderer.setHasCounterNodeMap(true);
- if (newNode->parent() || shouldApplyStyleContainment(renderer))
+ if (newNode->parent() || renderer.shouldApplyStyleContainment())
return newNode.ptr();
// Check if some nodes that were previously root nodes should become children of this node now.
@@ -365,7 +365,7 @@
auto* stayWithin = parentOrPseudoHostElement(renderer);
bool skipDescendants = false;
while ((currentRenderer = nextInPreOrder(*currentRenderer, stayWithin, skipDescendants))) {
- skipDescendants = shouldApplyStyleContainment(*currentRenderer);
+ skipDescendants = currentRenderer->shouldApplyStyleContainment();
if (!currentRenderer->hasCounterNodeMap())
continue;
auto* currentCounter = maps.find(currentRenderer)->value->get(identifier);
@@ -571,10 +571,14 @@
element = renderer.generatingElement();
if (element && !element->renderer())
return; // No need to update if the parent is not attached yet
+
bool crossedStyleContainmentBoundary = false;
for (RenderObject* descendant = &renderer; descendant; descendant = descendant->nextInPreOrder(&renderer)) {
- crossedStyleContainmentBoundary = crossedStyleContainmentBoundary || shouldApplyStyleContainment(*descendant);
- if (crossedStyleContainmentBoundary && is<RenderElement>(*descendant))
+ if (!is<RenderElement>(descendant))
+ continue;
+
+ crossedStyleContainmentBoundary = crossedStyleContainmentBoundary || downcast<RenderElement>(*descendant).shouldApplyStyleContainment();
+ if (crossedStyleContainmentBoundary)
updateCounters(downcast<RenderElement>(*descendant));
}
}
diff --git a/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp b/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp
index 1b70d21..5f29df1 100644
--- a/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp
+++ b/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp
@@ -193,7 +193,7 @@
minLogicalWidth += scrollbarWidth;
};
- if (shouldApplySizeContainment(*this)) {
+ if (shouldApplySizeContainment()) {
addScrollbarWidth();
return;
}
diff --git a/Source/WebCore/rendering/RenderElement.h b/Source/WebCore/rendering/RenderElement.h
index ddf871b..fe4c480 100644
--- a/Source/WebCore/rendering/RenderElement.h
+++ b/Source/WebCore/rendering/RenderElement.h
@@ -86,6 +86,13 @@
bool canContainAbsolutelyPositionedObjects() const;
bool canEstablishContainingBlockWithTransform() const;
+ bool shouldApplyLayoutContainment() const;
+ bool shouldApplySizeContainment() const;
+ bool shouldApplyInlineSizeContainment() const;
+ bool shouldApplyStyleContainment() const;
+ bool shouldApplyPaintContainment() const;
+ bool shouldApplyAnyContainment() const;
+
Color selectionColor(CSSPropertyID) const;
std::unique_ptr<RenderStyle> selectionPseudoStyle() const;
@@ -471,8 +478,8 @@
// FIXME: will-change should create containing blocks on inline boxes (bug 225035)
|| (isRenderBlock() && style().willChange() && style().willChange()->createsContainingBlockForOutOfFlowPositioned())
|| isSVGForeignObject()
- || shouldApplyLayoutContainment(*this)
- || shouldApplyPaintContainment(*this);
+ || shouldApplyLayoutContainment()
+ || shouldApplyPaintContainment();
}
inline bool RenderElement::canContainAbsolutelyPositionedObjects() const
@@ -482,8 +489,8 @@
// FIXME: will-change should create containing blocks on inline boxes (bug 225035)
|| (isRenderBlock() && style().willChange() && style().willChange()->createsContainingBlockForAbsolutelyPositioned())
|| isSVGForeignObject()
- || shouldApplyLayoutContainment(*this)
- || shouldApplyPaintContainment(*this)
+ || shouldApplyLayoutContainment()
+ || shouldApplyPaintContainment()
|| isRenderView();
}
@@ -492,6 +499,42 @@
return isRenderBlock() || (isTablePart() && !isRenderTableCol());
}
+inline bool RenderElement::shouldApplyLayoutContainment() const
+{
+ return style().containsLayout() && (!isInline() || isAtomicInlineLevelBox()) && !isRubyText() && (!isTablePart() || isRenderBlockFlow());
+}
+
+inline bool RenderElement::shouldApplySizeContainment() const
+{
+ return style().containsSize() && (!isInline() || isAtomicInlineLevelBox()) && !isRubyText() && (!isTablePart() || isTableCaption()) && !isTable();
+}
+
+inline bool RenderElement::shouldApplyInlineSizeContainment() const
+{
+ return style().effectiveContainment().contains(Containment::InlineSize) && (!isInline() || isAtomicInlineLevelBox()) && !isRubyText() && (!isTablePart() || isTableCaption()) && !isTable();
+}
+
+inline bool RenderElement::shouldApplyStyleContainment() const
+{
+ if (!style().containsStyle())
+ return false;
+ return (!isInline() || isAtomicInlineLevelBox()) && !isRubyText() && (!isTablePart() || isTableCaption()) && !isTable();
+}
+
+inline bool RenderElement::shouldApplyPaintContainment() const
+{
+ return style().containsPaint() && (!isInline() || isAtomicInlineLevelBox()) && !isRubyText() && (!isTablePart() || isRenderBlockFlow());
+}
+
+inline bool RenderElement::shouldApplyAnyContainment() const
+{
+ if (style().effectiveContainment().isEmpty())
+ return false;
+ if ((style().containsLayout() || style().containsPaint()) && (!isInline() || isAtomicInlineLevelBox()) && !isRubyText() && (!isTablePart() || isRenderBlockFlow()))
+ return true;
+ return (style().containsSize() || style().containsStyle()) && (!isInline() || isAtomicInlineLevelBox()) && !isRubyText() && (!isTablePart() || isTableCaption()) && !isTable();
+}
+
inline bool RenderElement::createsGroupForStyle(const RenderStyle& style)
{
return style.hasOpacity() || style.hasMask() || style.clipPath() || style.hasFilter() || style.hasBackdropFilter() || style.hasBlendMode();
diff --git a/Source/WebCore/rendering/RenderFileUploadControl.cpp b/Source/WebCore/rendering/RenderFileUploadControl.cpp
index 80899ad..af3b95f 100644
--- a/Source/WebCore/rendering/RenderFileUploadControl.cpp
+++ b/Source/WebCore/rendering/RenderFileUploadControl.cpp
@@ -198,7 +198,7 @@
void RenderFileUploadControl::computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const
{
- if (shouldApplySizeContainment(*this))
+ if (shouldApplySizeContainment())
return;
// Figure out how big the filename space needs to be for a given number of characters
// (using "0" as the nominal character).
diff --git a/Source/WebCore/rendering/RenderFlexibleBox.cpp b/Source/WebCore/rendering/RenderFlexibleBox.cpp
index 9012b88..0df1910 100644
--- a/Source/WebCore/rendering/RenderFlexibleBox.cpp
+++ b/Source/WebCore/rendering/RenderFlexibleBox.cpp
@@ -103,7 +103,7 @@
minLogicalWidth += scrollbarWidth;
};
- auto shouldIgnoreFlexItemContentForLogicalWidth = shouldApplySizeContainment(*this) || shouldApplyInlineSizeContainment(*this);
+ auto shouldIgnoreFlexItemContentForLogicalWidth = shouldApplySizeContainment() || shouldApplyInlineSizeContainment();
if (shouldIgnoreFlexItemContentForLogicalWidth) {
addScrollbarWidth();
return;
@@ -256,7 +256,7 @@
std::optional<LayoutUnit> RenderFlexibleBox::firstLineBaseline() const
{
- if (isWritingModeRoot() || m_numberOfInFlowChildrenOnFirstLine <= 0 || shouldApplyLayoutContainment(*this))
+ if (isWritingModeRoot() || m_numberOfInFlowChildrenOnFirstLine <= 0 || shouldApplyLayoutContainment())
return std::optional<LayoutUnit>();
RenderBox* baselineChild = nullptr;
int childNumber = 0;
diff --git a/Source/WebCore/rendering/RenderGrid.cpp b/Source/WebCore/rendering/RenderGrid.cpp
index 22e9818..77b1406 100644
--- a/Source/WebCore/rendering/RenderGrid.cpp
+++ b/Source/WebCore/rendering/RenderGrid.cpp
@@ -299,7 +299,7 @@
// logical width is always definite as the above call to updateLogicalWidth() properly resolves intrinsic
// sizes. We cannot do the same for heights though because many code paths inside updateLogicalHeight() require
// a previous call to setLogicalHeight() to resolve heights properly (like for positioned items for example).
- auto shouldIgnoreGridItemContentForLogicalWidth = shouldApplySizeContainment(*this) || shouldApplyInlineSizeContainment(*this);
+ auto shouldIgnoreGridItemContentForLogicalWidth = shouldApplySizeContainment() || shouldApplyInlineSizeContainment();
if (shouldIgnoreGridItemContentForLogicalWidth)
computeTrackSizesForIndefiniteSize(m_trackSizingAlgorithm, ForColumns);
else
@@ -318,7 +318,7 @@
bool shouldRecomputeHeight = false;
if (!hasDefiniteLogicalHeight) {
computeTrackSizesForIndefiniteSize(m_trackSizingAlgorithm, ForRows);
- if (shouldApplySizeContainment(*this))
+ if (shouldApplySizeContainment())
shouldRecomputeHeight = true;
} else
computeTrackSizesForDefiniteSize(ForRows, availableLogicalHeight(ExcludeMarginBorderPadding));
@@ -643,7 +643,7 @@
unsigned firstAutoRepeatTrack = insertionPoint + grid.explicitGridStart(direction);
unsigned lastAutoRepeatTrack = firstAutoRepeatTrack + grid.autoRepeatTracks(direction);
- if (!grid.hasGridItems() || shouldApplySizeContainment(*this) || shouldApplyInlineSizeContainment(*this)) {
+ if (!grid.hasGridItems() || shouldApplySizeContainment() || shouldApplyInlineSizeContainment()) {
emptyTrackIndexes = makeUnique<OrderedTrackIndexSet>();
for (unsigned trackIndex = firstAutoRepeatTrack; trackIndex < lastAutoRepeatTrack; ++trackIndex)
emptyTrackIndexes->add(trackIndex);
@@ -1433,7 +1433,7 @@
std::optional<LayoutUnit> RenderGrid::firstLineBaseline() const
{
- if (isWritingModeRoot() || !m_grid.hasGridItems() || shouldApplyLayoutContainment(*this))
+ if (isWritingModeRoot() || !m_grid.hasGridItems() || shouldApplyLayoutContainment())
return std::nullopt;
const RenderBox* baselineChild = nullptr;
diff --git a/Source/WebCore/rendering/RenderImage.cpp b/Source/WebCore/rendering/RenderImage.cpp
index 8f8395b..5da0009 100644
--- a/Source/WebCore/rendering/RenderImage.cpp
+++ b/Source/WebCore/rendering/RenderImage.cpp
@@ -858,7 +858,7 @@
void RenderImage::computeIntrinsicRatioInformation(FloatSize& intrinsicSize, double& intrinsicRatio) const
{
- ASSERT(!shouldApplySizeContainment(*this));
+ ASSERT(!shouldApplySizeContainment());
RenderReplaced::computeIntrinsicRatioInformation(intrinsicSize, intrinsicRatio);
// Our intrinsicSize is empty if we're rendering generated images with relative width/height. Figure out the right intrinsic size to use.
diff --git a/Source/WebCore/rendering/RenderInline.h b/Source/WebCore/rendering/RenderInline.h
index 43bd06b..03dd384 100644
--- a/Source/WebCore/rendering/RenderInline.h
+++ b/Source/WebCore/rendering/RenderInline.h
@@ -82,7 +82,7 @@
bool mayAffectLayout() const;
- bool requiresLayer() const override { return isInFlowPositioned() || createsGroup() || hasClipPath() || shouldApplyPaintContainment(*this) || willChangeCreatesStackingContext() || hasRunningAcceleratedAnimations(); }
+ bool requiresLayer() const override { return isInFlowPositioned() || createsGroup() || hasClipPath() || shouldApplyPaintContainment() || willChangeCreatesStackingContext() || hasRunningAcceleratedAnimations(); }
protected:
void willBeDestroyed() override;
diff --git a/Source/WebCore/rendering/RenderLayer.cpp b/Source/WebCore/rendering/RenderLayer.cpp
index 9b40782..ca5b676 100644
--- a/Source/WebCore/rendering/RenderLayer.cpp
+++ b/Source/WebCore/rendering/RenderLayer.cpp
@@ -563,7 +563,7 @@
|| renderer.isPositioned() // Note that this only creates stacking context in conjunction with explicit z-index.
|| renderer.hasReflection()
|| renderer.style().hasIsolation()
- || shouldApplyPaintContainment(renderer)
+ || renderer.shouldApplyPaintContainment()
|| !renderer.style().hasAutoUsedZIndex()
|| (renderer.style().willChange() && renderer.style().willChange()->canCreateStackingContext())
|| layer.establishesTopLayer();
@@ -595,7 +595,7 @@
bool RenderLayer::shouldBeCSSStackingContext() const
{
- return !renderer().style().hasAutoUsedZIndex() || shouldApplyPaintContainment(renderer()) || isRenderViewLayer();
+ return !renderer().style().hasAutoUsedZIndex() || renderer().shouldApplyPaintContainment() || isRenderViewLayer();
}
bool RenderLayer::setIsNormalFlowOnly(bool isNormalFlowOnly)
@@ -1100,7 +1100,7 @@
void RenderLayer::setAncestorChainHasSelfPaintingLayerDescendant()
{
for (RenderLayer* layer = this; layer; layer = layer->parent()) {
- if (shouldApplyPaintContainment(renderer())) {
+ if (renderer().shouldApplyPaintContainment()) {
m_hasSelfPaintingLayerDescendant = true;
m_hasSelfPaintingLayerDescendantDirty = false;
break;
@@ -1523,7 +1523,7 @@
void RenderLayer::setAncestorChainHasVisibleDescendant()
{
for (auto* layer = this; layer; layer = layer->parent()) {
- if (shouldApplyPaintContainment(renderer())) {
+ if (renderer().shouldApplyPaintContainment()) {
m_hasVisibleDescendant = true;
m_visibleDescendantStatusDirty = false;
break;
@@ -4652,7 +4652,7 @@
clipRects.setOverflowClipRect(intersection(newOverflowClip, clipRects.overflowClipRect()));
if (renderer().isPositioned())
clipRects.setPosClipRect(intersection(newOverflowClip, clipRects.posClipRect()));
- if (shouldApplyPaintContainment(renderer())) {
+ if (renderer().shouldApplyPaintContainment()) {
clipRects.setPosClipRect(intersection(newOverflowClip, clipRects.posClipRect()));
clipRects.setFixedClipRect(intersection(newOverflowClip, clipRects.fixedClipRect()));
}
diff --git a/Source/WebCore/rendering/RenderListBox.cpp b/Source/WebCore/rendering/RenderListBox.cpp
index d0d5017..a611aa9 100644
--- a/Source/WebCore/rendering/RenderListBox.cpp
+++ b/Source/WebCore/rendering/RenderListBox.cpp
@@ -206,7 +206,7 @@
void RenderListBox::computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const
{
- maxLogicalWidth = shouldApplySizeContainment(*this) ? 2 * optionsSpacingHorizontal : m_optionsWidth + 2 * optionsSpacingHorizontal;
+ maxLogicalWidth = shouldApplySizeContainment() ? 2 * optionsSpacingHorizontal : m_optionsWidth + 2 * optionsSpacingHorizontal;
if (m_vBar)
maxLogicalWidth += m_vBar->width();
if (!style().width().isPercentOrCalculated())
@@ -271,7 +271,7 @@
LayoutUnit RenderListBox::baselinePosition(FontBaseline baselineType, bool firstLine, LineDirectionMode lineDirection, LinePositionMode linePositionMode) const
{
auto baseline = RenderBox::baselinePosition(baselineType, firstLine, lineDirection, linePositionMode);
- if (!shouldApplyLayoutContainment(*this))
+ if (!shouldApplyLayoutContainment())
baseline -= baselineAdjustment;
return baseline;
}
diff --git a/Source/WebCore/rendering/RenderMenuList.cpp b/Source/WebCore/rendering/RenderMenuList.cpp
index 01c5966..b9992f5 100644
--- a/Source/WebCore/rendering/RenderMenuList.cpp
+++ b/Source/WebCore/rendering/RenderMenuList.cpp
@@ -317,7 +317,7 @@
void RenderMenuList::computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const
{
- maxLogicalWidth = shouldApplySizeContainment(*this) ? theme().minimumMenuListSize(style()) : std::max(m_optionsWidth, theme().minimumMenuListSize(style()));
+ maxLogicalWidth = shouldApplySizeContainment() ? theme().minimumMenuListSize(style()) : std::max(m_optionsWidth, theme().minimumMenuListSize(style()));
maxLogicalWidth += m_innerBlock->paddingLeft() + m_innerBlock->paddingRight();
if (!style().width().isPercentOrCalculated())
minLogicalWidth = maxLogicalWidth;
diff --git a/Source/WebCore/rendering/RenderObject.cpp b/Source/WebCore/rendering/RenderObject.cpp
index 61911c8..8bd8c0c 100644
--- a/Source/WebCore/rendering/RenderObject.cpp
+++ b/Source/WebCore/rendering/RenderObject.cpp
@@ -512,7 +512,7 @@
if (object->isTextControl())
return true;
- if (shouldApplyLayoutContainment(*object) && shouldApplySizeContainment(*object))
+ if (object->shouldApplyLayoutContainment() && object->shouldApplySizeContainment())
return true;
if (object->isSVGRootOrLegacySVGRoot())
@@ -2616,40 +2616,3 @@
}
#endif
-
-bool WebCore::shouldApplyLayoutContainment(const WebCore::RenderObject& renderer)
-{
- return renderer.style().containsLayout() && (!renderer.isInline() || renderer.isAtomicInlineLevelBox()) && !renderer.isRubyText() && (!renderer.isTablePart() || renderer.isRenderBlockFlow());
-}
-
-bool WebCore::shouldApplySizeContainment(const WebCore::RenderObject& renderer)
-{
- return renderer.style().containsSize() && (!renderer.isInline() || renderer.isAtomicInlineLevelBox()) && !renderer.isRubyText() && (!renderer.isTablePart() || renderer.isTableCaption()) && !renderer.isTable();
-}
-
-bool WebCore::shouldApplyInlineSizeContainment(const WebCore::RenderObject& renderer)
-{
- return renderer.style().effectiveContainment().contains(Containment::InlineSize) && (!renderer.isInline() || renderer.isAtomicInlineLevelBox()) && !renderer.isRubyText() && (!renderer.isTablePart() || renderer.isTableCaption()) && !renderer.isTable();
-}
-
-bool WebCore::shouldApplyStyleContainment(const WebCore::RenderObject& renderer)
-{
- if (!renderer.style().containsStyle())
- return false;
- return (!renderer.isInline() || renderer.isAtomicInlineLevelBox()) && !renderer.isRubyText() && (!renderer.isTablePart() || renderer.isTableCaption()) && !renderer.isTable();
-}
-
-bool WebCore::shouldApplyPaintContainment(const WebCore::RenderObject& renderer)
-{
- return renderer.style().containsPaint() && (!renderer.isInline() || renderer.isAtomicInlineLevelBox()) && !renderer.isRubyText() && (!renderer.isTablePart() || renderer.isRenderBlockFlow());
-}
-
-bool WebCore::shouldApplyAnyContainment(const WebCore::RenderObject& renderer)
-{
- if (renderer.style().effectiveContainment().isEmpty())
- return false;
- if ((renderer.style().containsLayout() || renderer.style().containsPaint()) && (!renderer.isInline() || renderer.isAtomicInlineLevelBox()) && !renderer.isRubyText() && (!renderer.isTablePart() || renderer.isRenderBlockFlow()))
- return true;
- return (renderer.style().containsSize() || renderer.style().containsStyle()) && (!renderer.isInline() || renderer.isAtomicInlineLevelBox()) && !renderer.isRubyText() && (!renderer.isTablePart() || renderer.isTableCaption()) && !renderer.isTable();
-}
-
diff --git a/Source/WebCore/rendering/RenderObject.h b/Source/WebCore/rendering/RenderObject.h
index 3f98371..6b537bc 100644
--- a/Source/WebCore/rendering/RenderObject.h
+++ b/Source/WebCore/rendering/RenderObject.h
@@ -1234,13 +1234,6 @@
void printGraphicsLayerTreeForLiveDocuments();
#endif
-bool shouldApplyLayoutContainment(const RenderObject&);
-bool shouldApplySizeContainment(const RenderObject&);
-bool shouldApplyInlineSizeContainment(const RenderObject&);
-bool shouldApplyStyleContainment(const RenderObject&);
-bool shouldApplyPaintContainment(const RenderObject&);
-bool shouldApplyAnyContainment(const RenderObject&);
-
} // namespace WebCore
#define SPECIALIZE_TYPE_TRAITS_RENDER_OBJECT(ToValueTypeName, predicate) \
diff --git a/Source/WebCore/rendering/RenderReplaced.cpp b/Source/WebCore/rendering/RenderReplaced.cpp
index 88c0ee1..c7ed341 100644
--- a/Source/WebCore/rendering/RenderReplaced.cpp
+++ b/Source/WebCore/rendering/RenderReplaced.cpp
@@ -413,7 +413,7 @@
void RenderReplaced::computeAspectRatioInformationForRenderBox(RenderBox* contentRenderer, FloatSize& constrainedSize, double& intrinsicRatio) const
{
FloatSize intrinsicSize;
- if (shouldApplySizeContainment(*this))
+ if (shouldApplySizeContainment())
RenderReplaced::computeIntrinsicRatioInformation(intrinsicSize, intrinsicRatio);
else if (contentRenderer) {
contentRenderer->computeIntrinsicRatioInformation(intrinsicSize, intrinsicRatio);
@@ -511,7 +511,7 @@
void RenderReplaced::computeIntrinsicRatioInformation(FloatSize& intrinsicSize, double& intrinsicRatio) const
{
// If there's an embeddedContentBox() of a remote, referenced document available, this code-path should never be used.
- ASSERT(!embeddedContentBox() || shouldApplySizeContainment(*this));
+ ASSERT(!embeddedContentBox() || shouldApplySizeContainment());
intrinsicSize = FloatSize(intrinsicLogicalWidth(), intrinsicLogicalHeight());
if (style().hasAspectRatio()) {
diff --git a/Source/WebCore/rendering/RenderReplaced.h b/Source/WebCore/rendering/RenderReplaced.h
index 443a12c..82c5827 100644
--- a/Source/WebCore/rendering/RenderReplaced.h
+++ b/Source/WebCore/rendering/RenderReplaced.h
@@ -42,7 +42,7 @@
LayoutSize intrinsicSize() const final
{
- if (shouldApplySizeContainment(*this))
+ if (shouldApplySizeContainment())
return LayoutSize();
return m_intrinsicSize;
}
diff --git a/Source/WebCore/rendering/RenderSlider.cpp b/Source/WebCore/rendering/RenderSlider.cpp
index 9e944be..2165b29 100644
--- a/Source/WebCore/rendering/RenderSlider.cpp
+++ b/Source/WebCore/rendering/RenderSlider.cpp
@@ -69,7 +69,7 @@
void RenderSlider::computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const
{
- if (shouldApplySizeContainment(*this))
+ if (shouldApplySizeContainment())
return;
maxLogicalWidth = defaultTrackLength * style().effectiveZoom();
if (!style().width().isPercentOrCalculated())
diff --git a/Source/WebCore/rendering/RenderTable.cpp b/Source/WebCore/rendering/RenderTable.cpp
index 5507fee..11259c4 100644
--- a/Source/WebCore/rendering/RenderTable.cpp
+++ b/Source/WebCore/rendering/RenderTable.cpp
@@ -1505,7 +1505,7 @@
// doesn't define the baseline of a 'table' only an 'inline-table').
// This is also needed to properly determine the baseline of a cell if it has a table child.
- if (isWritingModeRoot() || shouldApplyLayoutContainment(*this))
+ if (isWritingModeRoot() || shouldApplyLayoutContainment())
return std::optional<LayoutUnit>();
recalcSectionsIfNeeded();
diff --git a/Source/WebCore/rendering/RenderTextControl.cpp b/Source/WebCore/rendering/RenderTextControl.cpp
index 8a1daa6..3dbe8a7 100644
--- a/Source/WebCore/rendering/RenderTextControl.cpp
+++ b/Source/WebCore/rendering/RenderTextControl.cpp
@@ -161,7 +161,7 @@
void RenderTextControl::computeIntrinsicLogicalWidths(LayoutUnit& minLogicalWidth, LayoutUnit& maxLogicalWidth) const
{
- if (shouldApplySizeContainment(*this))
+ if (shouldApplySizeContainment())
return;
// Use average character width. Matches IE.
maxLogicalWidth = preferredContentLogicalWidth(const_cast<RenderTextControl*>(this)->getAverageCharWidth());
diff --git a/Source/WebCore/rendering/RenderVideo.cpp b/Source/WebCore/rendering/RenderVideo.cpp
index df3bff7..0d42e2c 100644
--- a/Source/WebCore/rendering/RenderVideo.cpp
+++ b/Source/WebCore/rendering/RenderVideo.cpp
@@ -113,7 +113,7 @@
LayoutSize RenderVideo::calculateIntrinsicSize()
{
- if (shouldApplySizeContainment(*this))
+ if (shouldApplySizeContainment())
return LayoutSize();
// Spec text from 4.8.6
diff --git a/Source/WebCore/rendering/RenderView.cpp b/Source/WebCore/rendering/RenderView.cpp
index aafd9dc..c563849 100644
--- a/Source/WebCore/rendering/RenderView.cpp
+++ b/Source/WebCore/rendering/RenderView.cpp
@@ -329,12 +329,12 @@
if (!is<HTMLHtmlElement>(documentRenderer.element()))
return &documentRenderer;
- if (shouldApplyAnyContainment(documentRenderer))
+ if (documentRenderer.shouldApplyAnyContainment())
return nullptr;
if (auto* body = document().body()) {
if (auto* renderer = body->renderer()) {
- if (!shouldApplyAnyContainment(*renderer))
+ if (!renderer->shouldApplyAnyContainment())
return renderer;
}
}
diff --git a/Source/WebCore/rendering/svg/LegacyRenderSVGRoot.cpp b/Source/WebCore/rendering/svg/LegacyRenderSVGRoot.cpp
index 4e0f9fa..aaaddb5 100644
--- a/Source/WebCore/rendering/svg/LegacyRenderSVGRoot.cpp
+++ b/Source/WebCore/rendering/svg/LegacyRenderSVGRoot.cpp
@@ -71,7 +71,7 @@
void LegacyRenderSVGRoot::computeIntrinsicRatioInformation(FloatSize& intrinsicSize, double& intrinsicRatio) const
{
- ASSERT(!shouldApplySizeContainment(*this));
+ ASSERT(!shouldApplySizeContainment());
// Spec: http://www.w3.org/TR/SVG/coords.html#IntrinsicSizing
// SVG needs to specify how to calculate some intrinsic sizing properties to enable inclusion within other languages.
diff --git a/Source/WebCore/rendering/svg/RenderSVGRoot.cpp b/Source/WebCore/rendering/svg/RenderSVGRoot.cpp
index 124f9b7..35c6737 100644
--- a/Source/WebCore/rendering/svg/RenderSVGRoot.cpp
+++ b/Source/WebCore/rendering/svg/RenderSVGRoot.cpp
@@ -75,7 +75,7 @@
void RenderSVGRoot::computeIntrinsicRatioInformation(FloatSize& intrinsicSize, double& intrinsicRatio) const
{
- ASSERT(!shouldApplySizeContainment(*this));
+ ASSERT(!shouldApplySizeContainment());
// Spec: http://www.w3.org/TR/SVG/coords.html#IntrinsicSizing
// SVG needs to specify how to calculate some intrinsic sizing properties to enable inclusion within other languages.
diff --git a/Source/WebCore/style/ContainerQueryEvaluator.cpp b/Source/WebCore/style/ContainerQueryEvaluator.cpp
index b15a4f5..bdff3b7 100644
--- a/Source/WebCore/style/ContainerQueryEvaluator.cpp
+++ b/Source/WebCore/style/ContainerQueryEvaluator.cpp
@@ -239,13 +239,13 @@
auto& renderer = *container.renderer;
auto hasEligibleContainment = [&] {
- if (!shouldApplyLayoutContainment(renderer))
+ if (!renderer.shouldApplyLayoutContainment())
return false;
switch (renderer.style().containerType()) {
case ContainerType::InlineSize:
- return shouldApplyInlineSizeContainment(renderer);
+ return renderer.shouldApplyInlineSizeContainment();
case ContainerType::Size:
- return shouldApplySizeContainment(renderer);
+ return renderer.shouldApplySizeContainment();
case ContainerType::None:
return true;
}