Title: [286529] trunk/Source/WebCore
- Revision
- 286529
- Author
- [email protected]
- Date
- 2021-12-04 05:52:55 -0800 (Sat, 04 Dec 2021)
Log Message
[LFC][IFC] Set BoxGeometry for bidi inline boxes
https://bugs.webkit.org/show_bug.cgi?id=233616
Reviewed by Antti Koivisto.
In this patch we compute the BoxGeometry values for the bidi inline boxes.
BoxGeometry is mostly used for boundingClientRect/offsetWidth(left etc).
* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (286528 => 286529)
--- trunk/Source/WebCore/ChangeLog 2021-12-04 09:13:50 UTC (rev 286528)
+++ trunk/Source/WebCore/ChangeLog 2021-12-04 13:52:55 UTC (rev 286529)
@@ -1,3 +1,16 @@
+2021-12-04 Alan Bujtas <[email protected]>
+
+ [LFC][IFC] Set BoxGeometry for bidi inline boxes
+ https://bugs.webkit.org/show_bug.cgi?id=233616
+
+ Reviewed by Antti Koivisto.
+
+ In this patch we compute the BoxGeometry values for the bidi inline boxes.
+ BoxGeometry is mostly used for boundingClientRect/offsetWidth(left etc).
+
+ * layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
+ (WebCore::Layout::InlineDisplayContentBuilder::processBidiContent):
+
2021-12-04 Alex Christensen <[email protected]>
Prepare for SharedWorker implementation
Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp (286528 => 286529)
--- trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp 2021-12-04 09:13:50 UTC (rev 286528)
+++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp 2021-12-04 13:52:55 UTC (rev 286529)
@@ -549,6 +549,16 @@
};
if (needsDisplayBoxHorizontalAdjustment)
adjustVisualGeometryWithInlineBoxes();
+
+ auto computeInlineBoxGeometry = [&] {
+ ASSERT(!inlineBoxRangeList.isEmpty());
+ for (auto& inlineBoxRange : inlineBoxRangeList) {
+ auto& inlineBoxDisplayBox = boxes[inlineBoxRange.begin()];
+ setInlineBoxGeometry(inlineBoxDisplayBox.layoutBox(), inlineBoxDisplayBox.logicalRect(), inlineBoxDisplayBox.isFirstBox());
+ }
+ };
+ if (needsNonRootInlineBoxDisplayBox)
+ computeInlineBoxGeometry();
}
void InlineDisplayContentBuilder::processOverflownRunsForEllipsis(DisplayBoxes& boxes, InlineLayoutUnit lineBoxLogicalRight)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes