Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: a0dc58c6d70ea710009978fe1902d03baa639cdb
https://github.com/WebKit/WebKit/commit/a0dc58c6d70ea710009978fe1902d03baa639cdb
Author: Alan Baradlay <[email protected]>
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
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes