Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 399b65153f6977f4bd6fd62827fc9cbc87307ca9
https://github.com/WebKit/WebKit/commit/399b65153f6977f4bd6fd62827fc9cbc87307ca9
Author: Alan Baradlay <[email protected]>
Date: 2023-12-12 (Tue, 12 Dec 2023)
Changed paths:
M
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp
M
Source/WebCore/layout/formattingContexts/inline/ruby/RubyFormattingContext.cpp
M
Source/WebCore/layout/formattingContexts/inline/ruby/RubyFormattingContext.h
M Source/WebCore/rendering/RenderBlockFlow.cpp
Log Message:
-----------
[IFC][Ruby][Bidi] Empty base with non-empty annotation box is not rendered
https://bugs.webkit.org/show_bug.cgi?id=266236
Reviewed by Antti Koivisto.
In InlineDisplayContentBuilder::processBidiContent, we assume that if an inline
box has
the "has content" bit set (e.g. <span>this inline box has content</span>), the
child
content will (at some point in this loop as we walk through the inline content)
initiate constructing the parent inline box's display box.
This is to keep the pre-computed bidi visual order intact (inline boxes
normally participate in bidi ordering through their content).
However while _empty_ ruby bases with non-empty annotations considered
"contentful", we won't be seeing any _inline_ child content in this loop
(as annotation boxes are not part of the regular inline boxes).
*
Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp:
(WebCore::Layout::AncestorStack::push):
(WebCore::Layout::createDisplayBoxNodeForContainerAndPushToAncestorStack):
(WebCore::Layout::InlineDisplayContentBuilder::ensureDisplayBoxForContainer):
(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent): Let's
create a display box for ruby base
(WebCore::Layout::createdDisplayBoxNodeForElementBoxAndPushToAncestorStack):
Deleted.
Canonical link: https://commits.webkit.org/271963@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes