Diff
Modified: trunk/LayoutTests/ChangeLog (202933 => 202934)
--- trunk/LayoutTests/ChangeLog 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/ChangeLog 2016-07-07 21:48:12 UTC (rev 202934)
@@ -1,3 +1,33 @@
+2016-07-07 Frederic Wang <[email protected]>
+
+ Refactor layout functions to avoid using flexbox in MathML
+ https://bugs.webkit.org/show_bug.cgi?id=153991
+
+ Reviewed by Brent Fulgham.
+
+ Update expectations of some MathML tests to take into account the
+ removal of some line breaks and a better computation of the width of
+ MathML expressions with vertical stretchy operators.
+
+ * mathml/presentation/stretchy-depth-height-expected.txt:
+ * platform/gtk/mathml/opentype/opentype-stretchy-expected.png:
+ * platform/gtk/mathml/opentype/opentype-stretchy-expected.txt:
+ * platform/gtk/mathml/opentype/vertical-expected.png:
+ * platform/gtk/mathml/opentype/vertical-expected.txt:
+ * platform/gtk/mathml/presentation/mo-stretch-expected.png:
+ * platform/gtk/mathml/presentation/mo-stretch-expected.txt:
+ * platform/gtk/mathml/presentation/roots-expected.png:
+ * platform/gtk/mathml/presentation/roots-expected.txt:
+ * platform/ios-simulator/mathml/opentype/opentype-stretchy-expected.png:
+ * platform/ios-simulator/mathml/opentype/opentype-stretchy-expected.txt:
+ * platform/ios-simulator/mathml/presentation/mo-stretch-expected.txt:
+ * platform/mac/mathml/opentype/opentype-stretchy-expected.png:
+ * platform/mac/mathml/opentype/opentype-stretchy-expected.txt:
+ * platform/mac/mathml/presentation/mo-stretch-expected.png:
+ * platform/mac/mathml/presentation/mo-stretch-expected.txt:
+ * accessibility/mac/mathml-elements-expected.txt:
+ * imported/blink/fast/text/output-isolate-at-end-of-line-crash-expected.txt:
+
2016-07-07 Joseph Pecoraro <[email protected]>
Web Inspector, regression: JS/JSON pretty-printing sporadically broken in STP8
Modified: trunk/LayoutTests/accessibility/mac/mathml-elements-expected.txt (202933 => 202934)
--- trunk/LayoutTests/accessibility/mac/mathml-elements-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/accessibility/mac/mathml-elements-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -33,9 +33,7 @@
under
over
-3
-2
-1
+3 2 1
This tests ensures that Mac specific attributes and roles for MathML elements work as expected.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
Modified: trunk/LayoutTests/imported/blink/fast/text/output-isolate-at-end-of-line-crash-expected.txt (202933 => 202934)
--- trunk/LayoutTests/imported/blink/fast/text/output-isolate-at-end-of-line-crash-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/imported/blink/fast/text/output-isolate-at-end-of-line-crash-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -1,2 +1,3 @@
>>>>
->hCi* > This test has passed if it doesn't crash under ASAN
+>hCi* >
+This test has passed if it doesn't crash under ASAN
Modified: trunk/LayoutTests/mathml/presentation/stretchy-depth-height-expected.txt (202933 => 202934)
--- trunk/LayoutTests/mathml/presentation/stretchy-depth-height-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/mathml/presentation/stretchy-depth-height-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -7,12 +7,7 @@
{
{
-x y z
-x y z
-x y z
-x y z
-x y z
-
+x y z x y z x y z x y z x y z
{
1
2
Modified: trunk/LayoutTests/platform/gtk/mathml/opentype/opentype-stretchy-expected.png
(Binary files differ)
Modified: trunk/LayoutTests/platform/gtk/mathml/opentype/opentype-stretchy-expected.txt (202933 => 202934)
--- trunk/LayoutTests/platform/gtk/mathml/opentype/opentype-stretchy-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/platform/gtk/mathml/opentype/opentype-stretchy-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -4,23 +4,23 @@
RenderBlock {HTML} at (0,0) size 800x347
RenderBody {BODY} at (8,16) size 784x315
RenderBlock {P} at (0,0) size 784x34
- RenderMathMLMath {math} at (0,20) size 49x11 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (0,20) size 28x11 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 26x11
RenderMathMLOperator {mo} at (0,0) size 26x11
RenderBlock (anonymous) at (0,0) size 2x3
RenderText {#text} at (0,-3) size 2x0
text run at (0,-3) width 2: "\x{219F}"
- RenderText {#text} at (48,17) size 5x17
- text run at (48,17) width 5: " "
- RenderMathMLMath {math} at (52,10) size 50x21 [padding: 0 1 0 1]
+ RenderText {#text} at (27,17) size 5x17
+ text run at (27,17) width 5: " "
+ RenderMathMLMath {math} at (31,10) size 29x21 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 26x21
RenderMathMLOperator {mo} at (0,0) size 26x21
RenderBlock (anonymous) at (0,0) size 2x3
RenderText {#text} at (0,-3) size 2x0
text run at (0,-3) width 2: "\x{219F}"
- RenderText {#text} at (101,17) size 5x17
- text run at (101,17) width 5: " "
- RenderMathMLMath {math} at (105,0) size 49x31 [padding: 0 1 0 1]
+ RenderText {#text} at (59,17) size 5x17
+ text run at (59,17) width 5: " "
+ RenderMathMLMath {math} at (63,0) size 28x31 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 26x31
RenderMathMLOperator {mo} at (0,0) size 26x31
RenderBlock (anonymous) at (0,0) size 2x3
Modified: trunk/LayoutTests/platform/gtk/mathml/opentype/vertical-expected.png
(Binary files differ)
Modified: trunk/LayoutTests/platform/gtk/mathml/opentype/vertical-expected.txt (202933 => 202934)
--- trunk/LayoutTests/platform/gtk/mathml/opentype/vertical-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/platform/gtk/mathml/opentype/vertical-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -4,7 +4,7 @@
RenderBlock {HTML} at (0,0) size 800x371
RenderBody {BODY} at (8,16) size 784x339
RenderBlock {P} at (0,0) size 784x18
- RenderMathMLMath {math} at (0,2) size 194x16 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (0,2) size 100x16 [padding: 0 1 0 1]
RenderMathMLOperator {mo} at (1,0) size 4x16
RenderBlock (anonymous) at (0,0) size 4x16
RenderText {#text} at (0,-45) size 4x106
@@ -68,7 +68,7 @@
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 194x30 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (0,0) size 142x30 [padding: 0 1 0 1]
RenderMathMLOperator {mo} at (1,0) size 8x30
RenderBlock (anonymous) at (0,0) size 4x16
RenderText {#text} at (0,-45) size 4x106
@@ -130,9 +130,9 @@
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 (193,5) size 5x17
- text run at (193,5) width 5: " "
- RenderMathMLMath {math} at (197,3) size 213x23 [padding: 0 1 0 1]
+ 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]
RenderMathMLOperator {mo} at (1,1) size 17x22
RenderBlock (anonymous) at (0,0) size 8x15
RenderText {#text} at (0,-46) size 8x106
@@ -184,7 +184,7 @@
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 194x48 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (0,0) size 190x48 [padding: 0 1 0 1]
RenderMathMLOperator {mo} at (1,0) size 11x48
RenderBlock (anonymous) at (0,0) size 4x16
RenderText {#text} at (0,-45) size 4x106
Modified: trunk/LayoutTests/platform/gtk/mathml/presentation/mo-stretch-expected.png
(Binary files differ)
Modified: trunk/LayoutTests/platform/gtk/mathml/presentation/mo-stretch-expected.txt (202933 => 202934)
--- trunk/LayoutTests/platform/gtk/mathml/presentation/mo-stretch-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/platform/gtk/mathml/presentation/mo-stretch-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -3,7 +3,7 @@
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 173x36 [padding: 0 1 0 1]
+ 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
RenderBlock (anonymous) at (0,0) size 6x16
@@ -61,10 +61,10 @@
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 (172,8) size 5x17
- text run at (172,8) width 5: " "
+ RenderText {#text} at (139,8) size 5x17
+ text run at (139,8) width 5: " "
RenderBR {BR} at (0,0) size 0x0
- RenderMathMLMath {math} at (0,36) size 173x143 [padding: 0 1 0 1]
+ 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
RenderBlock (anonymous) at (0,0) size 6x16
@@ -123,9 +123,9 @@
RenderText {#text} at (0,-45) size 8x106
text run at (0,-45) width 8: "\x{2225}"
RenderMathMLSpace {mspace} at (169,0) size 0x76
- RenderText {#text} at (172,97) size 5x17
- text run at (172,97) width 5: " "
- RenderMathMLMath {math} at (176,61) size 173x93 [padding: 0 1 0 1]
+ 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
RenderBlock (anonymous) at (0,0) size 6x16
@@ -184,9 +184,9 @@
RenderText {#text} at (0,-45) size 8x106
text run at (0,-45) width 8: "\x{2225}"
RenderMathMLSpace {mspace} at (169,0) size 0x51
- RenderText {#text} at (348,97) size 5x17
- text run at (348,97) width 5: " "
- RenderMathMLMath {math} at (352,89) size 173x36 [padding: 0 1 0 1]
+ RenderText {#text} at (346,97) size 5x17
+ text run at (346,97) width 5: " "
+ RenderMathMLMath {math} at (350,89) size 144x36 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 142x36
RenderMathMLOperator {mo} at (0,1) size 11x34
RenderBlock (anonymous) at (0,0) size 6x16
@@ -245,10 +245,10 @@
RenderText {#text} at (0,-45) size 8x106
text run at (0,-45) width 8: "\x{2225}"
RenderMathMLSpace {mspace} at (141,2) size 0x21
- RenderText {#text} at (524,97) size 5x17
- text run at (524,97) width 5: " "
+ 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 190x76 [padding: 0 1 0 1]
+ 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
RenderBlock (anonymous) at (0,0) size 6x16
Modified: trunk/LayoutTests/platform/gtk/mathml/presentation/roots-expected.png
(Binary files differ)
Modified: trunk/LayoutTests/platform/gtk/mathml/presentation/roots-expected.txt (202933 => 202934)
--- trunk/LayoutTests/platform/gtk/mathml/presentation/roots-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/platform/gtk/mathml/presentation/roots-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -6,7 +6,7 @@
RenderBlock {p} at (0,0) size 784x18
RenderText {#text} at (0,0) size 177x17
text run at (0,0) width 177: "square root (should be red): "
- RenderMathMLMath {math} at (177,1) size 27x18 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (177,1) size 23x18 [padding: 0 1 0 1]
RenderMathMLRoot {msqrt} at (1,0) size 21x18 [color=#FF0000]
RenderMathMLToken {mn} at (13,2) size 8x13
RenderBlock (anonymous) at (0,0) size 8x12
@@ -15,7 +15,7 @@
RenderBlock {p} at (0,34) size 784x18
RenderText {#text} at (0,0) size 110x17
text run at (0,0) width 110: "long square root: "
- RenderMathMLMath {math} at (110,1) size 56x18 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (110,1) size 52x18 [padding: 0 1 0 1]
RenderMathMLRoot {msqrt} at (1,0) size 50x18
RenderMathMLRow {mrow} at (13,2) size 37x14
RenderMathMLToken {mi} at (0,3) size 9x9 [padding: 0 2 0 0]
@@ -33,7 +33,7 @@
RenderBlock {p} at (0,68) size 784x19
RenderText {#text} at (0,2) size 222x17
text run at (0,2) width 222: "long square root with implied row: "
- RenderMathMLMath {math} at (222,0) size 62x19 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (222,0) size 58x19 [padding: 0 1 0 1]
RenderMathMLRoot {msqrt} at (1,0) size 56x19
RenderMathMLScripts {msup} at (13,2) size 16x15
RenderMathMLToken {mi} at (0,5) size 9x10 [padding: 0 2 0 0]
@@ -55,7 +55,7 @@
RenderBlock {p} at (0,103) size 784x40
RenderText {#text} at (0,8) size 113x17
text run at (0,8) width 113: "root of a fraction: "
- RenderMathMLMath {math} at (113,0) size 56x41 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (113,0) size 55x41 [padding: 0 1 0 1]
RenderMathMLRoot {msqrt} at (1,0) size 53x41
RenderMathMLFraction {mfrac} at (16,2) size 37x34
RenderMathMLRow {mrow} at (0,0) size 37x13
@@ -87,7 +87,7 @@
RenderBlock {p} at (0,159) size 784x18
RenderText {#text} at (0,0) size 173x17
text run at (0,0) width 173: "cube root (should be blue): "
- RenderMathMLMath {math} at (173,1) size 28x18 [color=#0000FF] [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (173,1) size 24x18 [color=#0000FF] [padding: 0 1 0 1]
RenderMathMLRoot {mroot} at (1,0) size 22x18
RenderMathMLToken {mn} at (13,2) size 9x13
RenderBlock (anonymous) at (0,0) size 8x12
@@ -100,7 +100,7 @@
RenderBlock {p} at (0,193) size 784x18
RenderText {#text} at (0,0) size 75x17
text run at (0,0) width 75: "long index: "
- RenderMathMLMath {math} at (75,0) size 58x19 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (75,0) size 54x19 [padding: 0 1 0 1]
RenderMathMLRoot {mroot} at (1,0) size 52x19
RenderMathMLToken {mn} at (43,2) size 9x13
RenderBlock (anonymous) at (0,0) size 8x12
@@ -130,7 +130,7 @@
RenderBlock {p} at (0,227) size 784x40
RenderText {#text} at (0,8) size 185x17
text run at (0,8) width 185: "long index w/ complex base: "
- RenderMathMLMath {math} at (185,0) size 86x41 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (185,0) size 85x41 [padding: 0 1 0 1]
RenderMathMLRoot {mroot} at (1,0) size 83x41
RenderMathMLFraction {mfrac} at (46,2) size 37x34
RenderMathMLRow {mrow} at (0,0) size 37x13
@@ -183,7 +183,7 @@
RenderBlock {p} at (0,283) size 784x34
RenderText {#text} at (0,16) size 75x17
text run at (0,16) width 75: "high index: "
- RenderMathMLMath {math} at (75,0) size 28x35 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (75,0) size 24x35 [padding: 0 1 0 1]
RenderMathMLRoot {mroot} at (1,0) size 22x35
RenderMathMLToken {mn} at (13,18) size 9x13
RenderBlock (anonymous) at (0,0) size 8x12
@@ -206,7 +206,7 @@
RenderBlock {p} at (0,333) size 784x54
RenderText {#text} at (0,14) size 155x17
text run at (0,14) width 155: "Imbricated square roots: "
- RenderMathMLMath {math} at (155,0) size 340x55 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (155,0) size 332x55 [padding: 0 1 0 1]
RenderMathMLRoot {msqrt} at (1,0) size 330x55
RenderMathMLToken {mn} at (17,17) size 8x13
RenderBlock (anonymous) at (0,0) size 8x12
@@ -285,7 +285,7 @@
RenderBlock {p} at (0,403) size 784x56
RenderText {#text} at (0,24) size 110x17
text run at (0,24) width 110: "Imbricated roots: "
- RenderMathMLMath {math} at (110,0) size 360x57 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (110,0) size 353x57 [padding: 0 1 0 1]
RenderMathMLRoot {mroot} at (1,0) size 351x57
RenderMathMLRow {mrow} at (17,2) size 334x55
RenderMathMLToken {mn} at (0,25) size 8x12
@@ -411,8 +411,8 @@
RenderBlock {p} at (0,475) size 784x56
RenderText {#text} at (0,24) size 74x17
text run at (0,24) width 74: "RTL roots: "
- RenderMathMLMath {math} at (74,0) size 360x57 [padding: 0 1 0 1]
- RenderMathMLRoot {mroot} at (8,0) size 351x57
+ RenderMathMLMath {math} at (74,0) size 353x57 [padding: 0 1 0 1]
+ RenderMathMLRoot {mroot} at (1,0) size 351x57
RenderMathMLRow {mrow} at (0,2) size 333x55
RenderMathMLToken {mn} at (324,25) size 9x12
RenderBlock (anonymous) at (0,0) size 8x12
Modified: trunk/LayoutTests/platform/ios-simulator/mathml/opentype/opentype-stretchy-expected.png
(Binary files differ)
Modified: trunk/LayoutTests/platform/ios-simulator/mathml/opentype/opentype-stretchy-expected.txt (202933 => 202934)
--- trunk/LayoutTests/platform/ios-simulator/mathml/opentype/opentype-stretchy-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/platform/ios-simulator/mathml/opentype/opentype-stretchy-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -4,23 +4,23 @@
RenderBlock {HTML} at (0,0) size 800x342
RenderBody {BODY} at (8,16) size 784x310
RenderBlock {P} at (0,0) size 784x36
- RenderMathMLMath {math} at (0,21) size 49x11 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (0,21) size 28x11 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 26x11
RenderMathMLOperator {mo} at (0,0) size 26x11
RenderBlock (anonymous) at (0,0) size 3x3
RenderText {#text} at (0,-3) size 3x0
text run at (0,-3) width 3: "\x{219F}"
- RenderText {#text} at (48,16) size 5x19
- text run at (48,16) width 5: " "
- RenderMathMLMath {math} at (52,11) size 49x21 [padding: 0 1 0 1]
+ RenderText {#text} at (28,16) size 4x19
+ text run at (28,16) width 4: " "
+ RenderMathMLMath {math} at (32,11) size 28x21 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 26x21
RenderMathMLOperator {mo} at (0,0) size 26x21
RenderBlock (anonymous) at (0,0) size 3x3
RenderText {#text} at (0,-3) size 3x0
text run at (0,-3) width 3: "\x{219F}"
- RenderText {#text} at (100,16) size 5x19
- text run at (100,16) width 5: " "
- RenderMathMLMath {math} at (104,0) size 50x31 [padding: 0 1 0 1]
+ RenderText {#text} at (60,16) size 4x19
+ text run at (60,16) width 4: " "
+ RenderMathMLMath {math} at (64,0) size 28x31 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 26x31
RenderMathMLOperator {mo} at (0,0) size 26x31
RenderBlock (anonymous) at (0,0) size 3x3
Modified: trunk/LayoutTests/platform/ios-simulator/mathml/presentation/mo-stretch-expected.txt (202933 => 202934)
--- trunk/LayoutTests/platform/ios-simulator/mathml/presentation/mo-stretch-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/platform/ios-simulator/mathml/presentation/mo-stretch-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -3,7 +3,7 @@
layer at (0,0) size 800x254
RenderBlock {HTML} at (0,0) size 800x254
RenderBody {BODY} at (8,8) size 784x238
- RenderMathMLMath {math} at (0,2) size 70x18 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (0,2) size 60x18 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 58x18
RenderMathMLOperator {mo} at (0,1) size 6x15
RenderBlock (anonymous) at (0,0) size 6x16
@@ -61,8 +61,8 @@
RenderBlock (anonymous) at (0,0) size 11x13
RenderText {#text} at (0,0) size 11x17
text run at (0,0) width 11: "\x{2225}"
- RenderText {#text} at (69,0) size 5x19
- text run at (69,0) width 5: " "
+ RenderText {#text} at (59,0) size 5x19
+ text run at (59,0) width 5: " "
RenderBR {BR} at (0,0) size 0x0
RenderMathMLMath {math} at (0,20) size 70x143 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 68x143
Modified: trunk/LayoutTests/platform/mac/mathml/opentype/opentype-stretchy-expected.png
(Binary files differ)
Modified: trunk/LayoutTests/platform/mac/mathml/opentype/opentype-stretchy-expected.txt (202933 => 202934)
--- trunk/LayoutTests/platform/mac/mathml/opentype/opentype-stretchy-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/platform/mac/mathml/opentype/opentype-stretchy-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -4,23 +4,23 @@
RenderBlock {HTML} at (0,0) size 800x339
RenderBody {BODY} at (8,16) size 784x307
RenderBlock {P} at (0,0) size 784x35
- RenderMathMLMath {math} at (0,21) size 49x11 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (0,21) size 28x11 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 26x11
RenderMathMLOperator {mo} at (0,0) size 26x11
RenderBlock (anonymous) at (0,0) size 3x3
RenderText {#text} at (0,-3) size 3x0
text run at (0,-3) width 3: "\x{219F}"
- RenderText {#text} at (48,17) size 5x18
- text run at (48,17) width 5: " "
- RenderMathMLMath {math} at (52,11) size 49x21 [padding: 0 1 0 1]
+ RenderText {#text} at (28,17) size 4x18
+ text run at (28,17) width 4: " "
+ RenderMathMLMath {math} at (32,11) size 28x21 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 26x21
RenderMathMLOperator {mo} at (0,0) size 26x21
RenderBlock (anonymous) at (0,0) size 3x3
RenderText {#text} at (0,-3) size 3x0
text run at (0,-3) width 3: "\x{219F}"
- RenderText {#text} at (100,17) size 5x18
- text run at (100,17) width 5: " "
- RenderMathMLMath {math} at (104,0) size 50x31 [padding: 0 1 0 1]
+ RenderText {#text} at (60,17) size 4x18
+ text run at (60,17) width 4: " "
+ RenderMathMLMath {math} at (64,0) size 28x31 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 26x31
RenderMathMLOperator {mo} at (0,0) size 26x31
RenderBlock (anonymous) at (0,0) size 3x3
Modified: trunk/LayoutTests/platform/mac/mathml/presentation/mo-stretch-expected.png
(Binary files differ)
Modified: trunk/LayoutTests/platform/mac/mathml/presentation/mo-stretch-expected.txt (202933 => 202934)
--- trunk/LayoutTests/platform/mac/mathml/presentation/mo-stretch-expected.txt 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/LayoutTests/platform/mac/mathml/presentation/mo-stretch-expected.txt 2016-07-07 21:48:12 UTC (rev 202934)
@@ -3,7 +3,7 @@
layer at (0,0) size 800x258
RenderBlock {HTML} at (0,0) size 800x258
RenderBody {BODY} at (8,8) size 784x242
- RenderMathMLMath {math} at (0,0) size 126x25 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (0,0) size 110x25 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 108x25
RenderMathMLOperator {mo} at (0,5) size 6x14
RenderBlock (anonymous) at (0,0) size 6x14
@@ -61,10 +61,10 @@
RenderBlock (anonymous) at (0,0) size 9x16
RenderText {#text} at (0,-5) size 9x24
text run at (0,-5) width 9: "\x{2225}"
- RenderText {#text} at (125,2) size 5x18
- text run at (125,2) width 5: " "
+ RenderText {#text} at (109,2) size 5x18
+ text run at (109,2) width 5: " "
RenderBR {BR} at (0,0) size 0x0
- RenderMathMLMath {math} at (0,24) size 126x143 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (0,24) size 125x143 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 123x143
RenderMathMLOperator {mo} at (0,0) size 8x143
RenderBlock (anonymous) at (0,0) size 6x14
@@ -123,9 +123,9 @@
RenderText {#text} at (0,-5) size 9x24
text run at (0,-5) width 9: "\x{2225}"
RenderMathMLSpace {mspace} at (122,0) size 0x76
- RenderText {#text} at (125,85) size 5x18
- text run at (125,85) width 5: " "
- RenderMathMLMath {math} at (129,49) size 126x93 [padding: 0 1 0 1]
+ RenderText {#text} at (124,85) size 5x18
+ text run at (124,85) width 5: " "
+ RenderMathMLMath {math} at (128,49) size 125x93 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 123x93
RenderMathMLOperator {mo} at (0,0) size 8x93
RenderBlock (anonymous) at (0,0) size 6x14
@@ -184,9 +184,9 @@
RenderText {#text} at (0,-5) size 9x24
text run at (0,-5) width 9: "\x{2225}"
RenderMathMLSpace {mspace} at (122,0) size 0x51
- RenderText {#text} at (254,85) size 5x18
- text run at (254,85) width 5: " "
- RenderMathMLMath {math} at (258,79) size 127x33 [padding: 0 1 0 1]
+ RenderText {#text} at (252,85) size 5x18
+ text run at (252,85) width 5: " "
+ RenderMathMLMath {math} at (256,79) size 116x33 [padding: 0 1 0 1]
RenderMathMLRow {mrow} at (1,0) size 114x33
RenderMathMLOperator {mo} at (0,0) size 8x33
RenderBlock (anonymous) at (0,0) size 6x14
@@ -245,10 +245,10 @@
RenderText {#text} at (0,-5) size 9x24
text run at (0,-5) width 9: "\x{2225}"
RenderMathMLSpace {mspace} at (113,0) size 0x21
- RenderText {#text} at (384,85) size 5x18
- text run at (384,85) width 5: " "
+ RenderText {#text} at (371,85) size 5x18
+ text run at (371,85) width 5: " "
RenderBR {BR} at (0,0) size 0x0
- RenderMathMLMath {math} at (0,166) size 141x77 [padding: 0 1 0 1]
+ RenderMathMLMath {math} at (0,166) size 139x77 [padding: 0 1 0 1]
RenderMathMLRoot {msqrt} at (1,0) size 137x77
RenderMathMLOperator {mo} at (14,3) size 9x74
RenderBlock (anonymous) at (0,0) size 6x14
Modified: trunk/Source/WebCore/ChangeLog (202933 => 202934)
--- trunk/Source/WebCore/ChangeLog 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/ChangeLog 2016-07-07 21:48:12 UTC (rev 202934)
@@ -1,3 +1,62 @@
+2016-07-07 Frederic Wang <[email protected]>
+
+ Refactor layout functions to avoid using flexbox in MathML
+ https://bugs.webkit.org/show_bug.cgi?id=153991
+
+ Reviewed by Brent Fulgham.
+
+ No new tests, already covered by existing tests.
+
+ * css/mathml.css:
+ (math): Change inline mathematical formulas from inline-flex to inline.
+ (math[display="block"]): Change display mathematical formulas from flex to block and
+ remove flexbox property justify-content.
+ (ms, mspace, mtext, mi, mn, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts,
+ mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle)
+ menclose, semantics, mpadded, maction): In order to render properly, all children of the
+ classes derived from RenderMathMLBlock must now be block-level. So we add more elements in
+ this list and update the display property.
+ (mtd > *): However, we use inline-block for children of the cell so that the text-align
+ property is taken into account.
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeLogicalWidthInRegion): Add a special case for RenderMathMLBlock
+ to preserve the old behavior.
+ (WebCore::RenderBox::sizesLogicalWidthToFitContent): Ditto.
+ * rendering/RenderFlexibleBox.h: No need to override layoutBlock anymore.
+ * rendering/mathml/RenderMathMLBlock.cpp: Include LayoutRepainter header for use in layoutBlock.
+ (WebCore::RenderMathMLBlock::RenderMathMLBlock): Inherit from RenderBlock and ensure that
+ our children are block-level.
+ (WebCore::RenderMathMLBlock::~RenderMathMLBlock): Added.
+ (WebCore::RenderMathMLBlock::baselinePosition): If the baselinefirstLineBaseline() is
+ undefined, just returns 0.
+ (WebCore::RenderMathMLBlock::paint): Call RenderBlock::paint.
+ (WebCore::RenderMathMLBlock::layoutItems): Implement a simplified version of
+ RenderFlexibleBox::layoutItems where we assume horizontal layout for all children.
+ (WebCore::RenderMathMLBlock::layoutBlock): Add a basic implementation based on
+ RenderFlexibleBox::layoutBlock.
+ (WebCore::RenderMathMLBlock::renderName): Deleted. There is now a simple implementation in the header.
+ * rendering/mathml/RenderMathMLBlock.h: Use RenderBlock instead of RenderFlexibleBox and
+ define layout functions. Define avoidsFloats and canDropAnonymousBlockChild to preserve
+ the old behavior and remove isFlexibleBoxImpl.
+ * rendering/mathml/RenderMathMLFenced.cpp:
+ (WebCore::RenderMathMLFenced::createMathMLOperator): Use block for anonymous RenderMathMLOperator.
+ * rendering/mathml/RenderMathMLRow.cpp:
+ (WebCore::RenderMathMLRow::layoutRowItems): No need to handle the flexbox case anymore.
+ (WebCore::RenderMathMLRow::paintChildren): Deleted. We now just use RenderBlock::paintChildren.
+ * rendering/mathml/RenderMathMLRow.h:
+ * rendering/mathml/RenderMathMLFraction.cpp:
+ (WebCore::RenderMathMLFraction::paintChildren): Deleted. We now just use RenderBlock::paintChildren.
+ * rendering/mathml/RenderMathMLFraction.h:
+ * rendering/mathml/RenderMathMLRoot.cpp:
+ (WebCore::RenderMathMLRoot::paintChildren): Deleted. We now just use RenderBlock::paintChildren.
+ * rendering/mathml/RenderMathMLRoot.h:
+ * rendering/mathml/RenderMathMLScripts.cpp:
+ (WebCore::RenderMathMLScripts::paintChildren): Deleted. We now just use RenderBlock::paintChildren.
+ * rendering/mathml/RenderMathMLScripts.h:
+ * rendering/mathml/RenderMathMLUnderOver.cpp:
+ (WebCore::RenderMathMLUnderOver::paintChildren): Deleted. We now just use RenderBlock::paintChildren.
+ * rendering/mathml/RenderMathMLUnderOver.h:
+
2016-07-07 Antti Koivisto <[email protected]>
REGRESSION (r199054): CrashTracer: [USER] parseWebKit at WebCore: WebCore::RenderBlockFlow::checkFloatsInCleanLine + 107
Modified: trunk/Source/WebCore/css/mathml.css (202933 => 202934)
--- trunk/Source/WebCore/css/mathml.css 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/css/mathml.css 2016-07-07 21:48:12 UTC (rev 202934)
@@ -95,21 +95,20 @@
}
math {
- display: -webkit-inline-flex !important;
+ display: inline !important;
padding-left: 1px;
padding-right: 1px;
}
math[display="block"] {
- display: flex !important;
- justify-content: center;
+ display: block !important;
page-break-inside: avoid;
/* -webkit-margin-before: 1em; -- FIXME: Ask www-math for a default MathML stylesheet, including this (or margin-top). */
-webkit-margin-after: 1em;
}
-ms, mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose {
- display: -webkit-inline-flex !important;
+ms, mspace, mtext, mi, mn, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose, semantics, mpadded, maction {
+ display: block !important;
}
ms, mtext, mi, mn, mo, annotation, mtd {
@@ -190,6 +189,10 @@
display: table-cell;
padding: 0.5ex;
}
+/* Use inline-block for children so that the text-align property is taken into account */
+mtd > * {
+ display: inline-block !important;
+}
mtable[columnalign="left"], mtr[columnalign="left"], mtd[columnalign="left"] {
text-align: left;
Modified: trunk/Source/WebCore/rendering/RenderBox.cpp (202933 => 202934)
--- trunk/Source/WebCore/rendering/RenderBox.cpp 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/RenderBox.cpp 2016-07-07 21:48:12 UTC (rev 202934)
@@ -2441,6 +2441,10 @@
if (!hasPerpendicularContainingBlock && containerLogicalWidth && containerLogicalWidth != (computedValues.m_extent + computedValues.m_margins.m_start + computedValues.m_margins.m_end)
&& !isFloating() && !isInline() && !cb.isFlexibleBoxIncludingDeprecated()
+#if ENABLE(MATHML)
+ // RenderMathMLBlocks take the size of their content so we must not adjust the margin to fill the container size.
+ && !cb.isRenderMathMLBlock()
+#endif
#if ENABLE(CSS_GRID_LAYOUT)
&& !cb.isRenderGrid()
#endif
@@ -2588,6 +2592,12 @@
return true;
}
+#if ENABLE(MATHML)
+ // RenderMathMLBlocks take the size of their content, not of their container.
+ if (parent()->isRenderMathMLBlock())
+ return true;
+#endif
+
// Flexible box items should shrink wrap, so we lay them out at their intrinsic widths.
// In the case of columns that have a stretch alignment, we layout at the stretched size
// to avoid an extra layout when applying alignment.
Modified: trunk/Source/WebCore/rendering/RenderFlexibleBox.h (202933 => 202934)
--- trunk/Source/WebCore/rendering/RenderFlexibleBox.h 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/RenderFlexibleBox.h 2016-07-07 21:48:12 UTC (rev 202934)
@@ -46,7 +46,7 @@
bool avoidsFloats() const final { return true; }
bool canDropAnonymousBlockChild() const final { return false; }
- void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) override;
+ void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) final;
int baselinePosition(FontBaseline, bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const override;
Optional<int> firstLineBaseline() const override;
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp 2016-07-07 21:48:12 UTC (rev 202934)
@@ -31,6 +31,7 @@
#include "RenderMathMLBlock.h"
#include "GraphicsContext.h"
+#include "LayoutRepainter.h"
#include "MathMLNames.h"
#include "RenderView.h"
#include <wtf/text/StringBuilder.h>
@@ -44,15 +45,21 @@
using namespace MathMLNames;
RenderMathMLBlock::RenderMathMLBlock(Element& container, RenderStyle&& style)
- : RenderFlexibleBox(container, WTFMove(style))
+ : RenderBlock(container, WTFMove(style), 0)
{
+ setChildrenInline(false); // All of our children must be block-level.
}
RenderMathMLBlock::RenderMathMLBlock(Document& document, RenderStyle&& style)
- : RenderFlexibleBox(document, WTFMove(style))
+ : RenderBlock(document, WTFMove(style), 0)
{
+ setChildrenInline(false); // All of our children must be block-level.
}
+RenderMathMLBlock::~RenderMathMLBlock()
+{
+}
+
bool RenderMathMLBlock::isChildAllowed(const RenderObject& child, const RenderStyle&) const
{
return is<Element>(child.node());
@@ -82,28 +89,13 @@
if (linePositionMode == PositionOfInteriorLineBoxes)
return 0;
- // FIXME: This may be unnecessary after flex baselines are implemented (https://bugs.webkit.org/show_bug.cgi?id=96188).
- return firstLineBaseline().valueOrCompute([&] {
- return RenderFlexibleBox::baselinePosition(baselineType, firstLine, direction, linePositionMode);
- });
+ return firstLineBaseline().valueOr(RenderBlock::baselinePosition(baselineType, firstLine, direction, linePositionMode));
}
-const char* RenderMathMLBlock::renderName() const
-{
- EDisplay display = style().display();
- if (display == FLEX)
- return isAnonymous() ? "RenderMathMLBlock (anonymous, flex)" : "RenderMathMLBlock (flex)";
- if (display == INLINE_FLEX)
- return isAnonymous() ? "RenderMathMLBlock (anonymous, inline-flex)" : "RenderMathMLBlock (inline-flex)";
- // |display| should be one of the above.
- ASSERT_NOT_REACHED();
- return isAnonymous() ? "RenderMathMLBlock (anonymous)" : "RenderMathMLBlock";
-}
-
#if ENABLE(DEBUG_MATH_LAYOUT)
void RenderMathMLBlock::paint(PaintInfo& info, const LayoutPoint& paintOffset)
{
- RenderFlexibleBox::paint(info, paintOffset);
+ RenderBlock::paint(info, paintOffset);
if (info.context().paintingDisabled() || info.phase != PaintPhaseForeground)
return;
@@ -316,6 +308,74 @@
return (logicalHeight() + style().fontMetrics().xHeight()) / 2;
}
+void RenderMathMLBlock::layoutItems(bool relayoutChildren)
+{
+ LayoutUnit verticalOffset = borderBefore() + paddingBefore();
+ LayoutUnit horizontalOffset = borderStart() + paddingStart();
+
+ LayoutUnit preferredHorizontalExtent = 0;
+ for (auto* child = firstChildBox(); child; child = child->nextSiblingBox()) {
+ LayoutUnit childHorizontalExtent = child->maxPreferredLogicalWidth() - child->horizontalBorderAndPaddingExtent();
+ LayoutUnit childHorizontalMarginBoxExtent = child->horizontalBorderAndPaddingExtent() + childHorizontalExtent;
+ childHorizontalMarginBoxExtent += child->horizontalMarginExtent();
+
+ preferredHorizontalExtent += childHorizontalMarginBoxExtent;
+ }
+
+ LayoutUnit currentHorizontalExtent = contentLogicalWidth();
+ for (auto* child = firstChildBox(); child; child = child->nextSiblingBox()) {
+ LayoutUnit childSize = child->maxPreferredLogicalWidth() - child->horizontalBorderAndPaddingExtent();
+
+ if (preferredHorizontalExtent > currentHorizontalExtent)
+ childSize = currentHorizontalExtent;
+
+ LayoutUnit childPreferredSize = childSize + child->horizontalBorderAndPaddingExtent();
+
+ if (childPreferredSize != child->width())
+ child->setChildNeedsLayout(MarkOnlyThis);
+
+ updateBlockChildDirtyBitsBeforeLayout(relayoutChildren, *child);
+ child->layoutIfNeeded();
+
+ LayoutUnit childVerticalMarginBoxExtent;
+ childVerticalMarginBoxExtent = child->height() + child->verticalMarginExtent();
+
+ setLogicalHeight(std::max(logicalHeight(), verticalOffset + borderAfter() + paddingAfter() + childVerticalMarginBoxExtent + horizontalScrollbarHeight()));
+
+ horizontalOffset += child->marginStart();
+
+ LayoutUnit childHorizontalExtent = child->width();
+ LayoutPoint childLocation(style().isLeftToRightDirection() ? horizontalOffset : width() - horizontalOffset - childHorizontalExtent,
+ verticalOffset + child->marginBefore());
+
+ child->setLocation(childLocation);
+ horizontalOffset += childHorizontalExtent + child->marginEnd();
+ }
}
+void RenderMathMLBlock::layoutBlock(bool relayoutChildren, LayoutUnit)
+{
+ ASSERT(needsLayout());
+
+ if (!relayoutChildren && simplifiedLayout())
+ return;
+
+ LayoutRepainter repainter(*this, checkForRepaintDuringLayout());
+
+ if (recomputeLogicalWidth())
+ relayoutChildren = true;
+
+ setLogicalHeight(borderAndPaddingLogicalHeight() + scrollbarLogicalHeight());
+
+ layoutItems(relayoutChildren);
+
+ updateLogicalHeight();
+
+ repainter.repaintAfterLayout();
+
+ clearNeedsLayout();
+}
+
+}
+
#endif
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLBlock.h (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLBlock.h 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLBlock.h 2016-07-07 21:48:12 UTC (rev 202934)
@@ -29,7 +29,7 @@
#if ENABLE(MATHML)
-#include "RenderFlexibleBox.h"
+#include "RenderBlock.h"
#include "RenderTable.h"
#include "StyleInheritedData.h"
@@ -39,10 +39,11 @@
class RenderMathMLOperator;
-class RenderMathMLBlock : public RenderFlexibleBox {
+class RenderMathMLBlock : public RenderBlock {
public:
RenderMathMLBlock(Element&, RenderStyle&&);
RenderMathMLBlock(Document&, RenderStyle&&);
+ virtual ~RenderMathMLBlock();
bool isChildAllowed(const RenderObject&, const RenderStyle&) const override;
@@ -71,10 +72,14 @@
return child.firstLineBaseline().valueOr(child.logicalHeight());
}
+ void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) override;
+
private:
bool isRenderMathMLBlock() const final { return true; }
- const char* renderName() const override;
- bool isFlexibleBoxImpl() const override { return true; }
+ const char* renderName() const override { return "RenderMathMLBlock"; }
+ bool avoidsFloats() const final { return true; }
+ bool canDropAnonymousBlockChild() const final { return false; }
+ void layoutItems(bool relayoutChildren);
};
class RenderMathMLTable final : public RenderTable {
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLFenced.cpp (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLFenced.cpp 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLFenced.cpp 2016-07-07 21:48:12 UTC (rev 202934)
@@ -85,7 +85,7 @@
RenderPtr<RenderMathMLOperator> RenderMathMLFenced::createMathMLOperator(const String& operatorString, MathMLOperatorDictionary::Form form, MathMLOperatorDictionary::Flag flag)
{
- RenderPtr<RenderMathMLOperator> newOperator = createRenderer<RenderMathMLOperator>(document(), RenderStyle::createAnonymousStyleWithDisplay(style(), FLEX), operatorString, form, flag);
+ RenderPtr<RenderMathMLOperator> newOperator = createRenderer<RenderMathMLOperator>(document(), RenderStyle::createAnonymousStyleWithDisplay(style(), BLOCK), operatorString, form, flag);
newOperator->initializeStyle();
return newOperator;
}
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.cpp 2016-07-07 21:48:12 UTC (rev 202934)
@@ -227,14 +227,6 @@
return RenderMathMLBlock::firstLineBaseline();
}
-void RenderMathMLFraction::paintChildren(PaintInfo& paintInfo, const LayoutPoint& paintOffset, PaintInfo& paintInfoForChild, bool usePrintRect)
-{
- for (RenderBox* child = firstChildBox(); child; child = child->nextSiblingBox()) {
- if (!paintChild(*child, paintInfo, paintOffset, paintInfoForChild, usePrintRect, PaintAsInlineBlock))
- return;
- }
}
-}
-
#endif // ENABLE(MATHML)
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.h (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.h 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLFraction.h 2016-07-07 21:48:12 UTC (rev 202934)
@@ -43,7 +43,6 @@
float relativeLineThickness() const { return m_defaultLineThickness ? m_lineThickness / m_defaultLineThickness : LayoutUnit(0); }
void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) final;
- void paintChildren(PaintInfo& forSelf, const LayoutPoint&, PaintInfo& forChild, bool usePrintRect) final;
protected:
void computePreferredLogicalWidths() final;
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLRoot.cpp (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLRoot.cpp 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLRoot.cpp 2016-07-07 21:48:12 UTC (rev 202934)
@@ -238,14 +238,6 @@
clearNeedsLayout();
}
-void RenderMathMLRoot::paintChildren(PaintInfo& paintInfo, const LayoutPoint& paintOffset, PaintInfo& paintInfoForChild, bool usePrintRect)
-{
- for (auto* child = firstChildBox(); child; child = child->nextSiblingBox()) {
- if (!paintChild(*child, paintInfo, paintOffset, paintInfoForChild, usePrintRect, PaintAsInlineBlock))
- return;
- }
-}
-
void RenderMathMLRoot::paint(PaintInfo& info, const LayoutPoint& paintOffset)
{
RenderMathMLRow::paint(info, paintOffset);
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLRoot.h (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLRoot.h 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLRoot.h 2016-07-07 21:48:12 UTC (rev 202934)
@@ -49,7 +49,6 @@
void computePreferredLogicalWidths() final;
void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) final;
- void paintChildren(PaintInfo& forSelf, const LayoutPoint&, PaintInfo& forChild, bool usePrintRect) final;
protected:
void paint(PaintInfo&, const LayoutPoint&) final;
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.cpp (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.cpp 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.cpp 2016-07-07 21:48:12 UTC (rev 202934)
@@ -161,8 +161,7 @@
}
LayoutUnit centerBlockOffset = 0;
- // FIXME: Remove the FLEX when it is not required by the css.
- if (style().display() == BLOCK || style().display() == FLEX)
+ if (style().display() == BLOCK)
centerBlockOffset = std::max<LayoutUnit>(0, (logicalWidth() - (horizontalOffset + borderEnd() + paddingEnd())) / 2);
if (shouldFlipHorizontal && centerBlockOffset > 0)
@@ -200,14 +199,6 @@
clearNeedsLayout();
}
-void RenderMathMLRow::paintChildren(PaintInfo& paintInfo, const LayoutPoint& paintOffset, PaintInfo& paintInfoForChild, bool usePrintRect)
-{
- for (RenderBox* child = firstChildBox(); child; child = child->nextSiblingBox()) {
- if (!paintChild(*child, paintInfo, paintOffset, paintInfoForChild, usePrintRect, PaintAsInlineBlock))
- return;
- }
}
-}
-
#endif // ENABLE(MATHML)
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.h (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.h 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLRow.h 2016-07-07 21:48:12 UTC (rev 202934)
@@ -43,7 +43,6 @@
void updateOperatorProperties();
void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) override;
- void paintChildren(PaintInfo& forSelf, const LayoutPoint&, PaintInfo& forChild, bool usePrintRect) override;
Optional<int> firstLineBaseline() const override;
protected:
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLScripts.cpp (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLScripts.cpp 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLScripts.cpp 2016-07-07 21:48:12 UTC (rev 202934)
@@ -426,14 +426,6 @@
return Optional<int>(static_cast<int>(lroundf(ascentForChild(*base) + base->logicalTop())));
}
-void RenderMathMLScripts::paintChildren(PaintInfo& paintInfo, const LayoutPoint& paintOffset, PaintInfo& paintInfoForChild, bool usePrintRect)
-{
- for (RenderBox* child = firstChildBox(); child; child = child->nextSiblingBox()) {
- if (!paintChild(*child, paintInfo, paintOffset, paintInfoForChild, usePrintRect, PaintAsInlineBlock))
- return;
- }
}
-}
-
#endif // ENABLE(MATHML)
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLScripts.h (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLScripts.h 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLScripts.h 2016-07-07 21:48:12 UTC (rev 202934)
@@ -40,7 +40,6 @@
RenderMathMLOperator* unembellishedOperator() final;
Optional<int> firstLineBaseline() const final;
void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) final;
- void paintChildren(PaintInfo& forSelf, const LayoutPoint&, PaintInfo& forChild, bool usePrintRect) final;
private:
bool isRenderMathMLScripts() const final { return true; }
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.cpp (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.cpp 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.cpp 2016-07-07 21:48:12 UTC (rev 202934)
@@ -222,14 +222,6 @@
clearNeedsLayout();
}
-void RenderMathMLUnderOver::paintChildren(PaintInfo& paintInfo, const LayoutPoint& paintOffset, PaintInfo& paintInfoForChild, bool usePrintRect)
-{
- for (RenderBox* child = firstChildBox(); child; child = child->nextSiblingBox()) {
- if (!paintChild(*child, paintInfo, paintOffset, paintInfoForChild, usePrintRect, PaintAsInlineBlock))
- return;
- }
}
-}
-
#endif // ENABLE(MATHML)
Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.h (202933 => 202934)
--- trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.h 2016-07-07 21:28:08 UTC (rev 202933)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLUnderOver.h 2016-07-07 21:48:12 UTC (rev 202934)
@@ -43,7 +43,6 @@
void computePreferredLogicalWidths() final;
void layoutBlock(bool relayoutChildren, LayoutUnit pageLogicalHeight = 0) final;
- void paintChildren(PaintInfo& forSelf, const LayoutPoint&, PaintInfo& forChild, bool usePrintRect) final;
private:
bool isRenderMathMLUnderOver() const override { return true; }