WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Patch
0010-Bug-133567-Use-OpenType-MATH-constant-AxisHeight.patch (text/plain), 117.93 KB, created by
Frédéric Wang Nélar
on 2016-06-16 23:13:45 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Frédéric Wang Nélar
Created:
2016-06-16 23:13:45 PDT
Size:
117.93 KB
patch
obsolete
>From 01dfbb3ee3cebab7d463c86937b39c91349a0024 Mon Sep 17 00:00:00 2001 >From: Frederic Wang <fred.wang@free.fr> >Date: Fri, 18 Mar 2016 16:07:05 +0100 >Subject: [PATCH 10/16] Bug 133567 - Use OpenType MATH constant AxisHeight > >--- > LayoutTests/ChangeLog | 15 +++ > .../math/axisheight5000-verticalarrow14000.woff | Bin 0 -> 1304 bytes > .../operators/mo-axis-height-1-expected.txt | 5 + > .../operators/mo-axis-height-1.html | 55 ++++++++ > .../tables/table-axis-height-expected.txt | 3 + > .../tables/table-axis-height.html | 52 ++++++++ > .../gtk/mathml/opentype/vertical-expected.png | Bin 20289 -> 19913 bytes > .../gtk/mathml/opentype/vertical-expected.txt | 140 ++++++++++----------- > .../mathml/presentation/mo-stretch-expected.png | Bin 14801 -> 14513 bytes > .../mathml/presentation/mo-stretch-expected.txt | 120 +++++++++--------- > Source/WebCore/ChangeLog | 22 ++++ > .../WebCore/rendering/mathml/RenderMathMLBlock.cpp | 21 ++-- > .../rendering/mathml/RenderMathMLOperator.cpp | 3 +- > 13 files changed, 297 insertions(+), 139 deletions(-) > create mode 100644 LayoutTests/imported/mathml-in-html5/fonts/math/axisheight5000-verticalarrow14000.woff > create mode 100644 LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1-expected.txt > create mode 100644 LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1.html > create mode 100644 LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/tables/table-axis-height-expected.txt > create mode 100644 LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/tables/table-axis-height.html > >diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog >index 14e8904..e138a14 100644 >--- a/LayoutTests/ChangeLog >+++ b/LayoutTests/ChangeLog >@@ -1,3 +1,18 @@ >+2016-05-12 Frederic Wang <fred.wang@free.fr> >+ >+ Need a short description (OOPS!). >+ Need the bug URL (OOPS!). >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Import tests from the MathML in HTML5 test suite to verify the AxisHeight parameter. >+ >+ * imported/mathml-in-html5/fonts/math/axisheight5000-verticalarrow14000.woff: Added. >+ * imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1-expected.txt: Added. >+ * imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1.html: Added. >+ * imported/mathml-in-html5/mathml/presentation-markup/tables/table-axis-height.html: Added. >+ * imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-expected.txt: Added. >+ > 2016-03-17 Frederic Wang <fwang@igalia.com> > > Add support for mathvariants that cannot be emulated via CSS. >diff --git a/LayoutTests/imported/mathml-in-html5/fonts/math/axisheight5000-verticalarrow14000.woff b/LayoutTests/imported/mathml-in-html5/fonts/math/axisheight5000-verticalarrow14000.woff >new file mode 100644 >index 0000000000000000000000000000000000000000..be7348c047b44de4ac9957023309c05af3021efb >GIT binary patch >literal 1304 >zcmZXTdr%Ws6vl5@5<*BwkO+w&gh!Dg;06q0p(7Cuk%yo}QyB`o<Uypyf<{3_C4>R0 >zsRBL<ZAt+_u*CvuD}t3!6eEO3Ep*foe6$k484%J@>_F*__+QW5-|V^Hd~@g9yL+<Z >z1%h~yC>{VJ3)lfzwhBP7JpW&j0s#jAL<9hV3EA6uY9(DD5XAvtt$=Pe#PyJ&q%n>! >z5<;y2?$ywz5XE>R@ri4KV4n=N2ne=pj$0;C;+X(g%`a($=*W%F6BIIB3Vmd#1wuk> >z+n)ZWfFjgF;eG|goBT2IQlV7kz|0n(y#<>=0F-zRJdXhL0n$5&31Ba-ltE1gNrBmO >z%C9$hXMVn41^aO5ae{Cb3qf#>PJ&4>45Yod*cLZ4ACk&$tw;r%S%Fa%#>k5mspU$r >z-IW^4aRdGh6afJ5{l_}>`Vz#4zehk4>8(LR6$0N9fCLzA$%7y33{|Vosnr!l4>f8v >zPArh`!<yx5k^9s}9TnA+Z&Rp-Dm9;<MKs%SR@-c$S^EMHFQC3ax|gH-r8Fj^3uSI@ >z`j)P`|AfL+c(6l-KKD3-{AGqJ?+Y8px_K>}P5h9zD*8xN)XIa7BN5`n!<UP-lmKRi >zhwAU#C&Rxx=Iy`fsh?@TW89zTG#Xyi+Ffs2F_oV_aNydnb_2BJLVD#l+KvSF&_HW@ >z_O9hNtggfMSsMBPFPtc@e95wzu5@8k&py5#ntR)t<l;JB)3WK*GAm{6c;=TL)hMU0 >z^i_QSf$kA9v8Xz_z162l{l!Dq#+0!-Mg2;L7#_o1YcvIO{U~Q9YljN2SRauyRlQr& >zUmx1e^W4M!sXw@G-<{p-sRtWtO*@3I+YDDH8*ZHqdL;jOX!n)qMqb#kgxq0%8<;g2 >znAkRa<))EW6LUjfVxE5Cew6vCmt0UEBFXsU#n1zp&+{Ldku!htE^W&iI{kghqFCbG >zU;pZKU~=WYh4rJflSZdpg-6}wPTs$Xc&dNTg}SBhgJJSKj7<`d7@34wR%fmgiN@(8 >z)w0>;EGAPtzexW}GqFgY-pn6H2wpBoz6N2GxlaO6zSp+J@(;*?X0eYdh&WM7paI~! >zgK*>Bxl#<rF{xA(-DvRd7xu*t_;PtDIv5ZW;CC-}t8t6JU(cF#YY7xC8U)w)!qfCQ >zkGpe`l@mo)X1eWpH@EJosZ?H&+~pG)Yjma;Mac#<*ZC~YID=~$X&5r`OvXrKq&MTm >zvIfLOoK#Zwl}MMQ+jTC3?5Wk6?fgzg>|Cwz{>+cXW_|tPoX>gb+&{jdPR^!P>98L& >zIjA_eJ0N&T!X!45RmkeW-kyt7r6Wg<>mK#CW={_U9I1G7VxesA(wq2v<@9$OYBp?L >zcsy%jhPk^BW@{sikNakS7!&t(tO&V9lw}gw6J(XcRT`%>mFGE9GZLQMk&#ziWD?WX >zl{_bc(WGPUmb=0*Dah~joP3LY)FXA%lE6AE;!!v)?`P?0T8_TqE<=xX9WEkJ3&L2% >z$f~MqJ`Nf6TomngsO~4%IK_575X!5HUGTfw8Y=a8lhwlzsw*`uB8eyr&X2>aBSn=I >zh8ZPug{a|~YWb!*vc_Ixi#V2i07RFqoYTPxZcJ2AbGfqMBsYJU%YOj28SJma49NHr >Img%+Be-L`!X8-^I > >literal 0 >HcmV?d00001 > >diff --git a/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1-expected.txt b/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1-expected.txt >new file mode 100644 >index 0000000..8ddf890 >--- /dev/null >+++ b/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1-expected.txt >@@ -0,0 +1,5 @@ >+⨠>+ >+ >+FAIL AxisHeight assert_approx_equals: mo: axis height expected 50 +/- 1 but got 70 >+ >diff --git a/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1.html b/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1.html >new file mode 100644 >index 0000000..7d6d659 >--- /dev/null >+++ b/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1.html >@@ -0,0 +1,55 @@ >+<!DOCTYPE html> >+<html> >+<head> >+<meta charset="utf-8"> >+<title>mo axis height</title> >+<link rel="help" href="http://www.mathml-association.org/MathMLinHTML5/S3.html#SS2.SSS4"> >+<meta name="assert" content="Element mo correctly uses the axis height parameter from the MATH table."> >+<script src="../../../../../resources/testharness.js"></script> >+<script src="../../../../../resources/testharnessreport.js"></script> >+<style> >+ math, mspace { >+ font-size: 10px; >+ } >+ @font-face { >+ font-family: axisheight5000-verticalarrow14000; >+ src: url("../../../fonts/math/axisheight5000-verticalarrow14000.woff"); >+ } >+</style> >+<script> >+ var emToPx = 10 / 1000; // font-size: 10px, font.em = 1000 >+ var epsilon = 1; >+ >+ function getBox(aId) { >+ return document.getElementById(aId).getBoundingClientRect(); >+ } >+ >+ setup({ explicit_done: true }); >+ window.addEventListener("load", function() { >+ window.setTimeout(runTests, 250); >+ }); >+ >+ function runTests() { >+ test(function() { >+ var v1 = 5000 * emToPx; >+ var moMiddle = (getBox("mo").bottom + getBox("mo").top) / 2; >+ assert_approx_equals(getBox("baseline").bottom - moMiddle, >+ v1, epsilon, "mo: axis height"); >+ }, "AxisHeight"); >+ >+ done(); >+ } >+</script> >+</head> >+<body> >+ <p> >+ <math style="font-family: axisheight5000-verticalarrow14000;"> >+ <mrow> >+ <mspace id="baseline" mathbackground="blue" width="100px" height="1px"/> >+ <mo id="mo" mathcolor="green">↨</mo> >+ <mspace mathbackground="black" width="10px" height="100px"/> >+ </mrow> >+ </math> >+ </p> >+</body> >+</html> >diff --git a/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/tables/table-axis-height-expected.txt b/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/tables/table-axis-height-expected.txt >new file mode 100644 >index 0000000..ea3a87b >--- /dev/null >+++ b/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/tables/table-axis-height-expected.txt >@@ -0,0 +1,3 @@ >+ >+PASS AxisHeight >+ >diff --git a/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/tables/table-axis-height.html b/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/tables/table-axis-height.html >new file mode 100644 >index 0000000..0ae18a4 >--- /dev/null >+++ b/LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/tables/table-axis-height.html >@@ -0,0 +1,52 @@ >+<!DOCTYPE html> >+<html> >+<head> >+<meta charset="utf-8"> >+<title>table axis height</title> >+<link rel="help" href="http://www.mathml-association.org/MathMLinHTML5/S3.html#SS5"> >+<meta name="assert" content="Element mtable correctly uses the axis height parameter from the MATH table."> >+<script src="../../../../../resources/testharness.js"></script> >+<script src="../../../../../resources/testharnessreport.js"></script> >+<style> >+ math, mspace { >+ font-size: 10px; >+ } >+ @font-face { >+ font-family: axisheight5000-verticalarrow14000; >+ src: url("../../../fonts/math/axisheight5000-verticalarrow14000.woff"); >+ } >+</style> >+<script> >+ var emToPx = 10 / 1000; // font-size: 10px, font.em = 1000 >+ var epsilon = 1; >+ >+ function getBox(aId) { >+ return document.getElementById(aId).getBoundingClientRect(); >+ } >+ >+ setup({ explicit_done: true }); >+ window.addEventListener("load", function() { >+ window.setTimeout(runTests, 250); >+ }); >+ >+ function runTests() { >+ test(function() { >+ var v1 = 5000 * emToPx; >+ var tableMiddle = (getBox("table").bottom + getBox("table").top) / 2; >+ assert_approx_equals(getBox("baseline").bottom - tableMiddle, >+ v1, epsilon, "mtable: axis height"); >+ }, "AxisHeight"); >+ >+ done(); >+ } >+</script> >+</head> >+<body> >+ <p> >+ <math style="font-family: axisheight5000-verticalarrow14000"> >+ <mspace id="baseline" mathbackground="green" width="50px" height="1px"/> >+ <mtable id="table" mathbackground="blue"><mtr><mtd><mspace width="100px" height="1px"/></mtd></mtr></mtable> >+ </math> >+ </p> >+</body> >+</html> >diff --git a/LayoutTests/platform/gtk/mathml/opentype/vertical-expected.png b/LayoutTests/platform/gtk/mathml/opentype/vertical-expected.png >index 1cf74053b37e0595d326b07ff05e2d7c46ef5908..d9d28ae7bb1168e753735e72122e1fc0c9a85adb 100644 >GIT binary patch >literal 19913 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 >zN%x)v+V|@G?-+B4W;=KKMny3`Tt8$%M*Q2%0DCX=98mf7)D7d-4S|9jmI+X#7;rMy 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 > >literal 20289 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 > >diff --git a/LayoutTests/platform/gtk/mathml/opentype/vertical-expected.txt b/LayoutTests/platform/gtk/mathml/opentype/vertical-expected.txt >index 4b0e6c4..1bb5ba1 100644 >--- a/LayoutTests/platform/gtk/mathml/opentype/vertical-expected.txt >+++ b/LayoutTests/platform/gtk/mathml/opentype/vertical-expected.txt >@@ -1,8 +1,8 @@ > layer at (0,0) size 800x600 > RenderView at (0,0) size 800x600 >-layer at (0,0) size 800x371 >- RenderBlock {HTML} at (0,0) size 800x371 >- RenderBody {BODY} at (8,16) size 784x339 >+layer at (0,0) size 800x358 >+ RenderBlock {HTML} at (0,0) size 800x358 >+ RenderBody {BODY} at (8,16) size 784x326 > RenderBlock {P} at (0,0) size 784x18 > RenderMathMLMath {math} at (0,2) size 100x16 [padding: 0 1 0 1] > RenderMathMLOperator {mo} at (1,0) size 4x16 >@@ -67,72 +67,72 @@ layer at (0,0) size 800x371 > text run at (0,-45) width 6: "\x{27E9}" > RenderMathMLSpace {mspace} at (98,4) size 0x8 > RenderText {#text} at (0,0) size 0x0 >- RenderBlock {P} at (0,34) size 784x30 >- RenderMathMLMath {math} at (0,0) size 142x30 [padding: 0 1 0 1] >- RenderMathMLOperator {mo} at (1,0) size 8x30 >+ RenderBlock {P} at (0,34) size 784x24 >+ RenderMathMLMath {math} at (0,0) size 128x24 [padding: 0 1 0 1] >+ RenderMathMLOperator {mo} at (1,0) size 7x24 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "[" >- RenderMathMLOperator {mo} at (9,0) size 8x30 >+ RenderMathMLOperator {mo} at (8,0) size 7x24 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "]" >- RenderMathMLOperator {mo} at (17,0) size 11x30 >+ RenderMathMLOperator {mo} at (15,0) size 10x24 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "{" >- RenderMathMLOperator {mo} at (28,0) size 11x30 >+ RenderMathMLOperator {mo} at (25,0) size 10x24 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "}" >- RenderMathMLOperator {mo} at (39,0) size 10x30 >+ RenderMathMLOperator {mo} at (35,0) size 8x24 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "(" >- RenderMathMLOperator {mo} at (49,0) size 10x30 >+ RenderMathMLOperator {mo} at (43,0) size 8x24 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: ")" >- RenderMathMLOperator {mo} at (59,1) size 8x28 >+ RenderMathMLOperator {mo} at (51,0) size 8x24 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "|" >- RenderMathMLOperator {mo} at (66,0) size 9x30 >+ RenderMathMLOperator {mo} at (58,0) size 9x24 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2308}" >- RenderMathMLOperator {mo} at (74,0) size 9x30 >+ RenderMathMLOperator {mo} at (66,0) size 9x24 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2309}" >- RenderMathMLOperator {mo} at (82,0) size 9x30 >+ RenderMathMLOperator {mo} at (74,0) size 9x24 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230A}" >- RenderMathMLOperator {mo} at (90,0) size 9x30 >+ RenderMathMLOperator {mo} at (82,0) size 9x24 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230B}" >- RenderMathMLOperator {mo} at (98,0) size 12x30 >+ RenderMathMLOperator {mo} at (90,0) size 10x24 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{27E6}" >- RenderMathMLOperator {mo} at (109,0) size 12x30 >+ RenderMathMLOperator {mo} at (99,0) size 10x24 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{27E7}" >- RenderMathMLOperator {mo} at (120,0) size 11x30 >+ RenderMathMLOperator {mo} at (108,0) size 10x24 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "\x{27E8}" >- RenderMathMLOperator {mo} at (130,0) size 11x30 >+ RenderMathMLOperator {mo} at (117,0) size 10x24 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "\x{27E9}" >- RenderMathMLSpace {mspace} at (140,3) size 0x16 >- RenderText {#text} at (141,5) size 5x17 >- text run at (141,5) width 5: " " >- RenderMathMLMath {math} at (145,3) size 212x23 [padding: 0 1 0 1] >+ RenderMathMLSpace {mspace} at (126,0) size 0x16 >+ RenderText {#text} at (127,2) size 5x17 >+ text run at (127,2) width 5: " " >+ RenderMathMLMath {math} at (131,0) size 212x23 [padding: 0 1 0 1] > RenderMathMLOperator {mo} at (1,1) size 17x22 > RenderBlock (anonymous) at (0,0) size 8x15 > RenderText {#text} at (0,-46) size 8x106 >@@ -183,93 +183,93 @@ layer at (0,0) size 800x371 > text run at (0,-45) width 10: "\x{21D5}" > RenderMathMLSpace {mspace} at (209,0) size 0x16 > RenderText {#text} at (0,0) size 0x0 >- RenderBlock {P} at (0,80) size 784x48 >- RenderMathMLMath {math} at (0,0) size 190x48 [padding: 0 1 0 1] >- RenderMathMLOperator {mo} at (1,0) size 11x48 >+ RenderBlock {P} at (0,74) size 784x42 >+ RenderMathMLMath {math} at (0,0) size 160x42 [padding: 0 1 0 1] >+ RenderMathMLOperator {mo} at (1,1) size 8x40 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "[" >- RenderMathMLOperator {mo} at (12,0) size 11x48 >+ RenderMathMLOperator {mo} at (9,1) size 8x40 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "]" >- RenderMathMLOperator {mo} at (23,0) size 14x48 >+ RenderMathMLOperator {mo} at (17,1) size 12x40 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "{" >- RenderMathMLOperator {mo} at (37,0) size 14x48 >+ RenderMathMLOperator {mo} at (29,1) size 12x40 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "}" >- RenderMathMLOperator {mo} at (51,0) size 14x48 >+ RenderMathMLOperator {mo} at (41,1) size 12x40 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "(" >- RenderMathMLOperator {mo} at (65,0) size 14x48 >+ RenderMathMLOperator {mo} at (53,1) size 12x40 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: ")" >- RenderMathMLOperator {mo} at (79,3) size 8x42 >+ RenderMathMLOperator {mo} at (65,0) size 8x42 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "|" >- RenderMathMLOperator {mo} at (86,0) size 11x48 >+ RenderMathMLOperator {mo} at (72,1) size 10x40 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2308}" >- RenderMathMLOperator {mo} at (96,0) size 11x48 >+ RenderMathMLOperator {mo} at (81,1) size 10x40 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2309}" >- RenderMathMLOperator {mo} at (106,0) size 11x48 >+ RenderMathMLOperator {mo} at (90,1) size 10x40 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230A}" >- RenderMathMLOperator {mo} at (116,0) size 11x48 >+ RenderMathMLOperator {mo} at (99,1) size 10x40 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230B}" >- RenderMathMLOperator {mo} at (126,0) size 17x48 >+ RenderMathMLOperator {mo} at (108,1) size 14x40 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{27E6}" >- RenderMathMLOperator {mo} at (142,0) size 17x48 >+ RenderMathMLOperator {mo} at (121,1) size 14x40 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{27E7}" >- RenderMathMLOperator {mo} at (158,0) size 16x48 >+ RenderMathMLOperator {mo} at (134,1) size 13x40 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "\x{27E8}" >- RenderMathMLOperator {mo} at (173,0) size 16x48 >+ RenderMathMLOperator {mo} at (146,1) size 13x40 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "\x{27E9}" >- RenderMathMLSpace {mspace} at (188,4) size 0x24 >+ RenderMathMLSpace {mspace} at (158,1) size 0x24 > RenderText {#text} at (0,0) size 0x0 >- RenderBlock {P} at (0,144) size 784x58 >+ RenderBlock {P} at (0,132) size 784x58 > RenderMathMLMath {math} at (0,0) size 194x58 [padding: 0 1 0 1] >- RenderMathMLOperator {mo} at (1,1) size 11x57 >+ RenderMathMLOperator {mo} at (1,1) size 11x56 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "[" >- RenderMathMLOperator {mo} at (12,1) size 11x57 >+ RenderMathMLOperator {mo} at (12,1) size 11x56 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "]" >- RenderMathMLOperator {mo} at (23,1) size 14x57 >+ RenderMathMLOperator {mo} at (23,1) size 14x56 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "{" >- RenderMathMLOperator {mo} at (37,1) size 14x57 >+ RenderMathMLOperator {mo} at (37,1) size 14x56 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "}" >- RenderMathMLOperator {mo} at (51,1) size 14x57 >+ RenderMathMLOperator {mo} at (51,1) size 14x56 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "(" >- RenderMathMLOperator {mo} at (65,1) size 14x57 >+ RenderMathMLOperator {mo} at (65,1) size 14x56 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: ")" >@@ -277,27 +277,27 @@ layer at (0,0) size 800x371 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "|" >- RenderMathMLOperator {mo} at (86,1) size 12x57 >+ RenderMathMLOperator {mo} at (86,1) size 12x56 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2308}" >- RenderMathMLOperator {mo} at (97,1) size 12x57 >+ RenderMathMLOperator {mo} at (97,1) size 12x56 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2309}" >- RenderMathMLOperator {mo} at (108,1) size 12x57 >+ RenderMathMLOperator {mo} at (108,1) size 12x56 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230A}" >- RenderMathMLOperator {mo} at (119,1) size 12x57 >+ RenderMathMLOperator {mo} at (119,1) size 12x56 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230B}" >- RenderMathMLOperator {mo} at (130,1) size 17x57 >+ RenderMathMLOperator {mo} at (130,1) size 17x56 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{27E6}" >- RenderMathMLOperator {mo} at (146,1) size 17x57 >+ RenderMathMLOperator {mo} at (146,1) size 17x56 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{27E7}" >@@ -363,57 +363,57 @@ layer at (0,0) size 800x371 > text run at (0,-45) width 10: "\x{21D5}" > RenderMathMLSpace {mspace} at (210,0) size 0x32 > RenderText {#text} at (0,0) size 0x0 >- RenderBlock {P} at (0,218) size 784x121 >- RenderMathMLMath {math} at (0,0) size 194x121 [padding: 0 1 0 1] >- RenderMathMLOperator {mo} at (1,0) size 11x121 >+ RenderBlock {P} at (0,206) size 784x120 >+ RenderMathMLMath {math} at (0,0) size 194x120 [padding: 0 1 0 1] >+ RenderMathMLOperator {mo} at (1,0) size 11x120 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "[" >- RenderMathMLOperator {mo} at (12,0) size 11x121 >+ RenderMathMLOperator {mo} at (12,0) size 11x120 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "]" >- RenderMathMLOperator {mo} at (23,0) size 14x121 >+ RenderMathMLOperator {mo} at (23,0) size 14x120 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "{" >- RenderMathMLOperator {mo} at (37,0) size 14x121 >+ RenderMathMLOperator {mo} at (37,0) size 14x120 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "}" >- RenderMathMLOperator {mo} at (51,0) size 14x121 >+ RenderMathMLOperator {mo} at (51,0) size 14x120 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "(" >- RenderMathMLOperator {mo} at (65,0) size 14x121 >+ RenderMathMLOperator {mo} at (65,0) size 14x120 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: ")" >- RenderMathMLOperator {mo} at (79,0) size 8x121 >+ RenderMathMLOperator {mo} at (79,0) size 8x120 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "|" >- RenderMathMLOperator {mo} at (86,0) size 12x121 >+ RenderMathMLOperator {mo} at (86,0) size 12x120 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2308}" >- RenderMathMLOperator {mo} at (97,0) size 12x121 >+ RenderMathMLOperator {mo} at (97,0) size 12x120 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2309}" >- RenderMathMLOperator {mo} at (108,0) size 12x121 >+ RenderMathMLOperator {mo} at (108,0) size 12x120 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230A}" >- RenderMathMLOperator {mo} at (119,0) size 12x121 >+ RenderMathMLOperator {mo} at (119,0) size 12x120 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230B}" >- RenderMathMLOperator {mo} at (130,0) size 17x121 >+ RenderMathMLOperator {mo} at (130,0) size 17x120 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{27E6}" >- RenderMathMLOperator {mo} at (146,0) size 17x121 >+ RenderMathMLOperator {mo} at (146,0) size 17x120 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{27E7}" >diff --git a/LayoutTests/platform/gtk/mathml/presentation/mo-stretch-expected.png b/LayoutTests/platform/gtk/mathml/presentation/mo-stretch-expected.png >index 31a1c60f730266d7dc0da23e2f178794d1db738c..bae3dc9381fb256c374d54121a24f2399f02c4cf 100644 >GIT binary patch >literal 14513 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 >TdRhzM4|PRZ<5G?i=Kj9{@?q7% > >literal 14801 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 >Tr(zzMK#-SFK9eqObnAZsF$Q&- > >diff --git a/LayoutTests/platform/gtk/mathml/presentation/mo-stretch-expected.txt b/LayoutTests/platform/gtk/mathml/presentation/mo-stretch-expected.txt >index a8d6bf0..490e146 100644 >--- a/LayoutTests/platform/gtk/mathml/presentation/mo-stretch-expected.txt >+++ b/LayoutTests/platform/gtk/mathml/presentation/mo-stretch-expected.txt >@@ -1,108 +1,108 @@ > layer at (0,0) size 800x600 > RenderView at (0,0) size 800x600 >-layer at (0,0) size 800x270 >- RenderBlock {HTML} at (0,0) size 800x270 >- RenderBody {BODY} at (8,8) size 784x254 >- RenderMathMLMath {math} at (0,0) size 140x36 [padding: 0 1 0 1] >- RenderMathMLRow {mrow} at (1,0) size 138x36 >- RenderMathMLOperator {mo} at (0,3) size 10x30 >+layer at (0,0) size 800x268 >+ RenderBlock {HTML} at (0,0) size 800x268 >+ RenderBody {BODY} at (8,8) size 784x252 >+ RenderMathMLMath {math} at (0,0) size 132x36 [padding: 0 1 0 1] >+ RenderMathMLRow {mrow} at (1,0) size 130x36 >+ RenderMathMLOperator {mo} at (0,6) size 8x24 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "(" >- RenderMathMLOperator {mo} at (10,3) size 10x30 >+ RenderMathMLOperator {mo} at (8,6) size 8x24 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: ")" >- RenderMathMLOperator {mo} at (20,3) size 11x30 >+ RenderMathMLOperator {mo} at (16,6) size 10x24 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "{" >- RenderMathMLOperator {mo} at (31,3) size 11x30 >+ RenderMathMLOperator {mo} at (26,6) size 10x24 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "}" >- RenderMathMLOperator {mo} at (42,3) size 8x30 >+ RenderMathMLOperator {mo} at (36,6) size 7x24 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "[" >- RenderMathMLOperator {mo} at (50,3) size 8x30 >+ RenderMathMLOperator {mo} at (43,6) size 7x24 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "]" >- RenderMathMLOperator {mo} at (58,3) size 8x30 >+ RenderMathMLOperator {mo} at (50,6) size 8x24 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2308}" >- RenderMathMLOperator {mo} at (66,3) size 8x30 >+ RenderMathMLOperator {mo} at (58,6) size 8x24 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2309}" >- RenderMathMLOperator {mo} at (74,3) size 8x30 >+ RenderMathMLOperator {mo} at (66,6) size 8x24 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230A}" >- RenderMathMLOperator {mo} at (82,3) size 8x30 >+ RenderMathMLOperator {mo} at (74,6) size 8x24 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230B}" >- RenderMathMLOperator {mo} at (90,0) size 17x36 >+ RenderMathMLOperator {mo} at (82,0) size 17x36 > RenderBlock (anonymous) at (0,0) size 11x18 > RenderText {#text} at (0,-44) size 11x106 > text run at (0,-44) width 11: "\x{222B}" >- RenderMathMLOperator {mo} at (106,4) size 9x28 >+ RenderMathMLOperator {mo} at (98,6) size 9x24 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "|" >- RenderMathMLOperator {mo} at (114,10) size 7x16 >+ RenderMathMLOperator {mo} at (106,10) size 7x16 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "\x{2016}" >- RenderMathMLOperator {mo} at (120,10) size 18x16 >+ RenderMathMLOperator {mo} at (112,10) size 18x16 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "\x{2225}" >- RenderText {#text} at (139,8) size 5x17 >- text run at (139,8) width 5: " " >+ RenderText {#text} at (131,8) size 5x17 >+ text run at (131,8) width 5: " " > RenderBR {BR} at (0,0) size 0x0 >- RenderMathMLMath {math} at (0,36) size 172x143 [padding: 0 1 0 1] >- RenderMathMLRow {mrow} at (1,0) size 170x143 >- RenderMathMLOperator {mo} at (0,0) size 14x143 >+ RenderMathMLMath {math} at (0,36) size 172x142 [padding: 0 1 0 1] >+ RenderMathMLRow {mrow} at (1,0) size 170x142 >+ RenderMathMLOperator {mo} at (0,0) size 14x142 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "(" >- RenderMathMLOperator {mo} at (14,0) size 14x143 >+ RenderMathMLOperator {mo} at (14,0) size 14x142 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: ")" >- RenderMathMLOperator {mo} at (28,0) size 14x143 >+ RenderMathMLOperator {mo} at (28,0) size 14x142 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "{" >- RenderMathMLOperator {mo} at (42,0) size 14x143 >+ RenderMathMLOperator {mo} at (42,0) size 14x142 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "}" >- RenderMathMLOperator {mo} at (56,0) size 11x143 >+ RenderMathMLOperator {mo} at (56,0) size 11x142 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "[" >- RenderMathMLOperator {mo} at (67,0) size 11x143 >+ RenderMathMLOperator {mo} at (67,0) size 11x142 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "]" >- RenderMathMLOperator {mo} at (78,0) size 11x143 >+ RenderMathMLOperator {mo} at (78,0) size 11x142 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2308}" >- RenderMathMLOperator {mo} at (89,0) size 11x143 >+ RenderMathMLOperator {mo} at (89,0) size 11x142 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2309}" >- RenderMathMLOperator {mo} at (100,0) size 11x143 >+ RenderMathMLOperator {mo} at (100,0) size 11x142 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230A}" >- RenderMathMLOperator {mo} at (111,0) size 11x143 >+ RenderMathMLOperator {mo} at (111,0) size 11x142 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230B}" >@@ -110,7 +110,7 @@ layer at (0,0) size 800x270 > RenderBlock (anonymous) at (0,0) size 11x18 > RenderText {#text} at (0,-44) size 11x106 > text run at (0,-44) width 11: "\x{222B}" >- RenderMathMLOperator {mo} at (138,0) size 9x143 >+ RenderMathMLOperator {mo} at (138,0) size 9x142 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "|" >@@ -125,45 +125,45 @@ layer at (0,0) size 800x270 > RenderMathMLSpace {mspace} at (169,0) size 0x76 > RenderText {#text} at (171,97) size 5x17 > text run at (171,97) width 5: " " >- RenderMathMLMath {math} at (175,61) size 172x93 [padding: 0 1 0 1] >- RenderMathMLRow {mrow} at (1,0) size 170x93 >- RenderMathMLOperator {mo} at (0,0) size 14x93 >+ RenderMathMLMath {math} at (175,61) size 172x92 [padding: 0 1 0 1] >+ RenderMathMLRow {mrow} at (1,0) size 170x92 >+ RenderMathMLOperator {mo} at (0,0) size 14x92 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "(" >- RenderMathMLOperator {mo} at (14,0) size 14x93 >+ RenderMathMLOperator {mo} at (14,0) size 14x92 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: ")" >- RenderMathMLOperator {mo} at (28,0) size 14x93 >+ RenderMathMLOperator {mo} at (28,0) size 14x92 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "{" >- RenderMathMLOperator {mo} at (42,0) size 14x93 >+ RenderMathMLOperator {mo} at (42,0) size 14x92 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "}" >- RenderMathMLOperator {mo} at (56,0) size 11x93 >+ RenderMathMLOperator {mo} at (56,0) size 11x92 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "[" >- RenderMathMLOperator {mo} at (67,0) size 11x93 >+ RenderMathMLOperator {mo} at (67,0) size 11x92 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "]" >- RenderMathMLOperator {mo} at (78,0) size 11x93 >+ RenderMathMLOperator {mo} at (78,0) size 11x92 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2308}" >- RenderMathMLOperator {mo} at (89,0) size 11x93 >+ RenderMathMLOperator {mo} at (89,0) size 11x92 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2309}" >- RenderMathMLOperator {mo} at (100,0) size 11x93 >+ RenderMathMLOperator {mo} at (100,0) size 11x92 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230A}" >- RenderMathMLOperator {mo} at (111,0) size 11x93 >+ RenderMathMLOperator {mo} at (111,0) size 11x92 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230B}" >@@ -171,7 +171,7 @@ layer at (0,0) size 800x270 > RenderBlock (anonymous) at (0,0) size 11x18 > RenderText {#text} at (0,-44) size 11x106 > text run at (0,-44) width 11: "\x{222B}" >- RenderMathMLOperator {mo} at (138,0) size 9x93 >+ RenderMathMLOperator {mo} at (138,0) size 9x92 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "|" >@@ -248,45 +248,45 @@ layer at (0,0) size 800x270 > RenderText {#text} at (493,97) size 5x17 > text run at (493,97) width 5: " " > RenderBR {BR} at (0,0) size 0x0 >- RenderMathMLMath {math} at (0,179) size 187x76 [padding: 0 1 0 1] >- RenderMathMLRoot {msqrt} at (1,0) size 185x76 >- RenderMathMLOperator {mo} at (17,2) size 14x74 >+ RenderMathMLMath {math} at (0,178) size 187x75 [padding: 0 1 0 1] >+ RenderMathMLRoot {msqrt} at (1,0) size 185x75 >+ RenderMathMLOperator {mo} at (17,2) size 14x73 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: "(" >- RenderMathMLOperator {mo} at (31,2) size 14x74 >+ RenderMathMLOperator {mo} at (31,2) size 14x73 > RenderBlock (anonymous) at (0,0) size 6x16 > RenderText {#text} at (0,-45) size 6x106 > text run at (0,-45) width 6: ")" >- RenderMathMLOperator {mo} at (45,2) size 14x74 >+ RenderMathMLOperator {mo} at (45,2) size 14x73 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "{" >- RenderMathMLOperator {mo} at (59,2) size 14x74 >+ RenderMathMLOperator {mo} at (59,2) size 14x73 > RenderBlock (anonymous) at (0,0) size 8x16 > RenderText {#text} at (0,-45) size 8x106 > text run at (0,-45) width 8: "}" >- RenderMathMLOperator {mo} at (73,2) size 11x74 >+ RenderMathMLOperator {mo} at (73,2) size 11x73 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "[" >- RenderMathMLOperator {mo} at (84,2) size 11x74 >+ RenderMathMLOperator {mo} at (84,2) size 11x73 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "]" >- RenderMathMLOperator {mo} at (95,2) size 11x74 >+ RenderMathMLOperator {mo} at (95,2) size 11x73 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2308}" >- RenderMathMLOperator {mo} at (106,2) size 11x74 >+ RenderMathMLOperator {mo} at (106,2) size 11x73 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{2309}" >- RenderMathMLOperator {mo} at (117,2) size 11x74 >+ RenderMathMLOperator {mo} at (117,2) size 11x73 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230A}" >- RenderMathMLOperator {mo} at (128,2) size 11x74 >+ RenderMathMLOperator {mo} at (128,2) size 11x73 > RenderBlock (anonymous) at (0,0) size 7x16 > RenderText {#text} at (0,-45) size 7x106 > text run at (0,-45) width 7: "\x{230B}" >@@ -294,7 +294,7 @@ layer at (0,0) size 800x270 > RenderBlock (anonymous) at (0,0) size 11x18 > RenderText {#text} at (0,-44) size 11x106 > text run at (0,-44) width 11: "\x{222B}" >- RenderMathMLOperator {mo} at (155,2) size 9x74 >+ RenderMathMLOperator {mo} at (155,2) size 9x73 > RenderBlock (anonymous) at (0,0) size 4x16 > RenderText {#text} at (0,-45) size 4x106 > text run at (0,-45) width 4: "|" >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 5c81be1..b8cd468 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,25 @@ >+2016-03-18 Frederic Wang <fwang@igalia.com> >+ >+ Use OpenType MATH constant AxisHeight. >+ https://bugs.webkit.org/show_bug.cgi?id=133567 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ We make RenderMathMLOperator and RenderMathMLTable use the OpenType MATH constant AxisHeight. >+ These are the only remaining cases to handle since RenderMathMLFraction already uses that constant. >+ >+ Tests: imported/mathml-in-html5/mathml/presentation-markup/operators/mo-axis-height-1.html >+ imported/mathml-in-html5/mathml/presentation-markup/tables/table-axis-height.html >+ >+ * rendering/mathml/RenderMathMLBlock.cpp: Make RenderMathMLTable use the math axis >+ for its vertical alignment and update a bit the comments. >+ (WebCore::axisHeight): Move the code in a static function that can be called by >+ RenderMathMLBlock and RenderMathMLTable. >+ (WebCore::RenderMathMLBlock::mathAxisHeight): Use axisHeight. >+ (WebCore::RenderMathMLTable::firstLineBaseline): Ditto. >+ * rendering/mathml/RenderMathMLOperator.cpp: >+ (WebCore::RenderMathMLOperator::stretchTo): >+ > 2016-03-17 Frederic Wang <fwang@igalia.com> > > Add support for mathvariants that cannot be emulated via CSS. >diff --git a/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp b/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp >index 9288a20..0c66601 100644 >--- a/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp >+++ b/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp >@@ -67,13 +67,21 @@ bool RenderMathMLBlock::isChildAllowed(const RenderObject& child, const RenderSt > return is<Element>(child.node()); > } > >-LayoutUnit RenderMathMLBlock::mathAxisHeight() const >+static LayoutUnit axisHeight(const RenderStyle& style) > { >- const auto& primaryFont = style().fontCascade().primaryFont(); >+ // If we have a MATH table we just return the AxisHeight constant. >+ const auto& primaryFont = style.fontCascade().primaryFont(); > if (auto* mathData = primaryFont.mathData()) > return mathData->getMathConstant(primaryFont, OpenTypeMathData::AxisHeight); > >- return style().fontMetrics().xHeight() / 2; >+ // Otherwise, the idea is to try and use the middle of operators as the math axis which we thus approximate by "half of the x-height". >+ // Note that Gecko has a slower but more accurate version that measures half of the height of U+2212 MINUS SIGN. >+ return style.fontMetrics().xHeight() / 2; >+} >+ >+LayoutUnit RenderMathMLBlock::mathAxisHeight() const >+{ >+ return axisHeight(style()); > } > > LayoutUnit RenderMathMLBlock::mirrorIfNeeded(LayoutUnit horizontalOffset, LayoutUnit boxWidth) const >@@ -304,10 +312,9 @@ bool parseMathMLNamedSpace(const String& string, LayoutUnit& lengthValue, const > > Optional<int> RenderMathMLTable::firstLineBaseline() const > { >- // In legal MathML, we'll have a MathML parent. That RenderFlexibleBox parent will use our firstLineBaseline() for baseline alignment, per >- // http://dev.w3.org/csswg/css3-flexbox/#flex-baselines. We want to vertically center an <mtable>, such as a matrix. Essentially the whole <mtable> element fits on a >- // single line, whose baseline gives this centering. This is different than RenderTable::firstLineBoxBaseline, which returns the baseline of the first row of a <table>. >- return (logicalHeight() + style().fontMetrics().xHeight()) / 2; >+ // By default the vertical center of <mtable> is aligned on the math axis. >+ // This is different than RenderTable::firstLineBoxBaseline, which returns the baseline of the first row of a <table>. >+ return Optional<int>(logicalHeight() / 2 + axisHeight(style())); > } > > void RenderMathMLBlock::layoutItems(bool relayoutChildren) >diff --git a/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp b/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp >index ec5a81d..7646c35 100644 >--- a/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp >+++ b/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp >@@ -184,8 +184,7 @@ void RenderMathMLOperator::stretchTo(LayoutUnit heightAboveBaseline, LayoutUnit > setOperatorProperties(); > if (hasOperatorFlag(MathMLOperatorDictionary::Symmetric)) { > // We make the operator stretch symmetrically above and below the axis. >- // FIXME: We should read the axis from the MATH table (https://bugs.webkit.org/show_bug.cgi?id=122297). For now, we use the same value as in RenderMathMLFraction::firstLineBaseline(). >- LayoutUnit axis = style().fontMetrics().xHeight() / 2; >+ LayoutUnit axis = mathAxisHeight(); > LayoutUnit halfStretchSize = std::max(m_stretchHeightAboveBaseline - axis, m_stretchDepthBelowBaseline + axis); > m_stretchHeightAboveBaseline = halfStretchSize + axis; > m_stretchDepthBelowBaseline = halfStretchSize - axis; >-- >2.8.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 133567
:
274414
|
277381
|
281536
|
282055
|
283117
|
283124
|
283125
|
283126