Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 4f0b33767232df45035b1bba7f0dc95c75089b04
https://github.com/WebKit/WebKit/commit/4f0b33767232df45035b1bba7f0dc95c75089b04
Author: Alan Baradlay <[email protected]>
Date: 2024-08-30 (Fri, 30 Aug 2024)
Changed paths:
M
Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineLayoutState.h
M
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLine.h
M
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLineBuilder.cpp
M
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLineBuilder.h
M Source/WebCore/layout/formattingContexts/inline/text/TextUtil.cpp
M Source/WebCore/layout/formattingContexts/inline/text/TextUtil.h
M Source/WebCore/layout/integration/inline/InlineIteratorLineBoxModernPath.h
Log Message:
-----------
[css-line-clamp] Start using block-ellipsis string for ellipsis content
https://bugs.webkit.org/show_bug.cgi?id=278863
Reviewed by Antti Koivisto.
1. Ellipsis content is either '...' (overflow in inline direction and legacy
line clamp)
or supplied by 'block-ellipsis' css property (could be none, meaning no change
to rendering other than truncation in block direction)
2. InlineDisplay::Line now has Ellipsis struct containing all ellipsis related
content.
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp:
(WebCore::Layout::InlineFormattingContext::lineLayout):
(WebCore::Layout::InlineFormattingContext::createDisplayContentForInlineContent):
* Source/WebCore/layout/formattingContexts/inline/InlineLayoutState.h:
(WebCore::Layout::InlineLayoutState::setLegacyClampedLineIndex):
(WebCore::Layout::InlineLayoutState::legacyClampedLineIndex const):
(WebCore::Layout::InlineLayoutState::setClampedLineIndex): Deleted.
(WebCore::Layout::InlineLayoutState::clampedLineIndex const): Deleted.
* Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLine.h:
(WebCore::InlineDisplay::Line::setEllipsis):
(WebCore::InlineDisplay::Line::ellipsis const):
(WebCore::InlineDisplay::Line::hasEllipsis const):
(WebCore::InlineDisplay::Line::isFullyTruncatedInBlockDirection const):
(WebCore::InlineDisplay::Line::moveInBlockDirection):
(WebCore::InlineDisplay::Line::visibleRectIgnoringBlockDirection const):
(WebCore::InlineDisplay::Line::ellipsisVisualRect const): Deleted.
(WebCore::InlineDisplay::Line::ellipsisText const): Deleted.
(WebCore::InlineDisplay::Line::setEllipsisVisualRect): Deleted.
*
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLineBuilder.cpp:
(WebCore::Layout::trailingEllipsisVisualRectAfterTruncation):
(WebCore::Layout::makeRoomForLinkBoxOnClampedLineIfNeeded):
(WebCore::Layout::moveDisplayBoxToClampedLine):
(WebCore::Layout::InlineDisplayLineBuilder::addLegacyLineClampTrailingLinkBoxIfApplicable):
(WebCore::Layout::InlineDisplayLineBuilder::applyEllipsisIfNeeded):
(WebCore::Layout::InlineDisplayLineBuilder::trailingEllipsisVisualRectAfterTruncation):
Deleted.
(WebCore::Layout::InlineDisplayLineBuilder::addLineClampTrailingLinkBoxIfApplicable):
Deleted.
*
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayLineBuilder.h:
* Source/WebCore/layout/formattingContexts/inline/text/TextUtil.cpp:
(WebCore::Layout::TextUtil::ellipsisTextInInlineDirection):
(WebCore::Layout::TextUtil::ellipsisTextRun): Deleted.
* Source/WebCore/layout/formattingContexts/inline/text/TextUtil.h:
* Source/WebCore/layout/integration/inline/InlineIteratorLineBoxModernPath.h:
(WebCore::InlineIterator::LineBoxIteratorModernPath::ellipsisVisualRectIgnoringBlockDirection
const):
(WebCore::InlineIterator::LineBoxIteratorModernPath::ellipsisText const):
Canonical link: https://commits.webkit.org/282973@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