Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 709c3895afd71e0836f8c8be7393e44d41fab7e1
https://github.com/WebKit/WebKit/commit/709c3895afd71e0836f8c8be7393e44d41fab7e1
Author: Ahmad Saleem <[email protected]>
Date: 2026-02-22 (Sun, 22 Feb 2026)
Changed paths:
M LayoutTests/TestExpectations
M
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/mo-stretch-properties-dynamic-001-expected.txt
M Source/WebCore/SaferCPPExpectations/UncheckedCallArgsCheckerExpectations
M Source/WebCore/mathml/MathMLOperatorElement.cpp
M Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp
Log Message:
-----------
[MathML] Dynamic changes to mo attributes don't trigger relayout
https://bugs.webkit.org/show_bug.cgi?id=308418
rdar://170907029
Reviewed by Frédéric Wang.
This patch aligns WebKit with Gecko / Firefox and Blink / Chromium.
When minsize, maxsize, largeop, or symmetric attributes are changed
dynamically via JavaScript, the operator layout was not updated.
This patch:
1. Adds affectsLayout tracking for layout-affecting attributes in
MathMLOperatorElement::attributeChanged()
2. Calls updateFromElement() and setNeedsLayoutAndPreferredWidthsUpdate()
when these attributes change
3. Adds resetStretchSize() to updateFromElement() so the parent mrow
can re-stretch the operator with new constraints
* LayoutTests/TestExpectations: Progression
*
LayoutTests/imported/w3c/web-platform-tests/mathml/presentation-markup/operators/mo-stretch-properties-dynamic-001-expected.txt:
Ditto
* Source/WebCore/mathml/MathMLOperatorElement.cpp:
(WebCore::MathMLOperatorElement::attributeChanged):
* Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::updateFromElement):
* Source/WebCore/SaferCPPExpectations/UncheckedCallArgsCheckerExpectations:
Canonical link: https://commits.webkit.org/308014@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications