Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: fbc8e8e8fd5d88dc160ae5468e4b16ea44fc25cf
https://github.com/WebKit/WebKit/commit/fbc8e8e8fd5d88dc160ae5468e4b16ea44fc25cf
Author: Alan Baradlay <[email protected]>
Date: 2026-02-27 (Fri, 27 Feb 2026)
Changed paths:
M Source/WebCore/layout/formattingContexts/inline/InlineContentAligner.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineContentBreaker.cpp
M
Source/WebCore/layout/formattingContexts/inline/InlineContentConstrainer.cpp
M
Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineFormattingUtils.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineItem.h
M Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineLine.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineLine.h
M Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp
M
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp
M
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLineBuilder.cpp
Log Message:
-----------
[cleanup] In IFC, the only elements considered opaque boxes are those that
are positioned out of flow.
https://bugs.webkit.org/show_bug.cgi?id=308819
Reviewed by Antti Koivisto.
OutOfFlow is a more descriptive name for such inline items.
(The term 'opaque' is still used in the context of bidi handling though -boxes
that don't participate in bidi resolve.)
* Source/WebCore/layout/formattingContexts/inline/InlineContentAligner.cpp:
(WebCore::Layout::InlineContentAligner::applyRubyAlign):
* Source/WebCore/layout/formattingContexts/inline/InlineContentBreaker.cpp:
(WebCore::Layout::hasLeadingTextContent):
(WebCore::Layout::isWhitespaceOnlyContent):
(WebCore::Layout::isNonContentRunsOnly):
(WebCore::Layout::InlineContentBreaker::processOverflowingContent const):
(WebCore::Layout::findTrailingRunIndexBeforeBreakableRun):
(WebCore::Layout::InlineContentBreaker::tryBreakingOverflowingRun const):
(WebCore::Layout::InlineContentBreaker::tryHyphenationAcrossOverflowingInlineTextItems
const):
(WebCore::Layout::InlineContentBreaker::processOverflowingContentWithText
const):
(WebCore::Layout::InlineContentBreaker::ContinuousContent::append):
* Source/WebCore/layout/formattingContexts/inline/InlineContentConstrainer.cpp:
(WebCore::Layout::cannotConstrainInlineItem):
(WebCore::Layout::InlineContentConstrainer::updateCachedWidths):
(WebCore::Layout::InlineContentConstrainer::inlineItemWidth const):
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp:
(WebCore::Layout::InlineFormattingContext::resetBoxGeometriesForDiscardedContent):
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingUtils.cpp:
(WebCore::Layout::InlineFormattingUtils::inlineItemWidth const):
(WebCore::Layout::InlineFormattingUtils::nextWrapOpportunity const):
(WebCore::Layout::InlineFormattingUtils::inlineContentEnding):
* Source/WebCore/layout/formattingContexts/inline/InlineItem.h:
(WebCore::Layout::InlineItem::isOutOfFlow const):
(WebCore::Layout::InlineItem::isOpaque const): Deleted.
* Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp:
(WebCore::Layout::InlineItemsBuilder::collectInlineItems):
(WebCore::Layout::buildBidiParagraph):
(WebCore::Layout::InlineItemsBuilder::breakAndComputeBidiLevels):
(WebCore::Layout::InlineItemsBuilder::handleInlineLevelBox):
* Source/WebCore/layout/formattingContexts/inline/InlineLine.cpp:
(WebCore::Layout::Line::removeOverflowingOutOfFlowContent):
(WebCore::Layout::Line::appendText):
(WebCore::Layout::Line::appendOutOfFlow):
(WebCore::Layout::Line::TrimmableTrailingContent::remove):
(WebCore::Layout::toLineRunType):
(WebCore::Layout::Line::appendOpaqueBox): Deleted.
* Source/WebCore/layout/formattingContexts/inline/InlineLine.h:
(WebCore::Layout::Line::Run::isOutOfFlow const):
(WebCore::Layout::Line::Run::isOpaque const): Deleted.
* Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp:
(WebCore::Layout::LineBoxBuilder::constructInlineLevelBoxes):
* Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::isContentfulOrHasDecoration):
(WebCore::Layout::hasTrailingSoftWrapOpportunity):
(WebCore::Layout::LineCandidate::InlineContent::appendInlineItem):
(WebCore::Layout::LineBuilder::collectShapeRanges const):
(WebCore::Layout::LineBuilder::candidateContentForLine):
(WebCore::Layout::LineBuilder::commitCandidateContent):
*
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp:
(WebCore::Layout::InlineDisplayContentBuilder::processNonBidiContent):
(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent):
*
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLineBuilder.cpp:
(WebCore::Layout::InlineDisplayLineBuilder::build const):
Canonical link: https://commits.webkit.org/308345@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications