Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a0dc58c6d70ea710009978fe1902d03baa639cdb https://github.com/WebKit/WebKit/commit/a0dc58c6d70ea710009978fe1902d03baa639cdb Author: Alan Baradlay <za...@apple.com> Date: 2023-12-04 (Mon, 04 Dec 2023)
Changed paths: M Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp M Source/WebCore/layout/formattingContexts/inline/ruby/RubyFormattingContext.cpp M Source/WebCore/layout/formattingContexts/inline/ruby/RubyFormattingContext.h Log Message: ----------- [IFC][Ruby] Offset ruby base end inline item with overflowing interlinear annotation box https://bugs.webkit.org/show_bug.cgi?id=265756 Reviewed by Antti Koivisto. While annotation boxes don't participate in inline layout, when placing the associated base content on the line, we have to make sure the base inline box end "covers" any overflowing interlinear annotation. e.g. "<ruby>base content<rt>this is a long annotation</rt></ruby>after ruby content" does not produce this: [this is a long annotation] [base content][after ruby content] <- line content. but something along the lines of [this is a long annotation] [base content] [after ruby content] (ignore ruby base alignment for now) * Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp: (WebCore::Layout::LineBuilder::candidateContentForLine): * Source/WebCore/layout/formattingContexts/inline/ruby/RubyFormattingContext.cpp: (WebCore::Layout::RubyFormattingContext::baseLogicalWidthFromRubyBaseEnd): * Source/WebCore/layout/formattingContexts/inline/ruby/RubyFormattingContext.h: Canonical link: https://commits.webkit.org/271487@main _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes