[webkit-changes] [WebKit/WebKit] 9a8589: margin and preferred width calculation for MathML ...

Frédéric Wang noreply at github.com
Wed Jul 10 01:40:36 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9a8589b0774a9bb9b5c19ec152cc229dc00bf0f7
      https://github.com/WebKit/WebKit/commit/9a8589b0774a9bb9b5c19ec152cc229dc00bf0f7
  Author: Frédéric Wang <fwang at igalia.com>
  Date:   2024-07-10 (Wed, 10 Jul 2024)

  Changed paths:
    M LayoutTests/TestExpectations
    M LayoutTests/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/margin-002-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/margin-003-expected.txt
    R LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/margin-003-expected.txt
    M Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp
    M Source/WebCore/rendering/mathml/RenderMathMLRoot.cpp
    M Source/WebCore/rendering/mathml/RenderMathMLRow.cpp
    M Source/WebCore/rendering/mathml/RenderMathMLScripts.cpp
    M Source/WebCore/rendering/mathml/RenderMathMLUnderOver.cpp

  Log Message:
  -----------
  margin and preferred width calculation for MathML elements
https://bugs.webkit.org/show_bug.cgi?id=276358

Reviewed by Rob Buis.

During calculation of MathML preferred widths, replace
marginLogicalWidth() with marginIntrinsicLogicalWidthForChild(), as
the margins are only set in layoutBlock (when recomputeLogicalWidth is
called).

This also fixes previous mistakes from 280733 at main and 280768 at main,
when margin support was introduced for mroot and msup.

* LayoutTests/TestExpectations: See https://bugs.webkit.org/show_bug.cgi?id=276358#c1
* LayoutTests/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/margin-002-expected.txt: Mark all tests as PASSing.
* LayoutTests/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/margin-003-expected.txt: Ditto. Note that mroot was even failing for the layout, not only the preferred width.
* LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/margin-003-expected.txt: Removed, same as the generic file.
* Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp:
 (WebCore::RenderMathMLFraction::computePreferredLogicalWidths): Use marginIntrinsicLogicalWidthForChild().
* Source/WebCore/rendering/mathml/RenderMathMLRoot.cpp:
 (WebCore::RenderMathMLRoot::computePreferredLogicalWidths): Add missing marginIntrinsicLogicalWidthForChild() for mroot's index/base.
 (WebCore::RenderMathMLRoot::layoutBlock): Use the margin box for mroot's index/base ().
* Source/WebCore/rendering/mathml/RenderMathMLRow.cpp:
 (WebCore::RenderMathMLRow::preferredLogicalWidthOfRowItems): Use marginIntrinsicLogicalWidthForChild().
* Source/WebCore/rendering/mathml/RenderMathMLScripts.cpp:
 (WebCore::RenderMathMLScripts::computePreferredLogicalWidths): Use marginIntrinsicLogicalWidthForChild() and add one missing call.
* Source/WebCore/rendering/mathml/RenderMathMLUnderOver.cpp:
 (WebCore::RenderMathMLUnderOver::computePreferredLogicalWidths): Use marginIntrinsicLogicalWidthForChild().

Canonical link: https://commits.webkit.org/280810@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list