Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c604535934c41bc58f9848f916c1fdd285366a75 https://github.com/WebKit/WebKit/commit/c604535934c41bc58f9848f916c1fdd285366a75 Author: Alan Baradlay <za...@apple.com> Date: 2022-12-23 (Fri, 23 Dec 2022)
Changed paths: M Source/WebCore/layout/formattingContexts/inline/InlineLine.cpp M Source/WebCore/layout/formattingContexts/inline/InlineLine.h Log Message: ----------- [IFC][hanging punctuation] Line::applyRunExpansion should only trim pre-wrap triggered hanging whitespace https://bugs.webkit.org/show_bug.cgi?id=249846 Reviewed by Antti Koivisto. 1. Hanging content is not supposed to be taken into account when computing expansion opportunities (align justify). 2. Hanging trailing whitespace content (triggered by pre-wrap) falls outside of the line box, but it is still part of the trailing text run (i.e. not trimmed). 3. FontCascade::expansionOpportunityCount takes text content (string) to compute the expansion opportunities. 4. We have to adjust the run's length to make sure that the hanging trailing whitespace is not part of this expansion computation. * Source/WebCore/layout/formattingContexts/inline/InlineLine.cpp: (WebCore::Layout::Line::applyRunExpansion): * Source/WebCore/layout/formattingContexts/inline/InlineLine.h: (WebCore::Layout::Line::HangingContent::resetTrailingContent): (WebCore::Layout::Line::HangingContent::trailingWhitespaceWidth const): (WebCore::Layout::Line::HangingContent::trailingWhitespaceLength const): Canonical link: https://commits.webkit.org/258306@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes