Title: [269230] trunk/Source/WebCore
Revision
269230
Author
[email protected]
Date
2020-11-01 05:55:39 -0800 (Sun, 01 Nov 2020)

Log Message

[LFC][IFC] Set the descent layout bounds for atomic inline level boxes
https://bugs.webkit.org/show_bug.cgi?id=218421

Reviewed by Antti Koivisto.

In most cases the layout bounds descent is 0, but in case of inline-block (or inline table) the decent value may be greater than 0.

* layout/inlineformatting/InlineFormattingContextGeometry.cpp:
(WebCore::Layout::LineBoxBuilder::constructInlineLevelBoxes):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (269229 => 269230)


--- trunk/Source/WebCore/ChangeLog	2020-10-31 21:11:23 UTC (rev 269229)
+++ trunk/Source/WebCore/ChangeLog	2020-11-01 13:55:39 UTC (rev 269230)
@@ -1,3 +1,15 @@
+2020-11-01  Zalan Bujtas  <[email protected]>
+
+        [LFC][IFC] Set the descent layout bounds for atomic inline level boxes
+        https://bugs.webkit.org/show_bug.cgi?id=218421
+
+        Reviewed by Antti Koivisto.
+
+        In most cases the layout bounds descent is 0, but in case of inline-block (or inline table) the decent value may be greater than 0.
+
+        * layout/inlineformatting/InlineFormattingContextGeometry.cpp:
+        (WebCore::Layout::LineBoxBuilder::constructInlineLevelBoxes):
+
 2020-10-31  Zalan Bujtas  <[email protected]>
 
         [LFC][Integration] LineIteratorModernPath::top/bottom map to Line::enclosingRect::top/bottom

Modified: trunk/Source/WebCore/layout/inlineformatting/InlineFormattingContextGeometry.cpp (269229 => 269230)


--- trunk/Source/WebCore/layout/inlineformatting/InlineFormattingContextGeometry.cpp	2020-10-31 21:11:23 UTC (rev 269229)
+++ trunk/Source/WebCore/layout/inlineformatting/InlineFormattingContextGeometry.cpp	2020-11-01 13:55:39 UTC (rev 269230)
@@ -264,7 +264,8 @@
             }
             auto atomicInlineLevelBox = LineBox::InlineLevelBox::createAtomicInlineLevelBox(layoutBox, logicalLeft, { run.logicalWidth(), logicalHeight });
             atomicInlineLevelBox->setBaseline(ascent);
-            atomicInlineLevelBox->setLayoutBounds(LineBox::InlineLevelBox::LayoutBounds { ascent, { } });
+            ASSERT(logicalHeight >= ascent);
+            atomicInlineLevelBox->setLayoutBounds(LineBox::InlineLevelBox::LayoutBounds { ascent, logicalHeight - ascent });
             if (logicalHeight)
                 atomicInlineLevelBox->setIsNonEmpty();
             lineBox.addInlineLevelBox(WTFMove(atomicInlineLevelBox));
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to