Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e243e0caa9c27dfc32a0edfee28d537b1cab005c
https://github.com/WebKit/WebKit/commit/e243e0caa9c27dfc32a0edfee28d537b1cab005c
Author: Alan Baradlay <[email protected]>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
A
LayoutTests/fast/box-decoration-break/box-decoration-clone-rendering2-expected.html
A LayoutTests/fast/box-decoration-break/box-decoration-clone-rendering2.html
M Source/WebCore/layout/formattingContexts/inline/InlineFormattingUtils.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineLine.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineLine.h
M Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.h
Log Message:
-----------
(REGRESSION 262652@main): box-decoration-break: clone is not taken into
account when breaking lines
https://bugs.webkit.org/show_bug.cgi?id=267846
<rdar://problem/121382658>
Reviewed by Antti Koivisto.
Replace existing (and slightly intrusive) cloned decoration box implementation
in IFC with
a less complex and more error-prone one. See comment in
handleInlineContentWithClonedDecoration.
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingUtils.cpp:
(WebCore::Layout::InlineFormattingUtils::inlineItemWidth const):
* Source/WebCore/layout/formattingContexts/inline/InlineLine.cpp:
(WebCore::Layout::Line::initialize):
(WebCore::Layout::Line::close):
(WebCore::Layout::Line::appendInlineBoxStart):
(WebCore::Layout::Line::appendInlineBoxEnd):
(WebCore::Layout::Line::appendTextContent):
(WebCore::Layout::Line::addBorderAndPaddingEndForInlineBoxDecorationClone):
Deleted.
(WebCore::Layout::Line::removeBorderAndPaddingEndForInlineBoxDecorationClone):
Deleted.
* Source/WebCore/layout/formattingContexts/inline/InlineLine.h:
(WebCore::Layout::Line::contentLogicalRight const):
* Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::LineCandidate::InlineContent::setHasTrailingClonedDecoration):
(WebCore::Layout::LineCandidate::InlineContent::hasTrailingClonedDecoration
const):
(WebCore::Layout::LineCandidate::InlineContent::reset):
(WebCore::Layout::LineBuilder::candidateContentForLine):
(WebCore::Layout::availableWidth):
(WebCore::Layout::LineBuilder::handleInlineContent):
(WebCore::Layout::lineBreakingResultContentWidth):
(WebCore::Layout::LineBuilder::placedClonedDecorationWidth const):
(WebCore::Layout::LineBuilder::clonedDecorationAtBreakingPosition const):
(WebCore::Layout::LineBuilder::handleInlineContentWithClonedDecoration):
(WebCore::Layout::LineCandidate::InlineContent::setAccumulatedClonedDecorationEnd):
Deleted.
(WebCore::Layout::LineCandidate::InlineContent::accumulatedClonedDecorationEnd
const): Deleted.
* Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.h:
Canonical link: https://commits.webkit.org/294644@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes