[Qt] Enable MathML
authorallan.jensen@digia.com <allan.jensen@digia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 19 Feb 2013 13:02:50 +0000 (13:02 +0000)
committerallan.jensen@digia.com <allan.jensen@digia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 19 Feb 2013 13:02:50 +0000 (13:02 +0000)
https://bugs.webkit.org/show_bug.cgi?id=110205

Reviewed by Simon Hausmann.

Tools:

    * qmake/mkspecs/features/features.pri:

LayoutTests:

    Baselines for the MathML tests.

    * platform/qt/mathml/presentation/attributes-expected.png: Added.
    * platform/qt/mathml/presentation/attributes-expected.txt: Added.
    * platform/qt/mathml/presentation/fenced-expected.png: Added.
    * platform/qt/mathml/presentation/fenced-expected.txt: Added.
    * platform/qt/mathml/presentation/fenced-mi-expected.png: Added.
    * platform/qt/mathml/presentation/fenced-mi-expected.txt: Added.
    * platform/qt/mathml/presentation/fractions-expected.png: Added.
    * platform/qt/mathml/presentation/fractions-expected.txt: Added.
    * platform/qt/mathml/presentation/fractions-vertical-alignment-expected.png: Added.
    * platform/qt/mathml/presentation/fractions-vertical-alignment-expected.txt: Added.
    * platform/qt/mathml/presentation/mo-expected.png: Added.
    * platform/qt/mathml/presentation/mo-expected.txt: Added.
    * platform/qt/mathml/presentation/mo-stretch-expected.png: Added.
    * platform/qt/mathml/presentation/mo-stretch-expected.txt: Added.
    * platform/qt/mathml/presentation/mroot-pref-width-expected.png: Added.
    * platform/qt/mathml/presentation/mroot-pref-width-expected.txt: Added.
    * platform/qt/mathml/presentation/over-expected.png: Added.
    * platform/qt/mathml/presentation/over-expected.txt: Added.
    * platform/qt/mathml/presentation/roots-expected.png: Added.
    * platform/qt/mathml/presentation/roots-expected.txt: Added.
    * platform/qt/mathml/presentation/row-alignment-expected.png: Added.
    * platform/qt/mathml/presentation/row-alignment-expected.txt: Added.
    * platform/qt/mathml/presentation/row-expected.png: Added.
    * platform/qt/mathml/presentation/row-expected.txt: Added.
    * platform/qt/mathml/presentation/style-expected.png: Added.
    * platform/qt/mathml/presentation/style-expected.txt: Added.
    * platform/qt/mathml/presentation/sub-expected.png: Added.
    * platform/qt/mathml/presentation/sub-expected.txt: Added.
    * platform/qt/mathml/presentation/subsup-expected.png: Added.
    * platform/qt/mathml/presentation/subsup-expected.txt: Added.
    * platform/qt/mathml/presentation/sup-expected.png: Added.
    * platform/qt/mathml/presentation/sup-expected.txt: Added.
    * platform/qt/mathml/presentation/tables-expected.png: Added.
    * platform/qt/mathml/presentation/tables-expected.txt: Added.
    * platform/qt/mathml/presentation/tokenElements-expected.png: Added.
    * platform/qt/mathml/presentation/tokenElements-expected.txt: Added.
    * platform/qt/mathml/presentation/under-expected.png: Added.
    * platform/qt/mathml/presentation/under-expected.txt: Added.
    * platform/qt/mathml/presentation/underover-expected.png: Added.
    * platform/qt/mathml/presentation/underover-expected.txt: Added.
    * platform/qt/mathml/xHeight-expected.png: Added.
    * platform/qt/mathml/xHeight-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@143319 268f45cc-cd09-0410-ab3c-d52691b4dbfc

45 files changed:
LayoutTests/ChangeLog
LayoutTests/platform/qt/mathml/presentation/attributes-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/attributes-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/fenced-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/fenced-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/fenced-mi-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/fenced-mi-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/fractions-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/fractions-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/fractions-vertical-alignment-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/fractions-vertical-alignment-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/mo-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/mo-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/mo-stretch-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/mo-stretch-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/mroot-pref-width-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/mroot-pref-width-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/over-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/over-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/roots-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/roots-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/row-alignment-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/row-alignment-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/row-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/row-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/style-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/style-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/sub-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/sub-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/subsup-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/subsup-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/sup-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/sup-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/tables-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/tables-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/tokenElements-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/tokenElements-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/under-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/under-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/underover-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/presentation/underover-expected.txt [new file with mode: 0644]
LayoutTests/platform/qt/mathml/xHeight-expected.png [new file with mode: 0644]
LayoutTests/platform/qt/mathml/xHeight-expected.txt [new file with mode: 0644]
Tools/ChangeLog
Tools/qmake/mkspecs/features/features.pri

index 33adcc4..7f3e3ca 100644 (file)
@@ -1,3 +1,55 @@
+2013-02-19  Allan Sandfeld Jensen  <allan.jensen@digia.com>
+
+        [Qt] Enable MathML
+        https://bugs.webkit.org/show_bug.cgi?id=110205
+
+        Reviewed by Simon Hausmann.
+
+        Baselines for the MathML tests.
+
+        * platform/qt/mathml/presentation/attributes-expected.png: Added.
+        * platform/qt/mathml/presentation/attributes-expected.txt: Added.
+        * platform/qt/mathml/presentation/fenced-expected.png: Added.
+        * platform/qt/mathml/presentation/fenced-expected.txt: Added.
+        * platform/qt/mathml/presentation/fenced-mi-expected.png: Added.
+        * platform/qt/mathml/presentation/fenced-mi-expected.txt: Added.
+        * platform/qt/mathml/presentation/fractions-expected.png: Added.
+        * platform/qt/mathml/presentation/fractions-expected.txt: Added.
+        * platform/qt/mathml/presentation/fractions-vertical-alignment-expected.png: Added.
+        * platform/qt/mathml/presentation/fractions-vertical-alignment-expected.txt: Added.
+        * platform/qt/mathml/presentation/mo-expected.png: Added.
+        * platform/qt/mathml/presentation/mo-expected.txt: Added.
+        * platform/qt/mathml/presentation/mo-stretch-expected.png: Added.
+        * platform/qt/mathml/presentation/mo-stretch-expected.txt: Added.
+        * platform/qt/mathml/presentation/mroot-pref-width-expected.png: Added.
+        * platform/qt/mathml/presentation/mroot-pref-width-expected.txt: Added.
+        * platform/qt/mathml/presentation/over-expected.png: Added.
+        * platform/qt/mathml/presentation/over-expected.txt: Added.
+        * platform/qt/mathml/presentation/roots-expected.png: Added.
+        * platform/qt/mathml/presentation/roots-expected.txt: Added.
+        * platform/qt/mathml/presentation/row-alignment-expected.png: Added.
+        * platform/qt/mathml/presentation/row-alignment-expected.txt: Added.
+        * platform/qt/mathml/presentation/row-expected.png: Added.
+        * platform/qt/mathml/presentation/row-expected.txt: Added.
+        * platform/qt/mathml/presentation/style-expected.png: Added.
+        * platform/qt/mathml/presentation/style-expected.txt: Added.
+        * platform/qt/mathml/presentation/sub-expected.png: Added.
+        * platform/qt/mathml/presentation/sub-expected.txt: Added.
+        * platform/qt/mathml/presentation/subsup-expected.png: Added.
+        * platform/qt/mathml/presentation/subsup-expected.txt: Added.
+        * platform/qt/mathml/presentation/sup-expected.png: Added.
+        * platform/qt/mathml/presentation/sup-expected.txt: Added.
+        * platform/qt/mathml/presentation/tables-expected.png: Added.
+        * platform/qt/mathml/presentation/tables-expected.txt: Added.
+        * platform/qt/mathml/presentation/tokenElements-expected.png: Added.
+        * platform/qt/mathml/presentation/tokenElements-expected.txt: Added.
+        * platform/qt/mathml/presentation/under-expected.png: Added.
+        * platform/qt/mathml/presentation/under-expected.txt: Added.
+        * platform/qt/mathml/presentation/underover-expected.png: Added.
+        * platform/qt/mathml/presentation/underover-expected.txt: Added.
+        * platform/qt/mathml/xHeight-expected.png: Added.
+        * platform/qt/mathml/xHeight-expected.txt: Added.
+
 2013-02-19  Anton Vayvod  <avayvod@chromium.org>
 
         [Text Autosizing] Combine narrow descendants of a cluster into groups that should be autosized with the same multiplier.
diff --git a/LayoutTests/platform/qt/mathml/presentation/attributes-expected.png b/LayoutTests/platform/qt/mathml/presentation/attributes-expected.png
new file mode 100644 (file)
index 0000000..222e358
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/attributes-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/attributes-expected.txt b/LayoutTests/platform/qt/mathml/presentation/attributes-expected.txt
new file mode 100644 (file)
index 0000000..4efbb0f
--- /dev/null
@@ -0,0 +1,109 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x212
+  RenderBlock {html} at (0,0) size 800x212
+    RenderBody {body} at (8,16) size 784x180
+      RenderBlock {p} at (0,0) size 784x27
+        RenderText {#text} at (0,2) size 407x17
+          text run at (0,2) width 407: "following elements should appear in blue on an orange background: "
+        RenderMathMLMath {math} at (407,0) size 54x27 [bgcolor=#FFA500] [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,5) size 11x14 [color=#0000FF]
+            RenderMathMLBlock (flex) {mo} at (0,0) size 11x14
+              RenderBlock (anonymous) at (0,0) size 11x14
+                RenderText {mo} at (0,-3) size 11x17
+                  text run at (0,-3) width 11: "\x{2211}"
+          RenderMathMLFraction {mfrac} at (15,0) size 9x27 [color=#0000FF]
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 9x12
+              RenderBlock {mi} at (0,0) size 9x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (0,12) size 9x15 [padding: 1 0 0 0]
+              RenderBlock {mi} at (0,4) size 8x11
+                RenderText {#text} at (0,-6) size 7x17
+                  text run at (0,-6) width 7: "y"
+          RenderBlock {mn} at (25,5) size 8x12 [color=#0000FF]
+            RenderText {#text} at (0,-3) size 8x17
+              text run at (0,-3) width 8: "1"
+          RenderMathMLSquareRoot {msqrt} at (33,2) size 20x15 [color=#0000FF] [intrinsic padding: 3 0 0 12]
+            RenderMathMLRow (anonymous) at (12,3) size 8x12
+              RenderBlock {mn} at (0,0) size 8x12
+                RenderText {#text} at (0,-3) size 8x17
+                  text run at (0,-3) width 8: "2"
+        RenderText {#text} at (461,2) size 4x17
+          text run at (461,2) width 4: " "
+        RenderMathMLMath {math} at (465,0) size 13x27 [bgcolor=#FFA500] [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,0) size 9x27 [color=#0000FF]
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 9x12
+              RenderBlock {mi} at (0,0) size 9x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (0,12) size 9x15 [padding: 1 0 0 0]
+              RenderBlock {mi} at (0,4) size 8x11
+                RenderText {#text} at (0,-6) size 7x17
+                  text run at (0,-6) width 7: "y"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,43) size 784x19
+        RenderText {#text} at (0,1) size 324x17
+          text run at (0,1) width 324: "following elements should appear with increasing size: "
+        RenderMathMLMath {math} at (324,0) size 47x16 [padding: 0 1 0 1]
+          RenderBlock {mi} at (1,9) size 6x7
+            RenderText {#text} at (0,-5) size 5x14
+              text run at (0,-5) width 5: "x"
+          RenderBlock {mi} at (7,7) size 9x9
+            RenderText {#text} at (0,-6) size 8x17
+              text run at (0,-6) width 8: "x"
+          RenderBlock {mi} at (16,4) size 13x12
+            RenderText {#text} at (0,-10) size 11x26
+              text run at (0,-10) width 11: "x"
+          RenderBlock {mi} at (29,0) size 17x16
+            RenderText {#text} at (0,-14) size 14x36
+              text run at (0,-14) width 14: "x"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,78) size 784x18
+        RenderText {#text} at (0,0) size 80x17
+          text run at (0,0) width 80: "font variants: "
+        RenderMathMLMath {math} at (80,3) size 49x12 [padding: 0 1 0 1]
+          RenderBlock {mi} at (1,0) size 12x12
+            RenderText {#text} at (0,-3) size 11x17
+              text run at (0,-3) width 11: "A"
+          RenderBlock {mi} at (13,0) size 12x12
+            RenderText {#text} at (0,-3) size 11x17
+              text run at (0,-3) width 11: "A"
+          RenderBlock {mi} at (25,0) size 11x12
+            RenderText {#text} at (0,-3) size 10x17
+              text run at (0,-3) width 10: "A"
+          RenderBlock {mi} at (36,0) size 12x12
+            RenderText {#text} at (0,-3) size 11x17
+              text run at (0,-3) width 11: "A"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,112) size 784x25
+        RenderText {#text} at (0,7) size 145x17
+          text run at (0,7) width 145: "test font style attributes: "
+        RenderMathMLMath {math} at (145,0) size 56x22 [padding: 0 1 0 1]
+          RenderBlock {mtext} at (1,0) size 22x22
+            RenderText {#text} at (0,-8) size 22x36
+              text run at (0,-8) width 22: "A"
+          RenderBlock {mtext} at (23,10) size 11x12
+            RenderText {#text} at (0,-3) size 11x17
+              text run at (0,-3) width 11: "A"
+          RenderBlock {mtext} at (34,10) size 10x12
+            RenderText {#text} at (0,-3) size 10x17
+              text run at (0,-3) width 10: "A"
+          RenderBlock {mtext} at (44,10) size 11x12
+            RenderText {#text} at (0,-3) size 11x17
+              text run at (0,-3) width 11: "A"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,153) size 784x27
+        RenderBlock (anonymous) at (0,0) size 784x18
+          RenderText {#text} at (0,0) size 207x17
+            text run at (0,0) width 207: "following element should be inline: "
+          RenderMathMLMath {math} at (207,6) size 11x9 [padding: 0 1 0 1]
+            RenderBlock {mi} at (1,0) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+          RenderText {#text} at (218,0) size 222x17
+            text run at (218,0) width 222: ", and this one centered on a new line:"
+        RenderMathMLMath {math} at (0,18) size 784x9 [padding: 0 1 0 1]
+          RenderBlock {mi} at (387,0) size 9x9
+            RenderText {#text} at (0,-6) size 8x17
+              text run at (0,-6) width 8: "x"
diff --git a/LayoutTests/platform/qt/mathml/presentation/fenced-expected.png b/LayoutTests/platform/qt/mathml/presentation/fenced-expected.png
new file mode 100644 (file)
index 0000000..424d7b8
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/fenced-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/fenced-expected.txt b/LayoutTests/platform/qt/mathml/presentation/fenced-expected.txt
new file mode 100644 (file)
index 0000000..0872a80
--- /dev/null
@@ -0,0 +1,27 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x89
+  RenderBlock {html} at (0,0) size 800x89
+    RenderBody {body} at (8,16) size 784x57
+      RenderBlock {p} at (0,0) size 784x57
+        RenderMathMLMath {math} at (0,0) size 166x57 [padding: 0 1 0 1]
+          RenderMathMLFenced {mfenced} at (1,0) size 164x57
+            RenderMathMLOperator {mfenced} at (1,0) size 0x57
+            RenderBlock {mtext} at (2,6) size 48x48
+              RenderBlock {div} at (0,0) size 48x48 [bgcolor=#00FF00]
+            RenderMathMLOperator {mfenced} at (50,31) size 4x4
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 4x4
+                RenderBlock (anonymous) at (0,0) size 4x4
+                  RenderText {mfenced} at (0,-12) size 4x17
+                    text run at (0,-12) width 4: ","
+            RenderBlock {mtext} at (58,6) size 48x48
+              RenderBlock {div} at (0,0) size 48x48 [bgcolor=#00FF00]
+            RenderMathMLOperator {mfenced} at (106,31) size 4x4
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 4x4
+                RenderBlock (anonymous) at (0,0) size 4x4
+                  RenderText {mfenced} at (0,-12) size 4x17
+                    text run at (0,-12) width 4: ","
+            RenderBlock {mtext} at (114,6) size 48x48
+              RenderBlock {div} at (0,0) size 48x48 [bgcolor=#00FF00]
+            RenderMathMLOperator {mfenced} at (163,0) size 0x57
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/presentation/fenced-mi-expected.png b/LayoutTests/platform/qt/mathml/presentation/fenced-mi-expected.png
new file mode 100644 (file)
index 0000000..2f79b19
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/fenced-mi-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/fenced-mi-expected.txt b/LayoutTests/platform/qt/mathml/presentation/fenced-mi-expected.txt
new file mode 100644 (file)
index 0000000..94af842
--- /dev/null
@@ -0,0 +1,160 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x152
+  RenderBlock {html} at (0,0) size 800x152
+    RenderBody {body} at (8,16) size 784x120
+      RenderBlock {p} at (0,0) size 784x18
+        RenderMathMLMath {math} at (0,2) size 56x15 [padding: 0 1 0 1]
+          RenderMathMLFenced {mfenced} at (1,0) size 54x15
+            RenderMathMLOperator {mfenced} at (1,0) size 5x15
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 5x15
+                RenderBlock (anonymous) at (0,0) size 5x15
+                  RenderText {mfenced} at (0,-2) size 5x17
+                    text run at (0,-2) width 5: "("
+            RenderBlock {mi} at (7,4) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mfenced} at (16,10) size 4x4
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 4x4
+                RenderBlock (anonymous) at (0,0) size 4x4
+                  RenderText {mfenced} at (0,-12) size 4x17
+                    text run at (0,-12) width 4: ","
+            RenderBlock {mi} at (24,4) size 8x11
+              RenderText {#text} at (0,-6) size 7x17
+                text run at (0,-6) width 7: "y"
+            RenderMathMLOperator {mfenced} at (32,10) size 4x4
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 4x4
+                RenderBlock (anonymous) at (0,0) size 4x4
+                  RenderText {mfenced} at (0,-12) size 4x17
+                    text run at (0,-12) width 4: ","
+            RenderBlock {mi} at (40,4) size 7x9
+              RenderText {#text} at (0,-6) size 6x17
+                text run at (0,-6) width 6: "z"
+            RenderMathMLOperator {mfenced} at (48,0) size 5x15
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 5x15
+                RenderBlock (anonymous) at (0,0) size 5x15
+                  RenderText {mfenced} at (0,-2) size 5x17
+                    text run at (0,-2) width 5: ")"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,34) size 784x18
+        RenderMathMLMath {math} at (0,2) size 60x15 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,0) size 5x15
+            RenderMathMLBlock (flex) {mo} at (0,0) size 5x15
+              RenderBlock (anonymous) at (0,0) size 5x15
+                RenderText {mo} at (0,-2) size 5x17
+                  text run at (0,-2) width 5: "("
+          RenderBlock {mi} at (8,4) size 9x9
+            RenderText {#text} at (0,-6) size 8x17
+              text run at (0,-6) width 8: "x"
+          RenderMathMLOperator {mo} at (20,10) size 4x4
+            RenderMathMLBlock (flex) {mo} at (0,0) size 4x4
+              RenderBlock (anonymous) at (0,0) size 4x4
+                RenderText {mo} at (0,-12) size 4x17
+                  text run at (0,-12) width 4: ","
+          RenderBlock {mi} at (27,4) size 8x11
+            RenderText {#text} at (0,-6) size 7x17
+              text run at (0,-6) width 7: "y"
+          RenderMathMLOperator {mo} at (38,10) size 4x4
+            RenderMathMLBlock (flex) {mo} at (0,0) size 4x4
+              RenderBlock (anonymous) at (0,0) size 4x4
+                RenderText {mo} at (0,-12) size 4x17
+                  text run at (0,-12) width 4: ","
+          RenderBlock {mi} at (45,4) size 7x9
+            RenderText {#text} at (0,-6) size 6x17
+              text run at (0,-6) width 6: "z"
+          RenderMathMLOperator {mo} at (53,0) size 5x15
+            RenderMathMLBlock (flex) {mo} at (0,0) size 5x15
+              RenderBlock (anonymous) at (0,0) size 5x15
+                RenderText {mo} at (0,-2) size 5x17
+                  text run at (0,-2) width 5: ")"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,68) size 784x18
+        RenderMathMLMath {math} at (0,2) size 66x15 [padding: 0 1 0 1]
+          RenderMathMLFenced {mfenced} at (1,0) size 64x15
+            RenderMathMLOperator {mfenced} at (1,0) size 5x15
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 5x15
+                RenderBlock (anonymous) at (0,0) size 5x15
+                  RenderText {mfenced} at (0,-2) size 5x17
+                    text run at (0,-2) width 5: "{"
+            RenderBlock {mi} at (7,4) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mfenced} at (16,1) size 9x12
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 9x12
+                RenderBlock (anonymous) at (0,0) size 9x12
+                  RenderText {mfenced} at (0,-3) size 9x17
+                    text run at (0,-3) width 9: "1"
+            RenderBlock {mi} at (29,4) size 8x11
+              RenderText {#text} at (0,-6) size 7x17
+                text run at (0,-6) width 7: "y"
+            RenderMathMLOperator {mfenced} at (37,1) size 9x12
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 9x12
+                RenderBlock (anonymous) at (0,0) size 9x12
+                  RenderText {mfenced} at (0,-3) size 9x17
+                    text run at (0,-3) width 9: "2"
+            RenderBlock {mi} at (50,4) size 7x9
+              RenderText {#text} at (0,-6) size 6x17
+                text run at (0,-6) width 6: "z"
+            RenderMathMLOperator {mfenced} at (58,0) size 5x15
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 5x15
+                RenderBlock (anonymous) at (0,0) size 5x15
+                  RenderText {mfenced} at (0,-2) size 5x17
+                    text run at (0,-2) width 5: "}"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,102) size 784x18
+        RenderMathMLMath {math} at (0,2) size 135x15 [padding: 0 1 0 1]
+          RenderMathMLFenced {mfenced} at (1,0) size 133x15
+            RenderMathMLOperator {mfenced} at (1,0) size 5x15
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 5x15
+                RenderBlock (anonymous) at (0,0) size 5x15
+                  RenderText {mfenced} at (0,-2) size 5x17
+                    text run at (0,-2) width 5: "("
+            RenderBlock {mi} at (7,4) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mfenced} at (16,1) size 9x12
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 9x12
+                RenderBlock (anonymous) at (0,0) size 9x12
+                  RenderText {mfenced} at (0,-3) size 9x17
+                    text run at (0,-3) width 9: "1"
+            RenderBlock {mi} at (29,4) size 8x11
+              RenderText {#text} at (0,-6) size 7x17
+                text run at (0,-6) width 7: "y"
+            RenderMathMLOperator {mfenced} at (37,1) size 9x12
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 9x12
+                RenderBlock (anonymous) at (0,0) size 9x12
+                  RenderText {mfenced} at (0,-3) size 9x17
+                    text run at (0,-3) width 9: "2"
+            RenderBlock {mi} at (50,4) size 7x9
+              RenderText {#text} at (0,-6) size 6x17
+                text run at (0,-6) width 6: "z"
+            RenderMathMLOperator {mfenced} at (57,1) size 9x12
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 9x12
+                RenderBlock (anonymous) at (0,0) size 9x12
+                  RenderText {mfenced} at (0,-3) size 9x17
+                    text run at (0,-3) width 9: "3"
+            RenderBlock {mi} at (70,4) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "u"
+            RenderMathMLOperator {mfenced} at (79,1) size 9x12
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 9x12
+                RenderBlock (anonymous) at (0,0) size 9x12
+                  RenderText {mfenced} at (0,-3) size 9x17
+                    text run at (0,-3) width 9: "3"
+            RenderBlock {mi} at (92,4) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "v"
+            RenderMathMLOperator {mfenced} at (101,1) size 9x12
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 9x12
+                RenderBlock (anonymous) at (0,0) size 9x12
+                  RenderText {mfenced} at (0,-3) size 9x17
+                    text run at (0,-3) width 9: "3"
+            RenderBlock {mi} at (114,4) size 12x9
+              RenderText {#text} at (0,-6) size 11x17
+                text run at (0,-6) width 11: "w"
+            RenderMathMLOperator {mfenced} at (127,0) size 5x15
+              RenderMathMLBlock (flex) {mfenced} at (0,0) size 5x15
+                RenderBlock (anonymous) at (0,0) size 5x15
+                  RenderText {mfenced} at (0,-2) size 5x17
+                    text run at (0,-2) width 5: ")"
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/presentation/fractions-expected.png b/LayoutTests/platform/qt/mathml/presentation/fractions-expected.png
new file mode 100644 (file)
index 0000000..73968b9
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/fractions-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/fractions-expected.txt b/LayoutTests/platform/qt/mathml/presentation/fractions-expected.txt
new file mode 100644 (file)
index 0000000..ef09772
--- /dev/null
@@ -0,0 +1,370 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x324
+  RenderBlock {html} at (0,0) size 800x324
+    RenderBody {body} at (8,16) size 784x292
+      RenderBlock {p} at (0,0) size 784x31
+        RenderText {#text} at (0,5) size 45x17
+          text run at (0,5) width 45: "simple: "
+        RenderMathMLMath {math} at (45,0) size 12x31 [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,0) size 8x31
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15
+              RenderBlock {mn} at (0,0) size 8x12
+                RenderText {#text} at (0,-3) size 8x17
+                  text run at (0,-3) width 8: "1"
+            RenderMathMLBlock (anonymous, flex) at (0,15) size 8x16 [padding: 1 0 0 0]
+              RenderBlock {mn} at (0,4) size 8x12
+                RenderText {#text} at (0,-3) size 8x17
+                  text run at (0,-3) width 8: "2"
+      RenderBlock {p} at (0,47) size 784x31
+        RenderText {#text} at (0,5) size 189x17
+          text run at (0,5) width 189: "more complex (should be red): "
+        RenderMathMLMath {math} at (189,0) size 36x31 [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,0) size 32x31 [color=#FF0000]
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 32x15
+              RenderMathMLRow {mrow} at (0,0) size 32x12
+                RenderBlock {mi} at (0,3) size 9x9
+                  RenderText {#text} at (0,-6) size 8x17
+                    text run at (0,-6) width 8: "x"
+                RenderMathMLOperator {mo} at (12,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (24,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "1"
+            RenderMathMLBlock (anonymous, flex) at (0,15) size 32x16 [padding: 1 0 0 0]
+              RenderMathMLRow {mrow} at (0,4) size 32x12
+                RenderBlock {mi} at (0,3) size 9x9
+                  RenderText {#text} at (0,-6) size 8x17
+                    text run at (0,-6) width 8: "x"
+                RenderMathMLOperator {mo} at (12,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (24,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "2"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,94) size 784x35
+        RenderText {#text} at (0,7) size 29x17
+          text run at (0,7) width 29: "text: "
+        RenderMathMLMath {math} at (29,0) size 117x35 [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,0) size 113x35
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 113x17
+              RenderBlock {mtext} at (10,0) size 93x14
+                RenderText {#text} at (0,-3) size 93x17
+                  text run at (0,-3) width 93: "number of bugs"
+            RenderMathMLBlock (anonymous, flex) at (0,17) size 113x18 [padding: 1 0 0 0]
+              RenderBlock {mtext} at (0,4) size 113x14
+                RenderText {#text} at (0,-3) size 113x17
+                  text run at (0,-3) width 113: "number of changes"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,145) size 784x59
+        RenderText {#text} at (0,24) size 163x17
+          text run at (0,24) width 163: "line thickness by keyword: "
+        RenderMathMLMath {math} at (163,0) size 56x59 [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,2) size 16x56
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 16x28
+              RenderBlock {mn} at (0,0) size 16x22
+                RenderText {#text} at (0,-8) size 16x36
+                  text run at (0,-8) width 16: "1"
+            RenderMathMLBlock (anonymous, flex) at (0,28) size 16x28
+              RenderBlock {mn} at (0,6) size 16x22
+                RenderText {#text} at (0,-8) size 16x36
+                  text run at (0,-8) width 16: "2"
+          RenderMathMLFraction {mfrac} at (20,2) size 16x57
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 16x28
+              RenderBlock {mn} at (0,0) size 16x22
+                RenderText {#text} at (0,-8) size 16x36
+                  text run at (0,-8) width 16: "1"
+            RenderMathMLBlock (anonymous, flex) at (0,28) size 16x29 [padding: 1 0 0 0]
+              RenderBlock {mn} at (0,7) size 16x22
+                RenderText {#text} at (0,-8) size 16x36
+                  text run at (0,-8) width 16: "2"
+          RenderMathMLFraction {mfrac} at (38,0) size 16x59
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 16x28
+              RenderBlock {mn} at (0,0) size 16x22
+                RenderText {#text} at (0,-8) size 16x36
+                  text run at (0,-8) width 16: "1"
+            RenderMathMLBlock (anonymous, flex) at (0,28) size 16x31 [padding: 3 0 0 0]
+              RenderBlock {mn} at (0,9) size 16x22
+                RenderText {#text} at (0,-8) size 16x36
+                  text run at (0,-8) width 16: "2"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,220) size 784x28
+        RenderText {#text} at (0,2) size 128x17
+          text run at (0,2) width 128: "numerator alignment: "
+        RenderMathMLMath {math} at (128,0) size 104x28 [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,0) size 100x28
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 100x12
+              RenderBlock {mi} at (0,0) size 9x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (0,12) size 100x16 [padding: 1 0 0 0]
+              RenderMathMLRow {mrow} at (0,4) size 100x12
+                RenderBlock {mn} at (0,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "1"
+                RenderMathMLOperator {mo} at (11,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (23,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "2"
+                RenderMathMLOperator {mo} at (34,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (46,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "3"
+                RenderMathMLOperator {mo} at (57,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (69,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "4"
+                RenderMathMLOperator {mo} at (80,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (92,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "5"
+        RenderText {#text} at (232,2) size 4x17
+          text run at (232,2) width 4: " "
+        RenderMathMLMath {math} at (236,0) size 104x28 [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,0) size 100x28
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 100x12
+              RenderBlock {mi} at (45,0) size 9x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (0,12) size 100x16 [padding: 1 0 0 0]
+              RenderMathMLRow {mrow} at (0,4) size 100x12
+                RenderBlock {mn} at (0,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "1"
+                RenderMathMLOperator {mo} at (11,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (23,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "2"
+                RenderMathMLOperator {mo} at (34,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (46,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "3"
+                RenderMathMLOperator {mo} at (57,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (69,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "4"
+                RenderMathMLOperator {mo} at (80,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (92,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "5"
+        RenderText {#text} at (340,2) size 4x17
+          text run at (340,2) width 4: " "
+        RenderMathMLMath {math} at (344,0) size 104x28 [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,0) size 100x28
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 100x12
+              RenderBlock {mi} at (91,0) size 9x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (0,12) size 100x16 [padding: 1 0 0 0]
+              RenderMathMLRow {mrow} at (0,4) size 100x12
+                RenderBlock {mn} at (0,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "1"
+                RenderMathMLOperator {mo} at (11,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (23,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "2"
+                RenderMathMLOperator {mo} at (34,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (46,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "3"
+                RenderMathMLOperator {mo} at (57,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (69,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "4"
+                RenderMathMLOperator {mo} at (80,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (92,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "5"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,264) size 784x28
+        RenderText {#text} at (0,5) size 142x17
+          text run at (0,5) width 142: "denominator alignment: "
+        RenderMathMLMath {math} at (142,0) size 104x28 [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,0) size 100x28
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 100x15
+              RenderMathMLRow {mrow} at (0,0) size 100x12
+                RenderBlock {mn} at (0,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "1"
+                RenderMathMLOperator {mo} at (11,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (23,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "2"
+                RenderMathMLOperator {mo} at (34,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (46,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "3"
+                RenderMathMLOperator {mo} at (57,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (69,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "4"
+                RenderMathMLOperator {mo} at (80,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (92,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "5"
+            RenderMathMLBlock (anonymous, flex) at (0,15) size 100x13 [padding: 1 0 0 0]
+              RenderBlock {mi} at (0,4) size 9x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+        RenderText {#text} at (246,5) size 4x17
+          text run at (246,5) width 4: " "
+        RenderMathMLMath {math} at (250,0) size 104x28 [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,0) size 100x28
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 100x15
+              RenderMathMLRow {mrow} at (0,0) size 100x12
+                RenderBlock {mn} at (0,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "1"
+                RenderMathMLOperator {mo} at (11,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (23,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "2"
+                RenderMathMLOperator {mo} at (34,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (46,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "3"
+                RenderMathMLOperator {mo} at (57,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (69,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "4"
+                RenderMathMLOperator {mo} at (80,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (92,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "5"
+            RenderMathMLBlock (anonymous, flex) at (0,15) size 100x13 [padding: 1 0 0 0]
+              RenderBlock {mi} at (45,4) size 9x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+        RenderText {#text} at (354,5) size 4x17
+          text run at (354,5) width 4: " "
+        RenderMathMLMath {math} at (358,0) size 104x28 [padding: 0 1 0 1]
+          RenderMathMLFraction {mfrac} at (2,0) size 100x28
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 100x15
+              RenderMathMLRow {mrow} at (0,0) size 100x12
+                RenderBlock {mn} at (0,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "1"
+                RenderMathMLOperator {mo} at (11,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (23,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "2"
+                RenderMathMLOperator {mo} at (34,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (46,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "3"
+                RenderMathMLOperator {mo} at (57,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (69,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "4"
+                RenderMathMLOperator {mo} at (80,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (92,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "5"
+            RenderMathMLBlock (anonymous, flex) at (0,15) size 100x13 [padding: 1 0 0 0]
+              RenderBlock {mi} at (91,4) size 9x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/presentation/fractions-vertical-alignment-expected.png b/LayoutTests/platform/qt/mathml/presentation/fractions-vertical-alignment-expected.png
new file mode 100644 (file)
index 0000000..258f296
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/fractions-vertical-alignment-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/fractions-vertical-alignment-expected.txt b/LayoutTests/platform/qt/mathml/presentation/fractions-vertical-alignment-expected.txt
new file mode 100644 (file)
index 0000000..b9b56f5
--- /dev/null
@@ -0,0 +1,130 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x107
+  RenderMathMLMath {math:math} at (0,0) size 800x107 [padding: 0 1 0 1]
+    RenderMathMLFraction {math:mfrac} at (2,38) size 12x31
+      RenderMathMLBlock (anonymous, flex) at (0,0) size 12x15
+        RenderBlock {math:mi} at (1,0) size 10x12
+          RenderText {#text} at (0,-3) size 9x17
+            text run at (0,-3) width 9: "B"
+      RenderMathMLBlock (anonymous, flex) at (0,15) size 12x16 [padding: 1 0 0 0]
+        RenderBlock {math:mi} at (0,4) size 12x12
+          RenderText {#text} at (0,-3) size 11x17
+            text run at (0,-3) width 11: "C"
+    RenderMathMLOperator {math:mo} at (18,47) size 9x11
+      RenderMathMLBlock (flex) {math:mo} at (0,0) size 9x11
+        RenderBlock (anonymous) at (0,0) size 9x11
+          RenderText {math:mo} at (0,-4) size 9x17
+            text run at (0,-4) width 9: "+"
+    RenderMathMLFraction {math:mfrac} at (31,19) size 39x50
+      RenderMathMLBlock (anonymous, flex) at (0,0) size 39x34
+        RenderMathMLRow {math:mrow} at (0,0) size 39x31
+          RenderBlock {math:mi} at (0,8) size 10x12
+            RenderText {#text} at (0,-3) size 9x17
+              text run at (0,-3) width 9: "B"
+          RenderMathMLOperator {math:mo} at (13,9) size 9x11
+            RenderMathMLBlock (flex) {math:mo} at (0,0) size 9x11
+              RenderBlock (anonymous) at (0,0) size 9x11
+                RenderText {math:mo} at (0,-4) size 9x17
+                  text run at (0,-4) width 9: "+"
+          RenderMathMLFraction {math:mfrac} at (26,0) size 12x31
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 12x15
+              RenderBlock {math:mi} at (0,0) size 12x12
+                RenderText {#text} at (0,-3) size 11x17
+                  text run at (0,-3) width 11: "D"
+            RenderMathMLBlock (anonymous, flex) at (0,15) size 12x16 [padding: 1 0 0 0]
+              RenderBlock {math:mi} at (0,4) size 11x12
+                RenderText {#text} at (0,-3) size 10x17
+                  text run at (0,-3) width 10: "E"
+      RenderMathMLBlock (anonymous, flex) at (0,34) size 39x16 [padding: 1 0 0 0]
+        RenderBlock {math:mi} at (13,4) size 12x12
+          RenderText {#text} at (0,-3) size 11x17
+            text run at (0,-3) width 11: "C"
+    RenderMathMLOperator {math:mo} at (74,47) size 9x11
+      RenderMathMLBlock (flex) {math:mo} at (0,0) size 9x11
+        RenderBlock (anonymous) at (0,0) size 9x11
+          RenderText {math:mo} at (0,-4) size 9x17
+            text run at (0,-4) width 9: "+"
+    RenderMathMLFraction {math:mfrac} at (87,0) size 69x69
+      RenderMathMLBlock (anonymous, flex) at (0,0) size 69x53
+        RenderMathMLRow {math:mrow} at (0,0) size 69x50
+          RenderBlock {math:mi} at (0,27) size 10x12
+            RenderText {#text} at (0,-3) size 9x17
+              text run at (0,-3) width 9: "B"
+          RenderMathMLOperator {math:mo} at (13,28) size 9x11
+            RenderMathMLBlock (flex) {math:mo} at (0,0) size 9x11
+              RenderBlock (anonymous) at (0,0) size 9x11
+                RenderText {math:mo} at (0,-4) size 9x17
+                  text run at (0,-4) width 9: "+"
+          RenderMathMLFraction {math:mfrac} at (26,0) size 42x50
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 42x34
+              RenderMathMLRow {math:mrow} at (0,0) size 42x31
+                RenderBlock {math:mi} at (0,8) size 12x12
+                  RenderText {#text} at (0,-3) size 11x17
+                    text run at (0,-3) width 11: "D"
+                RenderMathMLOperator {math:mo} at (15,9) size 9x11
+                  RenderMathMLBlock (flex) {math:mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {math:mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderMathMLFraction {math:mfrac} at (28,0) size 13x31
+                  RenderMathMLBlock (anonymous, flex) at (0,0) size 13x15
+                    RenderBlock {math:mi} at (1,0) size 11x12
+                      RenderText {#text} at (0,-3) size 10x17
+                        text run at (0,-3) width 10: "F"
+                  RenderMathMLBlock (anonymous, flex) at (0,15) size 13x16 [padding: 1 0 0 0]
+                    RenderBlock {math:mi} at (0,4) size 13x12
+                      RenderText {#text} at (0,-3) size 12x17
+                        text run at (0,-3) width 12: "G"
+            RenderMathMLBlock (anonymous, flex) at (0,34) size 42x16 [padding: 1 0 0 0]
+              RenderBlock {math:mi} at (15,4) size 11x12
+                RenderText {#text} at (0,-3) size 10x17
+                  text run at (0,-3) width 10: "E"
+      RenderMathMLBlock (anonymous, flex) at (0,53) size 69x16 [padding: 1 0 0 0]
+        RenderBlock {math:mi} at (28,4) size 12x12
+          RenderText {#text} at (0,-3) size 11x17
+            text run at (0,-3) width 11: "C"
+    RenderMathMLOperator {math:mo} at (160,47) size 9x11
+      RenderMathMLBlock (flex) {math:mo} at (0,0) size 9x11
+        RenderBlock (anonymous) at (0,0) size 9x11
+          RenderText {math:mo} at (0,-4) size 9x17
+            text run at (0,-4) width 9: "+"
+    RenderMathMLFraction {math:mfrac} at (173,38) size 70x69
+      RenderMathMLBlock (anonymous, flex) at (0,0) size 70x15
+        RenderBlock {math:mi} at (30,0) size 10x12
+          RenderText {#text} at (0,-3) size 9x17
+            text run at (0,-3) width 9: "B"
+      RenderMathMLBlock (anonymous, flex) at (0,15) size 70x54 [padding: 1 0 0 0]
+        RenderMathMLRow {math:mrow} at (0,4) size 70x50
+          RenderBlock {math:mi} at (0,8) size 12x12
+            RenderText {#text} at (0,-3) size 11x17
+              text run at (0,-3) width 11: "C"
+          RenderMathMLOperator {math:mo} at (15,9) size 9x11
+            RenderMathMLBlock (flex) {math:mo} at (0,0) size 9x11
+              RenderBlock (anonymous) at (0,0) size 9x11
+                RenderText {math:mo} at (0,-4) size 9x17
+                  text run at (0,-4) width 9: "+"
+          RenderMathMLFraction {math:mfrac} at (28,0) size 41x50
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 41x15
+              RenderBlock {math:mi} at (14,0) size 12x12
+                RenderText {#text} at (0,-3) size 11x17
+                  text run at (0,-3) width 11: "D"
+            RenderMathMLBlock (anonymous, flex) at (0,15) size 41x35 [padding: 1 0 0 0]
+              RenderMathMLRow {math:mrow} at (0,4) size 41x31
+                RenderBlock {math:mi} at (0,8) size 11x12
+                  RenderText {#text} at (0,-3) size 10x17
+                    text run at (0,-3) width 10: "E"
+                RenderMathMLOperator {math:mo} at (14,9) size 9x11
+                  RenderMathMLBlock (flex) {math:mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {math:mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderMathMLFraction {math:mfrac} at (27,0) size 13x31
+                  RenderMathMLBlock (anonymous, flex) at (0,0) size 13x15
+                    RenderBlock {math:mi} at (1,0) size 11x12
+                      RenderText {#text} at (0,-3) size 10x17
+                        text run at (0,-3) width 10: "F"
+                  RenderMathMLBlock (anonymous, flex) at (0,15) size 13x16 [padding: 1 0 0 0]
+                    RenderBlock {math:mi} at (0,4) size 13x12
+                      RenderText {#text} at (0,-3) size 12x17
+                        text run at (0,-3) width 12: "G"
diff --git a/LayoutTests/platform/qt/mathml/presentation/mo-expected.png b/LayoutTests/platform/qt/mathml/presentation/mo-expected.png
new file mode 100644 (file)
index 0000000..52bcb1e
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/mo-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/mo-expected.txt b/LayoutTests/platform/qt/mathml/presentation/mo-expected.txt
new file mode 100644 (file)
index 0000000..7ec73aa
--- /dev/null
@@ -0,0 +1,200 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x366
+  RenderBlock {html} at (0,0) size 800x366
+    RenderBody {body} at (8,16) size 784x334
+      RenderBlock {p} at (0,0) size 784x18
+        RenderText {#text} at (0,0) size 59x17
+          text run at (0,0) width 59: "operator: "
+        RenderMathMLMath {math} at (59,5) size 13x12 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,0) size 9x12
+            RenderMathMLBlock (flex) {mo} at (0,0) size 9x12
+              RenderBlock (anonymous) at (0,0) size 9x12
+                RenderText {mo} at (0,-2) size 9x14
+                  text run at (0,-2) width 9: "\x{2211}"
+        RenderText {#text} at (72,0) size 71x17
+          text run at (72,0) width 71: " , operator: "
+        RenderMathMLMath {math} at (143,5) size 12x10 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,0) size 8x10
+            RenderMathMLBlock (flex) {mo} at (0,0) size 8x10
+              RenderBlock (anonymous) at (0,0) size 8x10
+                RenderText {mo} at (0,-2) size 8x14
+                  text run at (0,-2) width 8: "B"
+        RenderText {#text} at (155,0) size 109x17
+          text run at (155,0) width 109: " , minus operator: "
+        RenderMathMLMath {math} at (264,9) size 11x6 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,0) size 7x6
+            RenderMathMLBlock (flex) {mo} at (0,0) size 7x6
+              RenderBlock (anonymous) at (0,0) size 7x6
+                RenderText {mo} at (0,-6) size 7x14
+                  text run at (0,-6) width 7: "\x{2212}"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,34) size 784x18
+        RenderText {#text} at (0,0) size 59x17
+          text run at (0,0) width 59: "operator: "
+        RenderMathMLMath {math} at (59,3) size 15x14 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,0) size 11x14
+            RenderMathMLBlock (flex) {mo} at (0,0) size 11x14
+              RenderBlock (anonymous) at (0,0) size 11x14
+                RenderText {mo} at (0,-3) size 11x17
+                  text run at (0,-3) width 11: "\x{2211}"
+        RenderText {#text} at (74,0) size 71x17
+          text run at (74,0) width 71: " , operator: "
+        RenderMathMLMath {math} at (145,3) size 15x12 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,0) size 11x12
+            RenderMathMLBlock (flex) {mo} at (0,0) size 11x12
+              RenderBlock (anonymous) at (0,0) size 11x12
+                RenderText {mo} at (0,-3) size 11x17
+                  text run at (0,-3) width 11: "B"
+        RenderText {#text} at (160,0) size 109x17
+          text run at (160,0) width 109: " , minus operator: "
+        RenderMathMLMath {math} at (269,8) size 13x7 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,0) size 9x7
+            RenderMathMLBlock (flex) {mo} at (0,0) size 9x7
+              RenderBlock (anonymous) at (0,0) size 9x7
+                RenderText {mo} at (0,-8) size 9x17
+                  text run at (0,-8) width 9: "\x{2212}"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,68) size 784x22
+        RenderText {#text} at (0,3) size 59x17
+          text run at (0,3) width 59: "operator: "
+        RenderMathMLMath {math} at (59,0) size 23x22 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (3,0) size 17x22
+            RenderMathMLBlock (flex) {mo} at (0,0) size 17x22
+              RenderBlock (anonymous) at (0,0) size 17x22
+                RenderText {mo} at (0,-5) size 17x27
+                  text run at (0,-5) width 17: "\x{2211}"
+        RenderText {#text} at (82,3) size 71x17
+          text run at (82,3) width 71: " , operator: "
+        RenderMathMLMath {math} at (153,0) size 22x18 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (3,0) size 16x18
+            RenderMathMLBlock (flex) {mo} at (0,0) size 16x18
+              RenderBlock (anonymous) at (0,0) size 16x18
+                RenderText {mo} at (0,-5) size 16x27
+                  text run at (0,-5) width 16: "B"
+        RenderText {#text} at (175,3) size 109x17
+          text run at (175,3) width 109: " , minus operator: "
+        RenderMathMLMath {math} at (284,8) size 20x10 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (3,0) size 14x10
+            RenderMathMLBlock (flex) {mo} at (0,0) size 14x10
+              RenderBlock (anonymous) at (0,0) size 14x10
+                RenderText {mo} at (0,-13) size 14x27
+                  text run at (0,-13) width 14: "\x{2212}"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,106) size 784x22
+        RenderText {#text} at (0,3) size 59x17
+          text run at (0,3) width 59: "operator: "
+        RenderMathMLMath {math} at (59,0) size 51x22 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,8) size 9x12
+            RenderMathMLBlock (flex) {mo} at (0,0) size 9x12
+              RenderBlock (anonymous) at (0,0) size 9x12
+                RenderText {mo} at (0,-2) size 9x14
+                  text run at (0,-2) width 9: "\x{2211}"
+          RenderMathMLOperator {mo} at (15,6) size 11x14
+            RenderMathMLBlock (flex) {mo} at (0,0) size 11x14
+              RenderBlock (anonymous) at (0,0) size 11x14
+                RenderText {mo} at (0,-3) size 11x17
+                  text run at (0,-3) width 11: "\x{2211}"
+          RenderMathMLOperator {mo} at (31,0) size 17x22
+            RenderMathMLBlock (flex) {mo} at (0,0) size 17x22
+              RenderBlock (anonymous) at (0,0) size 17x22
+                RenderText {mo} at (0,-5) size 17x27
+                  text run at (0,-5) width 17: "\x{2211}"
+        RenderText {#text} at (110,3) size 71x17
+          text run at (110,3) width 71: " , operator: "
+        RenderMathMLMath {math} at (181,0) size 49x18 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,8) size 8x10
+            RenderMathMLBlock (flex) {mo} at (0,0) size 8x10
+              RenderBlock (anonymous) at (0,0) size 8x10
+                RenderText {mo} at (0,-2) size 8x14
+                  text run at (0,-2) width 8: "B"
+          RenderMathMLOperator {mo} at (14,6) size 11x12
+            RenderMathMLBlock (flex) {mo} at (0,0) size 11x12
+              RenderBlock (anonymous) at (0,0) size 11x12
+                RenderText {mo} at (0,-3) size 11x17
+                  text run at (0,-3) width 11: "B"
+          RenderMathMLOperator {mo} at (30,0) size 16x18
+            RenderMathMLBlock (flex) {mo} at (0,0) size 16x18
+              RenderBlock (anonymous) at (0,0) size 16x18
+                RenderText {mo} at (0,-5) size 16x27
+                  text run at (0,-5) width 16: "B"
+        RenderText {#text} at (230,3) size 109x17
+          text run at (230,3) width 109: " , minus operator: "
+        RenderMathMLMath {math} at (339,8) size 44x10 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,4) size 7x6
+            RenderMathMLBlock (flex) {mo} at (0,0) size 7x6
+              RenderBlock (anonymous) at (0,0) size 7x6
+                RenderText {mo} at (0,-6) size 7x14
+                  text run at (0,-6) width 7: "\x{2212}"
+          RenderMathMLOperator {mo} at (13,3) size 9x7
+            RenderMathMLBlock (flex) {mo} at (0,0) size 9x7
+              RenderBlock (anonymous) at (0,0) size 9x7
+                RenderText {mo} at (0,-8) size 9x17
+                  text run at (0,-8) width 9: "\x{2212}"
+          RenderMathMLOperator {mo} at (27,0) size 14x10
+            RenderMathMLBlock (flex) {mo} at (0,0) size 14x10
+              RenderBlock (anonymous) at (0,0) size 14x10
+                RenderText {mo} at (0,-13) size 14x27
+                  text run at (0,-13) width 14: "\x{2212}"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,144) size 784x62
+        RenderText {#text} at (0,22) size 59x17
+          text run at (0,22) width 59: "operator: "
+        RenderMathMLMath {math} at (59,0) size 96x62 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (2,0) size 0x62
+          RenderMathMLOperator {mo} at (6,0) size 10x62
+          RenderMathMLOperator {mo} at (22,0) size 0x62
+          RenderMathMLOperator {mo} at (28,0) size 0x62
+          RenderBlock {mtext} at (31,0) size 56x52
+            RenderBlock {div} at (2,0) size 52x52 [border: (1px solid #000000)]
+            RenderText {#text} at (0,0) size 0x0
+          RenderMathMLOperator {mo} at (90,0) size 0x62
+          RenderMathMLOperator {mo} at (94,0) size 0x62
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,222) size 784x112
+        RenderMathMLMath {math} at (0,0) size 48x112 [padding: 0 1 0 1]
+          RenderMathMLOperator {mo} at (5,0) size 0x112
+          RenderMathMLFraction {mfrac} at (10,0) size 28x94
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 28x52
+              RenderBlock {mi} at (5,0) size 17x43
+                RenderText {#text} at (0,-10) size 13x53
+                  text run at (0,-10) width 13: "f"
+            RenderMathMLBlock (anonymous, flex) at (0,52) size 28x42 [padding: 1 0 0 0]
+              RenderBlock {mi} at (0,10) size 28x32
+                RenderText {#text} at (0,-21) size 24x53
+                  text run at (0,-21) width 24: "g"
+          RenderMathMLOperator {mo} at (43,0) size 0x112
+        RenderText {#text} at (0,0) size 0x0
+layer at (73,160) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,0) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+      RenderText {mo} at (0,-1) size 10x17
+        text run at (0,-1) width 10: "\x{2320}"
+layer at (73,178) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,18) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (73,188) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,28) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (73,198) size 10x6 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,38) size 10x6
+    RenderBlock (anonymous) at (0,0) size 0x6
+layer at (73,204) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,44) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+layer at (73,177) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (73,187) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (73,197) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (73,203) size 10x18 backgroundClip at (73,204) size 10x18 clip at (73,204) size 10x18 outlineClip at (73,204) size 10x18
+  RenderBlock (relative positioned) {mo} at (0,0) size 10x18
+    RenderText {mo} at (0,-1) size 10x17
+      text run at (0,-1) width 10: "\x{2321}"
diff --git a/LayoutTests/platform/qt/mathml/presentation/mo-stretch-expected.png b/LayoutTests/platform/qt/mathml/presentation/mo-stretch-expected.png
new file mode 100644 (file)
index 0000000..f27e30d
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/mo-stretch-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/mo-stretch-expected.txt b/LayoutTests/platform/qt/mathml/presentation/mo-stretch-expected.txt
new file mode 100644 (file)
index 0000000..3c7bd30
--- /dev/null
@@ -0,0 +1,264 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x349
+  RenderBlock {HTML} at (0,0) size 800x349
+    RenderBody {BODY} at (8,8) size 784x333
+      RenderMathMLMath {math} at (0,0) size 784x75 [padding: 0 1 0 1]
+        RenderMathMLRow {mrow} at (308,0) size 167x75
+          RenderMathMLRow {mrow} at (0,0) size 109x75
+            RenderMathMLRow {mrow} at (0,0) size 46x75
+              RenderBlock {mi} at (0,33) size 6x14
+                RenderText {#text} at (0,-3) size 5x17
+                  text run at (0,-3) width 5: "f"
+              RenderMathMLRow {mrow} at (6,0) size 40x75
+                RenderMathMLOperator {mo} at (1,0) size 0x75
+                RenderMathMLFraction {mfrac} at (3,9) size 34x63
+                  RenderMathMLBlock (anonymous, flex) at (0,0) size 34x31
+                    RenderMathMLRow {mrow} at (0,0) size 34x28
+                      RenderMathMLFraction {mfrac} at (1,0) size 9x28
+                        RenderMathMLBlock (anonymous, flex) at (0,0) size 9x12
+                          RenderBlock {mi} at (0,0) size 9x9
+                            RenderText {#text} at (0,-6) size 8x17
+                              text run at (0,-6) width 8: "a"
+                        RenderMathMLBlock (anonymous, flex) at (0,12) size 9x16 [padding: 1 0 0 0]
+                          RenderBlock {mi} at (0,4) size 9x12
+                            RenderText {#text} at (0,-3) size 8x17
+                              text run at (0,-3) width 8: "b"
+                      RenderMathMLOperator {mo} at (14,6) size 9x11
+                        RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                          RenderBlock (anonymous) at (0,0) size 9x11
+                            RenderText {mo} at (0,-4) size 9x17
+                              text run at (0,-4) width 9: "+"
+                      RenderBlock {mi} at (26,8) size 8x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                  RenderMathMLBlock (anonymous, flex) at (0,31) size 34x32 [padding: 1 0 0 0]
+                    RenderMathMLRow {mrow} at (0,4) size 34x28
+                      RenderMathMLFraction {mfrac} at (1,0) size 9x28
+                        RenderMathMLBlock (anonymous, flex) at (0,0) size 9x12
+                          RenderBlock {mi} at (0,0) size 8x9
+                            RenderText {#text} at (0,-6) size 7x17
+                              text run at (0,-6) width 7: "c"
+                        RenderMathMLBlock (anonymous, flex) at (0,12) size 9x16 [padding: 1 0 0 0]
+                          RenderBlock {mi} at (0,4) size 9x12
+                            RenderText {#text} at (0,-3) size 8x17
+                              text run at (0,-3) width 8: "d"
+                      RenderMathMLOperator {mo} at (14,6) size 9x11
+                        RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                          RenderBlock (anonymous) at (0,0) size 9x11
+                            RenderText {mo} at (0,-4) size 9x17
+                              text run at (0,-4) width 9: "+"
+                      RenderBlock {mi} at (26,8) size 8x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "e"
+                RenderMathMLOperator {mo} at (39,0) size 0x75
+            RenderMathMLOperator {mo} at (49,34) size 9x11
+              RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                RenderBlock (anonymous) at (0,0) size 9x11
+                  RenderText {mo} at (0,-4) size 9x17
+                    text run at (0,-4) width 9: "+"
+            RenderMathMLRow {mrow} at (61,14) size 48x52
+              RenderBlock {mi} at (0,22) size 9x11
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "g"
+              RenderMathMLRow {mrow} at (9,0) size 39x52
+                RenderMathMLOperator {mo} at (1,0) size 0x52
+                RenderMathMLSubSup {msubsup} at (2,5) size 35x44
+                  RenderMathMLBlock (anonymous, flex) at (0,0) size 8x44 [padding: 17 0 18 0]
+                    RenderBlock {mi} at (0,17) size 8x9
+                      RenderText {#text} at (0,-6) size 8x17
+                        text run at (0,-6) width 8: "x"
+                  RenderMathMLBlock (anonymous, flex) at (8,0) size 27x44
+                    RenderMathMLRow {mrow} at (0,22) size 27x22
+                      RenderMathMLFraction {mfrac} at (1,0) size 7x22
+                        RenderMathMLBlock (anonymous, flex) at (0,0) size 7x9
+                          RenderBlock {mi} at (0,0) size 6x7
+                            RenderText {#text} at (0,-5) size 5x14
+                              text run at (0,-5) width 5: "c"
+                        RenderMathMLBlock (anonymous, flex) at (0,9) size 7x13 [padding: 1 0 0 0]
+                          RenderBlock {mi} at (0,3) size 7x10
+                            RenderText {#text} at (0,-2) size 6x14
+                              text run at (0,-2) width 6: "d"
+                      RenderMathMLOperator {mo} at (11,4) size 7x9
+                        RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+                          RenderBlock (anonymous) at (0,0) size 7x9
+                            RenderText {mo} at (0,-3) size 7x14
+                              text run at (0,-3) width 7: "+"
+                      RenderBlock {mi} at (20,6) size 6x7
+                        RenderText {#text} at (0,-5) size 5x14
+                          text run at (0,-5) width 5: "e"
+                    RenderMathMLRow {mrow} at (1,0) size 26x22
+                      RenderMathMLFraction {mfrac} at (1,0) size 7x22
+                        RenderMathMLBlock (anonymous, flex) at (0,0) size 7x9
+                          RenderBlock {mi} at (0,0) size 7x7
+                            RenderText {#text} at (0,-5) size 6x14
+                              text run at (0,-5) width 6: "a"
+                        RenderMathMLBlock (anonymous, flex) at (0,9) size 7x13 [padding: 1 0 0 0]
+                          RenderBlock {mi} at (0,3) size 7x10
+                            RenderText {#text} at (0,-2) size 6x14
+                              text run at (0,-2) width 6: "b"
+                      RenderMathMLOperator {mo} at (11,4) size 7x9
+                        RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+                          RenderBlock (anonymous) at (0,0) size 7x9
+                            RenderText {mo} at (0,-3) size 7x14
+                              text run at (0,-3) width 7: "+"
+                      RenderBlock {mi} at (20,6) size 6x7
+                        RenderText {#text} at (0,-5) size 5x14
+                          text run at (0,-5) width 5: "c"
+                RenderMathMLOperator {mo} at (38,0) size 0x52
+          RenderMathMLOperator {mo} at (112,34) size 9x11
+            RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+              RenderBlock (anonymous) at (0,0) size 9x11
+                RenderText {mo} at (0,-4) size 9x17
+                  text run at (0,-4) width 9: "+"
+          RenderMathMLRow {mrow} at (124,23) size 43x37
+            RenderMathMLSubSup {msubsup} at (0,0) size 17x37
+              RenderMathMLBlock (anonymous, flex) at (0,0) size 10x37
+                RenderMathMLOperator {mo} at (0,0) size 10x37
+              RenderMathMLBlock (anonymous, flex) at (10,0) size 7x37
+                RenderBlock {mi} at (0,30) size 7x7
+                  RenderText {#text} at (0,-5) size 6x14
+                    text run at (0,-5) width 6: "a"
+                RenderBlock {mi} at (0,0) size 7x10
+                  RenderText {#text} at (0,-2) size 6x14
+                    text run at (0,-2) width 6: "b"
+            RenderMathMLRow {mrow} at (17,3) size 26x31
+              RenderMathMLUnderOver {munderover} at (0,0) size 21x31
+                RenderMathMLOperator {mo} at (5,7) size 11x14
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 11x14
+                    RenderBlock (anonymous) at (0,0) size 11x14
+                      RenderText {mo} at (0,-3) size 11x17
+                        text run at (0,-3) width 11: "\x{2211}"
+                RenderMathMLRow {mrow} at (0,21) size 21x10
+                  RenderBlock {mi} at (0,0) size 4x10
+                    RenderText {#text} at (0,-2) size 3x14
+                      text run at (0,-2) width 3: "i"
+                  RenderMathMLOperator {mo} at (6,3) size 7x7
+                    RenderMathMLBlock (flex) {mo} at (0,0) size 7x7
+                      RenderBlock (anonymous) at (0,0) size 7x7
+                        RenderText {mo} at (0,-5) size 7x14
+                          text run at (0,-5) width 7: "="
+                  RenderBlock {mn} at (15,0) size 6x10
+                    RenderText {#text} at (0,-2) size 6x14
+                      text run at (0,-2) width 6: "0"
+                RenderBlock {mi} at (7,0) size 7x7
+                  RenderText {#text} at (0,-5) size 6x14
+                    text run at (0,-5) width 6: "n"
+              RenderBlock {mi} at (21,7) size 5x12
+                RenderText {#text} at (0,-3) size 4x17
+                  text run at (0,-3) width 4: "i"
+      RenderBlock {P} at (0,91) size 784x18
+        RenderText {#text} at (0,0) size 49x17
+          text run at (0,0) width 49: "Implied "
+        RenderInline {CODE} at (0,0) size 32x15
+          RenderText {#text} at (49,3) size 32x15
+            text run at (49,3) width 32: "mrow"
+        RenderText {#text} at (81,0) size 149x17
+          text run at (81,0) width 149: " with operator stretching:"
+      RenderMathMLMath {math} at (0,125) size 784x42 [padding: 0 1 0 1]
+        RenderMathMLSquareRoot {msqrt} at (374,0) size 36x42 [intrinsic padding: 3 0 3 12]
+          RenderMathMLRow (anonymous) at (12,3) size 24x36
+            RenderBlock {mi} at (0,10) size 6x14
+              RenderText {#text} at (0,-3) size 5x17
+                text run at (0,-3) width 5: "f"
+            RenderMathMLOperator {mo} at (9,0) size 0x36
+            RenderMathMLFraction {mfrac} at (13,2) size 8x30
+              RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15
+                RenderBlock {mn} at (0,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "1"
+              RenderMathMLBlock (anonymous, flex) at (0,15) size 8x15 [padding: 1 0 0 0]
+                RenderBlock {mi} at (0,4) size 8x11
+                  RenderText {#text} at (0,-6) size 7x17
+                    text run at (0,-6) width 7: "y"
+            RenderMathMLOperator {mo} at (23,0) size 0x36
+      RenderBlock {P} at (0,183) size 784x18
+        RenderText {#text} at (0,0) size 366x17
+          text run at (0,0) width 366: "Preferred logical widths and heights, with operator stretching:"
+      RenderTable {TABLE} at (0,217) size 19x30
+        RenderTableSection {TBODY} at (0,0) size 19x30
+          RenderTableRow {TR} at (0,2) size 19x26
+            RenderTableCell {TD} at (2,2) size 15x26 [border: (3px solid #000000)] [r=0 c=0 rs=1 cs=1]
+              RenderText {#text} at (4,4) size 7x17
+                text run at (4,4) width 7: "a"
+      RenderTable {TABLE} at (0,247) size 103x86
+        RenderTableSection {TBODY} at (0,0) size 103x86
+          RenderTableRow {TR} at (0,2) size 103x82
+            RenderTableCell {TD} at (2,2) size 99x82 [border: (3px solid #000000)] [r=0 c=0 rs=1 cs=1]
+              RenderMathMLMath {math} at (4,4) size 91x74 [padding: 0 1 0 1]
+                RenderMathMLRow {mrow} at (1,0) size 89x74
+                  RenderMathMLRow {mrow} at (0,31) size 23x15
+                    RenderMathMLOperator {mo} at (1,0) size 5x15
+                      RenderMathMLBlock (flex) {mo} at (0,0) size 5x15
+                        RenderBlock (anonymous) at (0,0) size 5x15
+                          RenderText {mo} at (0,-2) size 5x17
+                            text run at (0,-2) width 5: "{"
+                    RenderBlock {mi} at (7,4) size 9x9
+                      RenderText {#text} at (0,-6) size 8x17
+                        text run at (0,-6) width 8: "x"
+                    RenderMathMLOperator {mo} at (17,0) size 5x15
+                      RenderMathMLBlock (flex) {mo} at (0,0) size 5x15
+                        RenderBlock (anonymous) at (0,0) size 5x15
+                          RenderText {mo} at (0,-2) size 5x17
+                            text run at (0,-2) width 5: "}"
+                  RenderMathMLOperator {mo} at (26,33) size 9x11
+                    RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                      RenderBlock (anonymous) at (0,0) size 9x11
+                        RenderText {mo} at (0,-4) size 9x17
+                          text run at (0,-4) width 9: "+"
+                  RenderMathMLFenced {mfenced} at (38,22) size 14x36
+                    RenderMathMLOperator {mfenced} at (1,0) size 0x36
+                    RenderMathMLFraction {mfrac} at (3,2) size 8x30
+                      RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15
+                        RenderBlock {mn} at (0,0) size 8x12
+                          RenderText {#text} at (0,-3) size 8x17
+                            text run at (0,-3) width 8: "1"
+                      RenderMathMLBlock (anonymous, flex) at (0,15) size 8x15 [padding: 1 0 0 0]
+                        RenderBlock {mi} at (0,4) size 8x11
+                          RenderText {#text} at (0,-6) size 7x17
+                            text run at (0,-6) width 7: "y"
+                    RenderMathMLOperator {mfenced} at (13,0) size 0x36
+                  RenderMathMLOperator {mo} at (55,33) size 9x11
+                    RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                      RenderBlock (anonymous) at (0,0) size 9x11
+                        RenderText {mo} at (0,-4) size 9x17
+                          text run at (0,-4) width 9: "+"
+                  RenderMathMLRow {mrow} at (67,0) size 22x74
+                    RenderMathMLOperator {mo} at (1,0) size 0x74
+                    RenderMathMLTable {mtable} at (2,9) size 18x62
+                      RenderTableSection (anonymous) at (0,0) size 18x62
+                        RenderTableRow {mtr} at (0,2) size 18x18
+                          RenderTableCell {mtd} at (2,2) size 14x18 [r=0 c=0 rs=1 cs=1]
+                            RenderInline {mn} at (0,0) size 8x17
+                              RenderText {#text} at (3,0) size 8x17
+                                text run at (3,0) width 8: "1"
+                        RenderTableRow {mtr} at (0,22) size 18x18
+                          RenderTableCell {mtd} at (2,22) size 14x18 [r=1 c=0 rs=1 cs=1]
+                            RenderInline {mn} at (0,0) size 8x17
+                              RenderText {#text} at (3,0) size 8x17
+                                text run at (3,0) width 8: "2"
+                        RenderTableRow {mtr} at (0,42) size 18x18
+                          RenderTableCell {mtd} at (2,42) size 14x18 [r=2 c=0 rs=1 cs=1]
+                            RenderInline {mn} at (0,0) size 8x17
+                              RenderText {#text} at (3,0) size 8x17
+                                text run at (3,0) width 8: "3"
+                    RenderMathMLOperator {mo} at (21,0) size 0x74
+layer at (440,31) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,0) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+      RenderText {mo} at (0,-1) size 10x17
+        text run at (0,-1) width 10: "\x{2320}"
+layer at (440,49) size 10x1 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,18) size 10x1
+    RenderBlock (anonymous) at (0,0) size 0x1
+layer at (440,50) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,19) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+layer at (440,48) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (440,49) size 10x18 backgroundClip at (440,50) size 10x18 clip at (440,50) size 10x18 outlineClip at (440,50) size 10x18
+  RenderBlock (relative positioned) {mo} at (0,0) size 10x18
+    RenderText {mo} at (0,-1) size 10x17
+      text run at (0,-1) width 10: "\x{2321}"
diff --git a/LayoutTests/platform/qt/mathml/presentation/mroot-pref-width-expected.png b/LayoutTests/platform/qt/mathml/presentation/mroot-pref-width-expected.png
new file mode 100644 (file)
index 0000000..b6e3a36
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/mroot-pref-width-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/mroot-pref-width-expected.txt b/LayoutTests/platform/qt/mathml/presentation/mroot-pref-width-expected.txt
new file mode 100644 (file)
index 0000000..ce775a8
--- /dev/null
@@ -0,0 +1,26 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x87
+  RenderBlock {HTML} at (0,0) size 800x87
+    RenderBody {BODY} at (8,16) size 784x63
+      RenderBlock {P} at (0,0) size 784x18
+        RenderText {#text} at (0,0) size 385x17
+          text run at (0,0) width 385: "The table cell border should go around the mroot, not through it:"
+      RenderBlock (anonymous) at (0,34) size 784x29
+        RenderMathMLMath {math} at (0,0) size 89x29 [padding: 0 1 0 1]
+          RenderMathMLTable {mtable} at (1,0) size 87x29
+            RenderTableSection (anonymous) at (0,0) size 87x29
+              RenderTableRow {mtr} at (0,0) size 87x29
+                RenderTableCell {mtd} at (0,0) size 87x29 [border: (3px solid #000000)] [r=0 c=0 rs=1 cs=1]
+                  RenderText {#text} at (0,0) size 0x0
+        RenderText {#text} at (0,0) size 0x0
+layer at (15,56) size 75x17
+  RenderMathMLRoot {mroot} at (6,6) size 75x17 [intrinsic padding: 8 0 0 66]
+    RenderMathMLRow (anonymous) at (66,8) size 9x9
+      RenderBlock {mi} at (0,0) size 9x9
+        RenderText {#text} at (0,-6) size 8x17
+          text run at (0,-6) width 8: "x"
+layer at (15,56) size 66x14
+  RenderBlock (positioned) {mn} at (0,0) size 66x14
+    RenderText {#text} at (2,-2) size 60x14
+      text run at (2,-2) width 60: "1234567890"
diff --git a/LayoutTests/platform/qt/mathml/presentation/over-expected.png b/LayoutTests/platform/qt/mathml/presentation/over-expected.png
new file mode 100644 (file)
index 0000000..d3210ed
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/over-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/over-expected.txt b/LayoutTests/platform/qt/mathml/presentation/over-expected.txt
new file mode 100644 (file)
index 0000000..5ae111c
--- /dev/null
@@ -0,0 +1,167 @@
+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
+      RenderBlock {p} at (0,0) size 784x22
+        RenderText {#text} at (0,4) size 34x17
+          text run at (0,4) width 34: "over: "
+        RenderMathMLMath {math} at (34,0) size 12x19 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {mover} at (1,0) size 10x19
+            RenderBlock {mi} at (0,7) size 10x12
+              RenderText {#text} at (0,-3) size 9x17
+                text run at (0,-3) width 9: "B"
+            RenderBlock {mi} at (2,0) size 6x7
+              RenderText {#text} at (0,-5) size 5x14
+                text run at (0,-5) width 5: "x"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,38) size 784x24
+        RenderText {#text} at (0,6) size 34x17
+          text run at (0,6) width 34: "over: "
+        RenderMathMLMath {math} at (34,0) size 12x21 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {mover} at (1,0) size 10x21
+            RenderBlock {mi} at (0,9) size 10x12
+              RenderText {#text} at (0,-3) size 9x17
+                text run at (0,-3) width 9: "B"
+            RenderBlock {mi} at (2,0) size 6x9
+              RenderText {#text} at (0,-5) size 5x14
+                text run at (0,-5) width 5: "y"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,78) size 784x29
+        RenderText {#text} at (0,11) size 34x17
+          text run at (0,11) width 34: "over: "
+        RenderMathMLMath {math} at (34,0) size 19x26 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {mover} at (1,0) size 17x26
+            RenderBlock {mi} at (0,9) size 17x17
+              RenderText {#text} at (0,-5) size 15x26
+                text run at (0,-5) width 15: "B"
+            RenderBlock {mi} at (5,0) size 6x9
+              RenderText {#text} at (0,-5) size 5x14
+                text run at (0,-5) width 5: "y"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,123) size 784x31
+        RenderText {#text} at (0,12) size 34x17
+          text run at (0,12) width 34: "over: "
+        RenderMathMLMath {math} at (34,0) size 19x31 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {mover} at (1,0) size 17x31
+            RenderMathMLOperator {mo} at (0,9) size 17x22
+              RenderMathMLBlock (flex) {mo} at (0,0) size 17x22
+                RenderBlock (anonymous) at (0,0) size 17x22
+                  RenderText {mo} at (0,-5) size 17x27
+                    text run at (0,-5) width 17: "\x{2211}"
+            RenderBlock {mi} at (5,0) size 6x9
+              RenderText {#text} at (0,-5) size 5x14
+                text run at (0,-5) width 5: "y"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,170) size 784x60
+        RenderText {#text} at (0,26) size 34x17
+          text run at (0,26) width 34: "over: "
+        RenderMathMLMath {math} at (34,0) size 52x60 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {mover} at (1,3) size 10x57
+            RenderMathMLOperator {mo} at (0,9) size 10x48
+            RenderBlock {mi} at (2,0) size 6x9
+              RenderText {#text} at (0,-5) size 5x14
+                text run at (0,-5) width 5: "y"
+          RenderBlock {div} at (11,0) size 40x40
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,246) size 784x25
+        RenderText {#text} at (0,7) size 44x17
+          text run at (0,7) width 44: "Overs: "
+        RenderMathMLMath {math} at (44,3) size 11x19 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {mover} at (1,0) size 9x19
+            RenderBlock {mi} at (0,10) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mo} at (2,0) size 5x10
+              RenderMathMLBlock (flex) {mo} at (0,0) size 5x10
+                RenderBlock (anonymous) at (0,0) size 5x10
+                  RenderText {mo} at (0,-2) size 5x14
+                    text run at (0,-2) width 5: "^"
+        RenderText {#text} at (55,7) size 4x17
+          text run at (55,7) width 4: " "
+        RenderMathMLMath {math} at (59,7) size 13x15 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {mover} at (1,0) size 11x15
+            RenderBlock {mi} at (0,3) size 11x12
+              RenderText {#text} at (0,-3) size 10x17
+                text run at (0,-3) width 10: "A"
+            RenderMathMLOperator {mo} at (2,0) size 7x3
+              RenderMathMLBlock (flex) {mo} at (0,0) size 7x3
+                RenderBlock (anonymous) at (0,0) size 7x3
+                  RenderText {mo} at (0,-11) size 7x14
+                    text run at (0,-11) width 7: "_"
+        RenderText {#text} at (72,7) size 4x17
+          text run at (72,7) width 4: " "
+        RenderMathMLMath {math} at (76,10) size 11x12 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {mover} at (1,0) size 9x12
+            RenderBlock {mi} at (0,3) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mo} at (1,0) size 7x3
+              RenderMathMLBlock (flex) {mo} at (0,0) size 7x3
+                RenderBlock (anonymous) at (0,0) size 7x3
+                  RenderText {mo} at (0,-11) size 7x14
+                    text run at (0,-11) width 7: "_"
+        RenderText {#text} at (87,7) size 4x17
+          text run at (87,7) width 4: " "
+        RenderMathMLMath {math} at (91,0) size 13x22 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {mover} at (1,0) size 11x22
+            RenderBlock {mi} at (0,10) size 11x12
+              RenderText {#text} at (0,-3) size 10x17
+                text run at (0,-3) width 10: "A"
+            RenderMathMLOperator {mo} at (3,0) size 5x10
+              RenderMathMLBlock (flex) {mo} at (0,0) size 5x10
+                RenderBlock (anonymous) at (0,0) size 5x10
+                  RenderText {mo} at (0,-2) size 5x14
+                    text run at (0,-2) width 5: "^"
+        RenderText {#text} at (104,7) size 4x17
+          text run at (104,7) width 4: " "
+        RenderMathMLMath {math} at (108,6) size 14x16 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {mover} at (1,0) size 12x16
+            RenderBlock {mi} at (1,7) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "v"
+            RenderMathMLOperator {mo} at (0,0) size 12x7
+              RenderMathMLBlock (flex) {mo} at (0,0) size 12x7
+                RenderBlock (anonymous) at (0,0) size 12x7
+                  RenderText {mo} at (0,-5) size 12x14
+                    text run at (0,-5) width 12: "\x{2192}"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,287) size 784x52
+        RenderMathMLMath {math} at (0,0) size 20x49 [padding: 0 1 0 1]
+          RenderBlock {mi} at (1,40) size 9x9
+            RenderText {#text} at (0,-6) size 8x17
+              text run at (0,-6) width 8: "a"
+          RenderMathMLUnderOver {mover} at (10,2) size 9x47 [bgcolor=#FFFF00] [padding: 4 0 0 0]
+            RenderBlock {mi} at (0,19) size 9x28 [bgcolor=#FFA500]
+              RenderText {#text} at (0,13) size 8x17
+                text run at (0,13) width 8: "b"
+            RenderBlock {mi} at (1,4) size 6x7
+              RenderText {#text} at (0,-5) size 5x14
+                text run at (0,-5) width 5: "c"
+        RenderText {#text} at (0,0) size 0x0
+layer at (43,198) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,0) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+      RenderText {mo} at (0,-1) size 10x17
+        text run at (0,-1) width 10: "\x{2320}"
+layer at (43,216) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,18) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (43,226) size 10x2 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,28) size 10x2
+    RenderBlock (anonymous) at (0,0) size 0x2
+layer at (43,228) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,30) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+layer at (43,215) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (43,225) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (43,227) size 10x18 backgroundClip at (43,228) size 10x18 clip at (43,228) size 10x18 outlineClip at (43,228) size 10x18
+  RenderBlock (relative positioned) {mo} at (0,0) size 10x18
+    RenderText {mo} at (0,-1) size 10x17
+      text run at (0,-1) width 10: "\x{2321}"
diff --git a/LayoutTests/platform/qt/mathml/presentation/roots-expected.png b/LayoutTests/platform/qt/mathml/presentation/roots-expected.png
new file mode 100644 (file)
index 0000000..de4ef32
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/roots-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/roots-expected.txt b/LayoutTests/platform/qt/mathml/presentation/roots-expected.txt
new file mode 100644 (file)
index 0000000..98bd84b
--- /dev/null
@@ -0,0 +1,456 @@
+layer at (0,0) size 837x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x569
+  RenderBlock {html} at (0,0) size 800x569
+    RenderBody {body} at (8,16) size 784x537
+      RenderBlock {p} at (0,0) size 784x18
+        RenderText {#text} at (0,0) size 172x17
+          text run at (0,0) width 172: "square root (should be red): "
+        RenderMathMLMath {math} at (172,0) size 22x15 [padding: 0 1 0 1]
+          RenderMathMLSquareRoot {msqrt} at (1,0) size 20x15 [color=#FF0000] [intrinsic padding: 3 0 0 12]
+            RenderMathMLRow (anonymous) at (12,3) size 8x12
+              RenderBlock {mn} at (0,0) size 8x12
+                RenderText {#text} at (0,-3) size 8x17
+                  text run at (0,-3) width 8: "2"
+      RenderBlock {p} at (0,34) size 784x18
+        RenderText {#text} at (0,0) size 105x17
+          text run at (0,0) width 105: "long square root: "
+        RenderMathMLMath {math} at (105,0) size 46x15 [padding: 0 1 0 1]
+          RenderMathMLSquareRoot {msqrt} at (1,0) size 44x15 [intrinsic padding: 3 0 0 12]
+            RenderMathMLRow (anonymous) at (12,3) size 32x12
+              RenderMathMLRow {mrow} at (0,0) size 32x12
+                RenderBlock {mi} at (0,3) size 9x9
+                  RenderText {#text} at (0,-6) size 8x17
+                    text run at (0,-6) width 8: "x"
+                RenderMathMLOperator {mo} at (12,1) size 9x11
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                    RenderBlock (anonymous) at (0,0) size 9x11
+                      RenderText {mo} at (0,-4) size 9x17
+                        text run at (0,-4) width 9: "+"
+                RenderBlock {mn} at (24,0) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "1"
+      RenderBlock {p} at (0,68) size 784x22
+        RenderText {#text} at (0,4) size 209x17
+          text run at (0,4) width 209: "long square root with implied row: "
+        RenderMathMLMath {math} at (209,0) size 52x19 [padding: 0 1 0 1]
+          RenderMathMLSquareRoot {msqrt} at (1,0) size 50x19 [intrinsic padding: 3 0 0 12]
+            RenderMathMLRow (anonymous) at (12,3) size 38x16
+              RenderMathMLSubSup {msup} at (0,0) size 15x16
+                RenderMathMLBlock (anonymous, flex) at (0,0) size 9x16 [padding: 7 0 0 0]
+                  RenderBlock {mi} at (0,7) size 9x9
+                    RenderText {#text} at (0,-6) size 8x17
+                      text run at (0,-6) width 8: "x"
+                RenderMathMLBlock (anonymous, flex) at (9,0) size 6x10
+                  RenderBlock {mn} at (0,0) size 6x10
+                    RenderText {#text} at (0,-2) size 6x14
+                      text run at (0,-2) width 6: "2"
+              RenderMathMLOperator {mo} at (18,5) size 9x11
+                RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                  RenderBlock (anonymous) at (0,0) size 9x11
+                    RenderText {mo} at (0,-4) size 9x17
+                      text run at (0,-4) width 9: "+"
+              RenderBlock {mn} at (30,4) size 8x12
+                RenderText {#text} at (0,-3) size 8x17
+                  text run at (0,-3) width 8: "1"
+      RenderBlock {p} at (0,106) size 784x37
+        RenderText {#text} at (0,8) size 108x17
+          text run at (0,8) width 108: "root of a fraction: "
+        RenderMathMLMath {math} at (108,0) size 48x37 [padding: 0 1 0 1]
+          RenderMathMLSquareRoot {msqrt} at (1,0) size 46x37 [intrinsic padding: 3 0 3 12]
+            RenderMathMLRow (anonymous) at (12,3) size 34x31
+              RenderMathMLFraction {mfrac} at (1,0) size 32x31
+                RenderMathMLBlock (anonymous, flex) at (0,0) size 32x15
+                  RenderMathMLRow {mrow} at (0,0) size 32x12
+                    RenderBlock {mi} at (0,3) size 9x9
+                      RenderText {#text} at (0,-6) size 8x17
+                        text run at (0,-6) width 8: "x"
+                    RenderMathMLOperator {mo} at (12,1) size 9x11
+                      RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                        RenderBlock (anonymous) at (0,0) size 9x11
+                          RenderText {mo} at (0,-4) size 9x17
+                            text run at (0,-4) width 9: "+"
+                    RenderBlock {mn} at (24,0) size 8x12
+                      RenderText {#text} at (0,-3) size 8x17
+                        text run at (0,-3) width 8: "1"
+                RenderMathMLBlock (anonymous, flex) at (0,15) size 32x16 [padding: 1 0 0 0]
+                  RenderMathMLRow {mrow} at (0,4) size 32x12
+                    RenderBlock {mi} at (0,3) size 9x9
+                      RenderText {#text} at (0,-6) size 8x17
+                        text run at (0,-6) width 8: "x"
+                    RenderMathMLOperator {mo} at (12,1) size 9x11
+                      RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                        RenderBlock (anonymous) at (0,0) size 9x11
+                          RenderText {mo} at (0,-4) size 9x17
+                            text run at (0,-4) width 9: "+"
+                    RenderBlock {mn} at (24,0) size 8x12
+                      RenderText {#text} at (0,-3) size 8x17
+                        text run at (0,-3) width 8: "2"
+      RenderBlock {p} at (0,159) size 784x22
+        RenderText {#text} at (0,4) size 166x17
+          text run at (0,4) width 166: "cube root (should be blue): "
+        RenderMathMLMath {math} at (166,0) size 22x19 [color=#0000FF] [padding: 0 1 0 1]
+      RenderBlock {p} at (0,197) size 784x23
+        RenderText {#text} at (0,5) size 68x17
+          text run at (0,5) width 68: "long index: "
+        RenderMathMLMath {math} at (68,0) size 56x20 [padding: 0 1 0 1]
+      RenderBlock {p} at (0,236) size 784x37
+        RenderText {#text} at (0,8) size 174x17
+          text run at (0,8) width 174: "long index w/ complex base: "
+        RenderMathMLMath {math} at (174,0) size 83x37 [padding: 0 1 0 1]
+      RenderBlock {p} at (0,289) size 784x45
+        RenderText {#text} at (0,27) size 67x17
+          text run at (0,27) width 67: "high index: "
+        RenderMathMLMath {math} at (67,0) size 24x42 [padding: 0 1 0 1]
+      RenderBlock {p} at (0,350) size 784x45
+        RenderText {#text} at (0,21) size 151x17
+          text run at (0,21) width 151: "Imbricated square roots: "
+        RenderMathMLMath {math} at (151,0) size 270x45 [padding: 0 1 0 1]
+          RenderMathMLSquareRoot {msqrt} at (1,0) size 268x45 [intrinsic padding: 3 0 3 12]
+            RenderMathMLRow (anonymous) at (12,3) size 256x39
+              RenderBlock {mn} at (0,21) size 8x12
+                RenderText {#text} at (0,-3) size 8x17
+                  text run at (0,-3) width 8: "1"
+              RenderMathMLOperator {mo} at (11,22) size 9x11
+                RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                  RenderBlock (anonymous) at (0,0) size 9x11
+                    RenderText {mo} at (0,-4) size 9x17
+                      text run at (0,-4) width 9: "+"
+              RenderMathMLSquareRoot {msqrt} at (23,0) size 233x39 [intrinsic padding: 3 0 3 12]
+                RenderMathMLRow (anonymous) at (12,3) size 221x33
+                  RenderMathMLRow {mrow} at (0,0) size 221x33
+                    RenderBlock {mn} at (0,18) size 8x12
+                      RenderText {#text} at (0,-3) size 8x17
+                        text run at (0,-3) width 8: "2"
+                    RenderMathMLOperator {mo} at (11,19) size 9x11
+                      RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                        RenderBlock (anonymous) at (0,0) size 9x11
+                          RenderText {mo} at (0,-4) size 9x17
+                            text run at (0,-4) width 9: "+"
+                    RenderMathMLSquareRoot {msqrt} at (23,0) size 198x33 [intrinsic padding: 3 0 3 12]
+                      RenderMathMLRow (anonymous) at (12,3) size 186x27
+                        RenderMathMLRow {mrow} at (0,0) size 186x27
+                          RenderBlock {mn} at (0,15) size 8x12
+                            RenderText {#text} at (0,-3) size 8x17
+                              text run at (0,-3) width 8: "3"
+                          RenderMathMLOperator {mo} at (11,16) size 9x11
+                            RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                              RenderBlock (anonymous) at (0,0) size 9x11
+                                RenderText {mo} at (0,-4) size 9x17
+                                  text run at (0,-4) width 9: "+"
+                          RenderMathMLSquareRoot {msqrt} at (23,0) size 163x27 [intrinsic padding: 3 0 0 12]
+                            RenderMathMLRow (anonymous) at (12,3) size 151x24
+                              RenderMathMLRow {mrow} at (0,0) size 151x24
+                                RenderBlock {mn} at (0,12) size 8x12
+                                  RenderText {#text} at (0,-3) size 8x17
+                                    text run at (0,-3) width 8: "4"
+                                RenderMathMLOperator {mo} at (11,13) size 9x11
+                                  RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                                    RenderBlock (anonymous) at (0,0) size 9x11
+                                      RenderText {mo} at (0,-4) size 9x17
+                                        text run at (0,-4) width 9: "+"
+                                RenderMathMLSquareRoot {msqrt} at (23,0) size 128x24 [intrinsic padding: 3 0 0 12]
+                                  RenderMathMLRow (anonymous) at (12,3) size 116x21
+                                    RenderMathMLRow {mrow} at (0,0) size 116x21
+                                      RenderBlock {mn} at (0,9) size 8x12
+                                        RenderText {#text} at (0,-3) size 8x17
+                                          text run at (0,-3) width 8: "5"
+                                      RenderMathMLOperator {mo} at (11,10) size 9x11
+                                        RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                                          RenderBlock (anonymous) at (0,0) size 9x11
+                                            RenderText {mo} at (0,-4) size 9x17
+                                              text run at (0,-4) width 9: "+"
+                                      RenderMathMLSquareRoot {msqrt} at (23,0) size 93x21 [intrinsic padding: 3 0 0 12]
+                                        RenderMathMLRow (anonymous) at (12,3) size 81x18
+                                          RenderMathMLRow {mrow} at (0,0) size 81x18
+                                            RenderBlock {mn} at (0,6) size 8x12
+                                              RenderText {#text} at (0,-3) size 8x17
+                                                text run at (0,-3) width 8: "6"
+                                            RenderMathMLOperator {mo} at (11,7) size 9x11
+                                              RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                                                RenderBlock (anonymous) at (0,0) size 9x11
+                                                  RenderText {mo} at (0,-4) size 9x17
+                                                    text run at (0,-4) width 9: "+"
+                                            RenderMathMLSquareRoot {msqrt} at (23,0) size 58x18 [intrinsic padding: 3 0 0 12]
+                                              RenderMathMLRow (anonymous) at (12,3) size 46x15
+                                                RenderMathMLRow {mrow} at (0,0) size 46x15
+                                                  RenderBlock {mn} at (0,3) size 8x12
+                                                    RenderText {#text} at (0,-3) size 8x17
+                                                      text run at (0,-3) width 8: "7"
+                                                  RenderMathMLOperator {mo} at (11,4) size 9x11
+                                                    RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                                                      RenderBlock (anonymous) at (0,0) size 9x11
+                                                        RenderText {mo} at (0,-4) size 9x17
+                                                          text run at (0,-4) width 9: "+"
+                                                  RenderMathMLSquareRoot {msqrt} at (23,0) size 23x15 [intrinsic padding: 3 0 0 12]
+                                                    RenderMathMLRow (anonymous) at (12,3) size 11x12
+                                                      RenderBlock {mi} at (0,0) size 11x12
+                                                        RenderText {#text} at (0,-3) size 10x17
+                                                          text run at (0,-3) width 10: "A"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,411) size 784x74
+        RenderText {#text} at (0,38) size 107x17
+          text run at (0,38) width 107: "Imbricated roots: "
+        RenderMathMLMath {math} at (107,0) size 321x74 [padding: 0 1 0 1]
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,501) size 784x36
+        RenderText {#text} at (0,0) size 284x17
+          text run at (0,0) width 284: "Don't wrap this wide line with an implicit mrow:"
+        RenderBR {br} at (284,0) size 0x17
+        RenderMathMLMath {math} at (0,21) size 829x14 [padding: 0 1 0 1]
+          RenderMathMLSquareRoot {msqrt} at (1,0) size 827x14 [intrinsic padding: 3 0 0 12]
+            RenderMathMLRow (anonymous) at (12,3) size 815x11
+              RenderBlock {mi} at (0,0) size 408x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+              RenderBlock {mi} at (408,0) size 407x11
+                RenderText {#text} at (0,-6) size 7x17
+                  text run at (0,-6) width 7: "y"
+        RenderText {#text} at (0,0) size 0x0
+layer at (175,175) size 20x19
+  RenderMathMLRoot {mroot} at (1,0) size 20x19 [intrinsic padding: 7 0 0 12]
+    RenderMathMLRow (anonymous) at (12,7) size 8x12
+      RenderBlock {mn} at (0,0) size 8x12
+        RenderText {#text} at (0,-3) size 8x17
+          text run at (0,-3) width 8: "2"
+layer at (175,175) size 12x14
+  RenderBlock (positioned) {mn} at (0,0) size 12x14
+    RenderText {#text} at (2,-2) size 6x14
+      text run at (2,-2) width 6: "3"
+layer at (77,213) size 54x20
+  RenderMathMLRoot {mroot} at (1,0) size 54x20 [intrinsic padding: 8 0 0 46]
+    RenderMathMLRow (anonymous) at (46,8) size 8x12
+      RenderBlock {mn} at (0,0) size 8x12
+        RenderText {#text} at (0,-3) size 8x17
+          text run at (0,-3) width 8: "2"
+layer at (77,213) size 46x15
+  RenderMathMLRow {mrow} at (0,0) size 46x15 [padding: 0 4 4 2]
+    RenderBlock {mi} at (2,2) size 6x7
+      RenderText {#text} at (0,-5) size 5x14
+        text run at (0,-5) width 5: "x"
+    RenderMathMLOperator {mo} at (10,0) size 7x9
+      RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+        RenderBlock (anonymous) at (0,0) size 7x9
+          RenderText {mo} at (0,-3) size 7x14
+            text run at (0,-3) width 7: "+"
+    RenderBlock {mi} at (19,2) size 6x9
+      RenderText {#text} at (0,-5) size 5x14
+        text run at (0,-5) width 5: "y"
+    RenderMathMLOperator {mo} at (27,0) size 7x9
+      RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+        RenderBlock (anonymous) at (0,0) size 7x9
+          RenderText {mo} at (0,-3) size 7x14
+            text run at (0,-3) width 7: "+"
+    RenderBlock {mi} at (36,2) size 6x7
+      RenderText {#text} at (0,-5) size 5x14
+        text run at (0,-5) width 5: "z"
+layer at (183,252) size 81x37
+  RenderMathMLRoot {mroot} at (1,0) size 81x37 [intrinsic padding: 3 0 3 47]
+    RenderMathMLRow (anonymous) at (47,3) size 34x31
+      RenderMathMLFraction {mfrac} at (1,0) size 32x31
+        RenderMathMLBlock (anonymous, flex) at (0,0) size 32x15
+          RenderMathMLRow {mrow} at (0,0) size 32x12
+            RenderBlock {mi} at (0,3) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mo} at (12,1) size 9x11
+              RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                RenderBlock (anonymous) at (0,0) size 9x11
+                  RenderText {mo} at (0,-4) size 9x17
+                    text run at (0,-4) width 9: "+"
+            RenderBlock {mn} at (24,0) size 8x12
+              RenderText {#text} at (0,-3) size 8x17
+                text run at (0,-3) width 8: "1"
+        RenderMathMLBlock (anonymous, flex) at (0,15) size 32x16 [padding: 1 0 0 0]
+          RenderMathMLRow {mrow} at (0,4) size 32x12
+            RenderBlock {mi} at (0,3) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mo} at (12,1) size 9x11
+              RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                RenderBlock (anonymous) at (0,0) size 9x11
+                  RenderText {mo} at (0,-4) size 9x17
+                    text run at (0,-4) width 9: "+"
+            RenderBlock {mn} at (24,0) size 8x12
+              RenderText {#text} at (0,-3) size 8x17
+                text run at (0,-3) width 8: "2"
+layer at (183,259) size 46x15
+  RenderMathMLRow {mrow} at (0,7) size 46x15 [padding: 0 4 4 2]
+    RenderBlock {mi} at (2,2) size 6x7
+      RenderText {#text} at (0,-5) size 5x14
+        text run at (0,-5) width 5: "x"
+    RenderMathMLOperator {mo} at (10,0) size 7x9
+      RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+        RenderBlock (anonymous) at (0,0) size 7x9
+          RenderText {mo} at (0,-3) size 7x14
+            text run at (0,-3) width 7: "+"
+    RenderBlock {mi} at (19,2) size 6x9
+      RenderText {#text} at (0,-5) size 5x14
+        text run at (0,-5) width 5: "y"
+    RenderMathMLOperator {mo} at (27,0) size 7x9
+      RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+        RenderBlock (anonymous) at (0,0) size 7x9
+          RenderText {mo} at (0,-3) size 7x14
+            text run at (0,-3) width 7: "+"
+    RenderBlock {mi} at (36,2) size 6x7
+      RenderText {#text} at (0,-5) size 5x14
+        text run at (0,-5) width 5: "z"
+layer at (76,305) size 22x42
+  RenderMathMLRoot {mroot} at (1,0) size 22x42 [intrinsic padding: 30 0 0 14]
+    RenderMathMLRow (anonymous) at (14,30) size 8x12
+      RenderBlock {mn} at (0,0) size 8x12
+        RenderText {#text} at (0,-3) size 8x17
+          text run at (0,-3) width 8: "2"
+layer at (77,305) size 14x37
+  RenderMathMLFraction {mfrac} at (1,0) size 14x37 [padding: 0 4 4 2]
+    RenderMathMLBlock (anonymous, flex) at (2,0) size 8x23
+      RenderMathMLFraction {mfrac} at (1,0) size 6x21
+        RenderMathMLBlock (anonymous, flex) at (0,0) size 6x9
+          RenderBlock {mi} at (0,0) size 6x7
+            RenderText {#text} at (0,-5) size 5x14
+              text run at (0,-5) width 5: "x"
+        RenderMathMLBlock (anonymous, flex) at (0,9) size 6x12 [padding: 1 0 0 0]
+          RenderBlock {mi} at (0,3) size 6x9
+            RenderText {#text} at (0,-5) size 5x14
+              text run at (0,-5) width 5: "y"
+    RenderMathMLBlock (anonymous, flex) at (2,23) size 8x10 [padding: 1 0 0 0]
+      RenderBlock {mi} at (1,3) size 6x7
+        RenderText {#text} at (0,-5) size 5x14
+          text run at (0,-5) width 5: "z"
+layer at (116,427) size 319x74
+  RenderMathMLRoot {mroot} at (1,0) size 319x74 [intrinsic padding: 3 0 3 18]
+    RenderMathMLRow (anonymous) at (18,3) size 301x68
+      RenderMathMLRow {mrow} at (0,0) size 301x68
+        RenderBlock {mn} at (0,38) size 8x12
+          RenderText {#text} at (0,-3) size 8x17
+            text run at (0,-3) width 8: "1"
+        RenderMathMLOperator {mo} at (11,39) size 9x11
+          RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+            RenderBlock (anonymous) at (0,0) size 9x11
+              RenderText {mo} at (0,-4) size 9x17
+                text run at (0,-4) width 9: "+"
+layer at (157,430) size 278x68
+  RenderMathMLRoot {mroot} at (23,0) size 278x68 [intrinsic padding: 3 0 3 18]
+    RenderMathMLRow (anonymous) at (18,3) size 260x62
+      RenderMathMLRow {mrow} at (0,0) size 260x62
+        RenderBlock {mn} at (0,35) size 8x12
+          RenderText {#text} at (0,-3) size 8x17
+            text run at (0,-3) width 8: "2"
+        RenderMathMLOperator {mo} at (11,36) size 9x11
+          RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+            RenderBlock (anonymous) at (0,0) size 9x11
+              RenderText {mo} at (0,-4) size 9x17
+                text run at (0,-4) width 9: "+"
+layer at (198,433) size 237x62
+  RenderMathMLRoot {mroot} at (23,0) size 237x62 [intrinsic padding: 3 0 3 18]
+    RenderMathMLRow (anonymous) at (18,3) size 219x56
+      RenderMathMLRow {mrow} at (0,0) size 219x56
+        RenderBlock {mn} at (0,32) size 8x12
+          RenderText {#text} at (0,-3) size 8x17
+            text run at (0,-3) width 8: "3"
+        RenderMathMLOperator {mo} at (11,33) size 9x11
+          RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+            RenderBlock (anonymous) at (0,0) size 9x11
+              RenderText {mo} at (0,-4) size 9x17
+                text run at (0,-4) width 9: "+"
+layer at (239,436) size 196x56
+  RenderMathMLRoot {mroot} at (23,0) size 196x56 [intrinsic padding: 3 0 3 18]
+    RenderMathMLRow (anonymous) at (18,3) size 178x50
+      RenderMathMLRow {mrow} at (0,0) size 178x50
+        RenderBlock {mn} at (0,29) size 8x12
+          RenderText {#text} at (0,-3) size 8x17
+            text run at (0,-3) width 8: "4"
+        RenderMathMLOperator {mo} at (11,30) size 9x11
+          RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+            RenderBlock (anonymous) at (0,0) size 9x11
+              RenderText {mo} at (0,-4) size 9x17
+                text run at (0,-4) width 9: "+"
+layer at (280,439) size 155x50
+  RenderMathMLRoot {mroot} at (23,0) size 155x50 [intrinsic padding: 3 0 3 17]
+    RenderMathMLRow (anonymous) at (17,3) size 138x44
+      RenderMathMLRow {mrow} at (0,0) size 138x44
+        RenderBlock {mn} at (0,26) size 8x12
+          RenderText {#text} at (0,-3) size 8x17
+            text run at (0,-3) width 8: "5"
+        RenderMathMLOperator {mo} at (11,27) size 9x11
+          RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+            RenderBlock (anonymous) at (0,0) size 9x11
+              RenderText {mo} at (0,-4) size 9x17
+                text run at (0,-4) width 9: "+"
+layer at (320,442) size 115x44
+  RenderMathMLRoot {mroot} at (23,0) size 115x44 [intrinsic padding: 3 0 3 15]
+    RenderMathMLRow (anonymous) at (15,3) size 100x38
+      RenderMathMLRow {mrow} at (0,0) size 100x38
+        RenderBlock {mn} at (0,23) size 8x12
+          RenderText {#text} at (0,-3) size 8x17
+            text run at (0,-3) width 8: "6"
+        RenderMathMLOperator {mo} at (11,24) size 9x11
+          RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+            RenderBlock (anonymous) at (0,0) size 9x11
+              RenderText {mo} at (0,-4) size 9x17
+                text run at (0,-4) width 9: "+"
+layer at (358,445) size 77x38
+  RenderMathMLRoot {mroot} at (23,0) size 77x38 [intrinsic padding: 3 0 3 14]
+    RenderMathMLRow (anonymous) at (14,3) size 63x32
+      RenderMathMLRow {mrow} at (0,0) size 63x32
+        RenderBlock {mn} at (0,20) size 8x12
+          RenderText {#text} at (0,-3) size 8x17
+            text run at (0,-3) width 8: "7"
+        RenderMathMLOperator {mo} at (11,21) size 9x11
+          RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+            RenderBlock (anonymous) at (0,0) size 9x11
+              RenderText {mo} at (0,-4) size 9x17
+                text run at (0,-4) width 9: "+"
+layer at (395,448) size 40x32
+  RenderMathMLRoot {mroot} at (23,0) size 40x32 [intrinsic padding: 20 0 0 29]
+    RenderMathMLRow (anonymous) at (29,20) size 11x12
+      RenderBlock {mi} at (0,0) size 11x12
+        RenderText {#text} at (0,-3) size 10x17
+          text run at (0,-3) width 10: "A"
+layer at (396,448) size 29x27
+  RenderMathMLFraction {mfrac} at (1,0) size 29x27 [padding: 0 4 4 2]
+    RenderMathMLBlock (anonymous, flex) at (2,0) size 23x13
+      RenderMathMLRow {mrow} at (0,0) size 23x11
+        RenderBlock {mi} at (0,2) size 6x7
+          RenderText {#text} at (0,-5) size 5x14
+            text run at (0,-5) width 5: "x"
+        RenderMathMLOperator {mo} at (8,0) size 7x9
+          RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+            RenderBlock (anonymous) at (0,0) size 7x9
+              RenderText {mo} at (0,-3) size 7x14
+                text run at (0,-3) width 7: "+"
+        RenderBlock {mi} at (17,2) size 6x9
+          RenderText {#text} at (0,-5) size 5x14
+            text run at (0,-5) width 5: "y"
+    RenderMathMLBlock (anonymous, flex) at (2,13) size 23x10 [padding: 1 0 0 0]
+      RenderBlock {mi} at (8,3) size 6x7
+        RenderText {#text} at (0,-5) size 5x14
+          text run at (0,-5) width 5: "z"
+layer at (358,454) size 12x14
+  RenderBlock (positioned) {mn} at (0,9) size 12x14
+    RenderText {#text} at (2,-2) size 6x14
+      text run at (2,-2) width 6: "9"
+layer at (320,455) size 12x14
+  RenderBlock (positioned) {mn} at (0,13) size 12x14
+    RenderText {#text} at (2,-2) size 6x14
+      text run at (2,-2) width 6: "8"
+layer at (280,455) size 12x14
+  RenderBlock (positioned) {mn} at (0,16) size 12x14
+    RenderText {#text} at (2,-2) size 6x14
+      text run at (2,-2) width 6: "7"
+layer at (239,456) size 12x14
+  RenderBlock (positioned) {mn} at (0,20) size 12x14
+    RenderText {#text} at (2,-2) size 6x14
+      text run at (2,-2) width 6: "6"
+layer at (198,457) size 12x14
+  RenderBlock (positioned) {mn} at (0,24) size 12x14
+    RenderText {#text} at (2,-2) size 6x14
+      text run at (2,-2) width 6: "5"
+layer at (157,458) size 12x14
+  RenderBlock (positioned) {mn} at (0,28) size 12x14
+    RenderText {#text} at (2,-2) size 6x14
+      text run at (2,-2) width 6: "4"
+layer at (116,458) size 12x14
+  RenderBlock (positioned) {mn} at (0,31) size 12x14
+    RenderText {#text} at (2,-2) size 6x14
+      text run at (2,-2) width 6: "3"
diff --git a/LayoutTests/platform/qt/mathml/presentation/row-alignment-expected.png b/LayoutTests/platform/qt/mathml/presentation/row-alignment-expected.png
new file mode 100644 (file)
index 0000000..da4280d
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/row-alignment-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/row-alignment-expected.txt b/LayoutTests/platform/qt/mathml/presentation/row-alignment-expected.txt
new file mode 100644 (file)
index 0000000..87cad14
--- /dev/null
@@ -0,0 +1,297 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x560
+  RenderBlock {html} at (0,0) size 800x560
+    RenderBody {body} at (8,19) size 784x525
+      RenderBlock {div} at (0,0) size 784x65
+        RenderBlock {h2} at (0,0) size 784x28
+          RenderText {#text} at (0,1) size 127x26
+            text run at (0,1) width 127: "Normal flow"
+        RenderBlock {p} at (0,47) size 784x18
+          RenderText {#text} at (0,0) size 149x17
+            text run at (0,0) width 149: "I am a paragraph of text "
+          RenderMathMLMath {math} at (149,3) size 34x12 [padding: 0 1 0 1]
+            RenderBlock {mi} at (1,3) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mo} at (13,1) size 9x11
+              RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                RenderBlock (anonymous) at (0,0) size 9x11
+                  RenderText {mo} at (0,-4) size 9x17
+                    text run at (0,-4) width 9: "+"
+            RenderBlock {mn} at (25,0) size 8x12
+              RenderText {#text} at (0,-3) size 8x17
+                text run at (0,-3) width 8: "1"
+          RenderText {#text} at (183,0) size 100x17
+            text run at (183,0) width 100: " with math inline."
+      RenderBlock {div} at (0,84) size 784x145
+        RenderBlock {h2} at (0,0) size 784x28
+          RenderText {#text} at (0,1) size 202x26
+            text run at (0,1) width 202: "Fraction Alignment"
+        RenderBlock {p} at (0,47) size 784x31
+          RenderText {#text} at (0,5) size 26x17
+            text run at (0,5) width 26: "text "
+          RenderMathMLMath {math} at (26,0) size 36x31 [padding: 0 1 0 1]
+            RenderMathMLFraction {mfrac} at (2,0) size 32x31
+              RenderMathMLBlock (anonymous, flex) at (0,0) size 32x15
+                RenderMathMLRow {mrow} at (0,0) size 32x12
+                  RenderBlock {mi} at (0,3) size 9x9
+                    RenderText {#text} at (0,-6) size 8x17
+                      text run at (0,-6) width 8: "x"
+                  RenderMathMLOperator {mo} at (12,1) size 9x11
+                    RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                      RenderBlock (anonymous) at (0,0) size 9x11
+                        RenderText {mo} at (0,-4) size 9x17
+                          text run at (0,-4) width 9: "+"
+                  RenderBlock {mn} at (24,0) size 8x12
+                    RenderText {#text} at (0,-3) size 8x17
+                      text run at (0,-3) width 8: "1"
+              RenderMathMLBlock (anonymous, flex) at (0,15) size 32x16 [padding: 1 0 0 0]
+                RenderBlock {mn} at (12,4) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "2"
+          RenderText {#text} at (0,0) size 0x0
+        RenderBlock {p} at (0,94) size 784x51
+          RenderText {#text} at (0,15) size 26x17
+            text run at (0,15) width 26: "text "
+          RenderMathMLMath {math} at (26,0) size 80x51 [padding: 0 1 0 1]
+            RenderBlock {mi} at (1,21) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mo} at (13,19) size 9x11
+              RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                RenderBlock (anonymous) at (0,0) size 9x11
+                  RenderText {mo} at (0,-4) size 9x17
+                    text run at (0,-4) width 9: "+"
+            RenderMathMLFraction {mfrac} at (26,0) size 52x51 [bgcolor=#FFFF00] [padding: 10 10 10 10]
+              RenderMathMLBlock (anonymous, flex) at (10,10) size 32x15
+                RenderMathMLRow {mrow} at (0,0) size 32x12
+                  RenderBlock {mi} at (0,3) size 9x9
+                    RenderText {#text} at (0,-6) size 8x17
+                      text run at (0,-6) width 8: "x"
+                  RenderMathMLOperator {mo} at (12,1) size 9x11
+                    RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                      RenderBlock (anonymous) at (0,0) size 9x11
+                        RenderText {mo} at (0,-4) size 9x17
+                          text run at (0,-4) width 9: "+"
+                  RenderBlock {mn} at (24,0) size 8x12
+                    RenderText {#text} at (0,-3) size 8x17
+                      text run at (0,-3) width 8: "1"
+              RenderMathMLBlock (anonymous, flex) at (10,25) size 32x16 [padding: 1 0 0 0]
+                RenderBlock {mn} at (12,4) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "2"
+          RenderText {#text} at (0,0) size 0x0
+      RenderBlock {div} at (0,248) size 784x277
+        RenderBlock {h2} at (0,0) size 784x28
+          RenderText {#text} at (0,1) size 210x26
+            text run at (0,1) width 210: "Operator Stretching"
+        RenderBlock {p} at (0,47) size 784x37
+          RenderText {#text} at (0,7) size 26x17
+            text run at (0,7) width 26: "text "
+          RenderMathMLMath {math} at (26,0) size 64x37 [padding: 0 1 0 1]
+            RenderMathMLOperator {mo} at (2,0) size 0x37
+            RenderBlock {mi} at (3,13) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mo} at (15,11) size 9x11
+              RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                RenderBlock (anonymous) at (0,0) size 9x11
+                  RenderText {mo} at (0,-4) size 9x17
+                    text run at (0,-4) width 9: "+"
+            RenderMathMLFraction {mfrac} at (28,2) size 32x31
+              RenderMathMLBlock (anonymous, flex) at (0,0) size 32x15
+                RenderMathMLRow {mrow} at (0,0) size 32x12
+                  RenderBlock {mi} at (0,3) size 9x9
+                    RenderText {#text} at (0,-6) size 8x17
+                      text run at (0,-6) width 8: "x"
+                  RenderMathMLOperator {mo} at (12,1) size 9x11
+                    RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                      RenderBlock (anonymous) at (0,0) size 9x11
+                        RenderText {mo} at (0,-4) size 9x17
+                          text run at (0,-4) width 9: "+"
+                  RenderBlock {mn} at (24,0) size 8x12
+                    RenderText {#text} at (0,-3) size 8x17
+                      text run at (0,-3) width 8: "1"
+              RenderMathMLBlock (anonymous, flex) at (0,15) size 32x16 [padding: 1 0 0 0]
+                RenderBlock {mn} at (12,4) size 8x12
+                  RenderText {#text} at (0,-3) size 8x17
+                    text run at (0,-3) width 8: "2"
+            RenderMathMLOperator {mo} at (62,0) size 0x37
+          RenderText {#text} at (0,0) size 0x0
+        RenderBlock {p} at (0,100) size 784x82
+          RenderText {#text} at (0,33) size 26x17
+            text run at (0,33) width 26: "text "
+          RenderMathMLMath {math} at (26,0) size 92x82 [padding: 0 1 0 1]
+            RenderBlock {mi} at (1,39) size 8x11
+              RenderText {#text} at (0,-6) size 7x17
+                text run at (0,-6) width 7: "y"
+            RenderMathMLOperator {mo} at (12,0) size 0x82
+            RenderMathMLUnderOver {munder} at (15,36) size 14x21
+              RenderBlock {mi} at (0,0) size 14x14
+                RenderText {#text} at (0,-3) size 13x17
+                  text run at (0,-3) width 13: "\x{220F}"
+              RenderBlock {mi} at (4,14) size 6x7
+                RenderText {#text} at (0,-5) size 5x14
+                  text run at (0,-5) width 5: "x"
+            RenderMathMLFraction {mfrac} at (30,9) size 58x69
+              RenderMathMLBlock (anonymous, flex) at (0,0) size 58x34
+                RenderMathMLRow {mrow} at (0,0) size 58x31
+                  RenderBlock {mi} at (0,11) size 9x9
+                    RenderText {#text} at (0,-6) size 8x17
+                      text run at (0,-6) width 8: "x"
+                  RenderMathMLOperator {mo} at (12,9) size 9x11
+                    RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                      RenderBlock (anonymous) at (0,0) size 9x11
+                        RenderText {mo} at (0,-4) size 9x17
+                          text run at (0,-4) width 9: "+"
+                  RenderMathMLFraction {mfrac} at (25,0) size 32x31
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 32x15
+                      RenderMathMLRow {mrow} at (0,0) size 32x12
+                        RenderBlock {mi} at (0,3) size 9x9
+                          RenderText {#text} at (0,-6) size 8x17
+                            text run at (0,-6) width 8: "x"
+                        RenderMathMLOperator {mo} at (12,1) size 9x11
+                          RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                            RenderBlock (anonymous) at (0,0) size 9x11
+                              RenderText {mo} at (0,-4) size 9x17
+                                text run at (0,-4) width 9: "+"
+                        RenderBlock {mn} at (24,0) size 8x12
+                          RenderText {#text} at (0,-3) size 8x17
+                            text run at (0,-3) width 8: "1"
+                    RenderMathMLBlock (anonymous, flex) at (0,15) size 32x16 [padding: 1 0 0 0]
+                      RenderBlock {mn} at (12,4) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "2"
+              RenderMathMLBlock (anonymous, flex) at (0,34) size 58x35 [padding: 1 0 0 0]
+                RenderMathMLRow {mrow} at (0,4) size 58x31
+                  RenderBlock {mi} at (0,11) size 9x9
+                    RenderText {#text} at (0,-6) size 8x17
+                      text run at (0,-6) width 8: "x"
+                  RenderMathMLOperator {mo} at (12,9) size 9x11
+                    RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                      RenderBlock (anonymous) at (0,0) size 9x11
+                        RenderText {mo} at (0,-4) size 9x17
+                          text run at (0,-4) width 9: "+"
+                  RenderMathMLFraction {mfrac} at (25,0) size 32x31
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 32x15
+                      RenderMathMLRow {mrow} at (0,0) size 32x12
+                        RenderBlock {mi} at (0,3) size 9x9
+                          RenderText {#text} at (0,-6) size 8x17
+                            text run at (0,-6) width 8: "x"
+                        RenderMathMLOperator {mo} at (12,1) size 9x11
+                          RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                            RenderBlock (anonymous) at (0,0) size 9x11
+                              RenderText {mo} at (0,-4) size 9x17
+                                text run at (0,-4) width 9: "+"
+                        RenderBlock {mn} at (24,0) size 8x12
+                          RenderText {#text} at (0,-3) size 8x17
+                            text run at (0,-3) width 8: "1"
+                    RenderMathMLBlock (anonymous, flex) at (0,15) size 32x16 [padding: 1 0 0 0]
+                      RenderBlock {mn} at (12,4) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "2"
+            RenderMathMLOperator {mo} at (90,0) size 0x82
+          RenderText {#text} at (0,0) size 0x0
+        RenderBlock {p} at (0,198) size 784x79
+          RenderText {#text} at (0,31) size 26x17
+            text run at (0,31) width 26: "text "
+          RenderMathMLMath {math} at (26,0) size 84x79 [padding: 0 1 0 1]
+            RenderMathMLOperator {mo} at (2,0) size 0x79
+            RenderMathMLTable {mtable} at (3,9) size 78x66
+              RenderTableSection (anonymous) at (0,0) size 78x66
+                RenderTableRow {mtr} at (0,0) size 78x21
+                  RenderTableCell {mtd} at (0,0) size 26x21 [r=0 c=0 rs=1 cs=1]
+                    RenderMathMLSubSup {msub} at (3,3) size 20x15
+                      RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                        RenderBlock {mi} at (0,0) size 8x9
+                          RenderText {#text} at (0,-6) size 8x17
+                            text run at (0,-6) width 8: "a"
+                      RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                        RenderBlock {mn} at (0,0) size 12x10
+                          RenderText {#text} at (0,-2) size 12x14
+                            text run at (0,-2) width 12: "11"
+                  RenderTableCell {mtd} at (26,0) size 26x21 [r=0 c=1 rs=1 cs=1]
+                    RenderMathMLSubSup {msub} at (3,3) size 20x15
+                      RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                        RenderBlock {mi} at (0,0) size 8x9
+                          RenderText {#text} at (0,-6) size 8x17
+                            text run at (0,-6) width 8: "a"
+                      RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                        RenderBlock {mn} at (0,0) size 12x10
+                          RenderText {#text} at (0,-2) size 12x14
+                            text run at (0,-2) width 12: "12"
+                  RenderTableCell {mtd} at (52,0) size 26x21 [r=0 c=2 rs=1 cs=1]
+                    RenderMathMLSubSup {msub} at (3,3) size 20x15
+                      RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                        RenderBlock {mi} at (0,0) size 8x9
+                          RenderText {#text} at (0,-6) size 8x17
+                            text run at (0,-6) width 8: "a"
+                      RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                        RenderBlock {mn} at (0,0) size 12x10
+                          RenderText {#text} at (0,-2) size 12x14
+                            text run at (0,-2) width 12: "13"
+                RenderTableRow {mtr} at (0,21) size 78x24
+                  RenderTableCell {mtd} at (0,21) size 26x24 [r=1 c=0 rs=1 cs=1]
+                    RenderMathMLSubSup {msub} at (3,3) size 20x18
+                      RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                        RenderBlock {mi} at (0,0) size 8x12
+                          RenderText {#text} at (0,-3) size 8x17
+                            text run at (0,-3) width 8: "b"
+                      RenderMathMLBlock (anonymous, flex) at (8,8) size 12x10
+                        RenderBlock {mn} at (0,0) size 12x10
+                          RenderText {#text} at (0,-2) size 12x14
+                            text run at (0,-2) width 12: "21"
+                  RenderTableCell {mtd} at (26,21) size 26x24 [r=1 c=1 rs=1 cs=1]
+                    RenderMathMLSubSup {msub} at (3,3) size 20x18
+                      RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                        RenderBlock {mi} at (0,0) size 8x12
+                          RenderText {#text} at (0,-3) size 8x17
+                            text run at (0,-3) width 8: "b"
+                      RenderMathMLBlock (anonymous, flex) at (8,8) size 12x10
+                        RenderBlock {mn} at (0,0) size 12x10
+                          RenderText {#text} at (0,-2) size 12x14
+                            text run at (0,-2) width 12: "22"
+                  RenderTableCell {mtd} at (52,21) size 26x24 [r=1 c=2 rs=1 cs=1]
+                    RenderMathMLSubSup {msub} at (3,3) size 20x18
+                      RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                        RenderBlock {mi} at (0,0) size 8x12
+                          RenderText {#text} at (0,-3) size 8x17
+                            text run at (0,-3) width 8: "b"
+                      RenderMathMLBlock (anonymous, flex) at (8,8) size 12x10
+                        RenderBlock {mn} at (0,0) size 12x10
+                          RenderText {#text} at (0,-2) size 12x14
+                            text run at (0,-2) width 12: "23"
+                RenderTableRow {mtr} at (0,45) size 78x21
+                  RenderTableCell {mtd} at (0,45) size 26x21 [r=2 c=0 rs=1 cs=1]
+                    RenderMathMLSubSup {msub} at (4,3) size 19x15
+                      RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                        RenderBlock {mi} at (0,0) size 7x9
+                          RenderText {#text} at (0,-6) size 7x17
+                            text run at (0,-6) width 7: "c"
+                      RenderMathMLBlock (anonymous, flex) at (7,5) size 12x10
+                        RenderBlock {mn} at (0,0) size 12x10
+                          RenderText {#text} at (0,-2) size 12x14
+                            text run at (0,-2) width 12: "31"
+                  RenderTableCell {mtd} at (26,45) size 26x21 [r=2 c=1 rs=1 cs=1]
+                    RenderMathMLSubSup {msub} at (4,3) size 19x15
+                      RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                        RenderBlock {mi} at (0,0) size 7x9
+                          RenderText {#text} at (0,-6) size 7x17
+                            text run at (0,-6) width 7: "c"
+                      RenderMathMLBlock (anonymous, flex) at (7,5) size 12x10
+                        RenderBlock {mn} at (0,0) size 12x10
+                          RenderText {#text} at (0,-2) size 12x14
+                            text run at (0,-2) width 12: "32"
+                  RenderTableCell {mtd} at (52,45) size 26x21 [r=2 c=2 rs=1 cs=1]
+                    RenderMathMLSubSup {msub} at (4,3) size 19x15
+                      RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                        RenderBlock {mi} at (0,0) size 7x9
+                          RenderText {#text} at (0,-6) size 7x17
+                            text run at (0,-6) width 7: "c"
+                      RenderMathMLBlock (anonymous, flex) at (7,5) size 12x10
+                        RenderBlock {mn} at (0,0) size 12x10
+                          RenderText {#text} at (0,-2) size 12x14
+                            text run at (0,-2) width 12: "33"
+            RenderMathMLOperator {mo} at (82,0) size 0x79
+          RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/presentation/row-expected.png b/LayoutTests/platform/qt/mathml/presentation/row-expected.png
new file mode 100644 (file)
index 0000000..df20584
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/row-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/row-expected.txt b/LayoutTests/platform/qt/mathml/presentation/row-expected.txt
new file mode 100644 (file)
index 0000000..6b206d1
--- /dev/null
@@ -0,0 +1,520 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x485
+  RenderBlock {html} at (0,0) size 800x485
+    RenderBody {body} at (8,16) size 784x453
+      RenderBlock {p} at (0,0) size 784x18
+        RenderMathMLMath {math} at (0,3) size 34x12 [padding: 0 1 0 1]
+          RenderBlock {mi} at (1,3) size 9x9
+            RenderText {#text} at (0,-6) size 8x17
+              text run at (0,-6) width 8: "x"
+          RenderMathMLOperator {mo} at (13,1) size 9x11 [bgcolor=#C8C8C8]
+            RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+              RenderBlock (anonymous) at (0,0) size 9x11
+                RenderText {mo} at (0,-4) size 9x17
+                  text run at (0,-4) width 9: "+"
+          RenderBlock {mn} at (25,0) size 8x12
+            RenderText {#text} at (0,-3) size 8x17
+              text run at (0,-3) width 8: "1"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,34) size 784x19
+        RenderText {#text} at (0,0) size 38x17
+          text run at (0,0) width 38: "16px: "
+        RenderMathMLMath {math} at (38,0) size 43x19 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 41x19
+            RenderMathMLOperator {mo} at (1,0) size 6x18 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 6x18
+                RenderBlock (anonymous) at (0,0) size 6x18
+                  RenderText {mo} at (0,-3) size 6x21
+                    text run at (0,-3) width 6: "{"
+            RenderBlock {mi} at (8,6) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (17,3) size 16x16
+              RenderBlock {div} at (0,0) size 16x16 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (34,0) size 6x18 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 6x18
+                RenderBlock (anonymous) at (0,0) size 6x18
+                  RenderText {mo} at (0,-3) size 6x21
+                    text run at (0,-3) width 6: "}"
+        RenderText {#text} at (81,0) size 4x17
+          text run at (81,0) width 4: " "
+        RenderMathMLMath {math} at (85,0) size 41x19 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 39x19
+            RenderMathMLOperator {mo} at (1,0) size 5x18 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 5x18
+                RenderBlock (anonymous) at (0,0) size 5x18
+                  RenderText {mo} at (0,-3) size 5x21
+                    text run at (0,-3) width 5: "["
+            RenderBlock {mi} at (7,6) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (16,3) size 16x16
+              RenderBlock {div} at (0,0) size 16x16 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (33,0) size 5x18 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 5x18
+                RenderBlock (anonymous) at (0,0) size 5x18
+                  RenderText {mo} at (0,-3) size 5x21
+                    text run at (0,-3) width 5: "]"
+        RenderText {#text} at (126,0) size 4x17
+          text run at (126,0) width 4: " "
+        RenderMathMLMath {math} at (130,0) size 43x19 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 41x19
+            RenderMathMLOperator {mo} at (1,0) size 6x18 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 6x18
+                RenderBlock (anonymous) at (0,0) size 6x18
+                  RenderText {mo} at (0,-3) size 6x21
+                    text run at (0,-3) width 6: "("
+            RenderBlock {mi} at (8,6) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (17,3) size 16x16
+              RenderBlock {div} at (0,0) size 16x16 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (34,0) size 6x18 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 6x18
+                RenderBlock (anonymous) at (0,0) size 6x18
+                  RenderText {mo} at (0,-3) size 6x21
+                    text run at (0,-3) width 6: ")"
+        RenderText {#text} at (173,0) size 4x17
+          text run at (173,0) width 4: " "
+        RenderMathMLMath {math} at (177,0) size 43x19 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 41x19
+            RenderMathMLOperator {mo} at (1,0) size 6x18 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 6x18
+                RenderBlock (anonymous) at (0,0) size 6x18
+                  RenderText {mo} at (0,-3) size 6x21
+                    text run at (0,-3) width 6: "|"
+            RenderBlock {mi} at (8,6) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (17,3) size 16x16
+              RenderBlock {div} at (0,0) size 16x16 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (34,0) size 6x18 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 6x18
+                RenderBlock (anonymous) at (0,0) size 6x18
+                  RenderText {mo} at (0,-3) size 6x21
+                    text run at (0,-3) width 6: "|"
+        RenderText {#text} at (220,0) size 4x17
+          text run at (220,0) width 4: " "
+        RenderMathMLMath {math} at (224,0) size 33x19 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 31x19
+            RenderMathMLOperator {mo} at (1,0) size 4x18 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 4x18
+                RenderBlock (anonymous) at (0,0) size 4x18
+                  RenderText {mo} at (0,-3) size 4x21
+                    text run at (0,-3) width 4: "\x{222B}"
+            RenderBlock {mi} at (6,6) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (15,3) size 16x16
+              RenderBlock {div} at (0,0) size 16x16 [bgcolor=#00FF00]
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,69) size 784x33
+        RenderText {#text} at (0,7) size 38x17
+          text run at (0,7) width 38: "24px: "
+        RenderMathMLMath {math} at (38,1) size 57x27 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 55x27
+            RenderMathMLOperator {mo} at (1,0) size 9x26 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 9x26
+                RenderBlock (anonymous) at (0,0) size 9x26
+                  RenderText {mo} at (0,-5) size 9x31
+                    text run at (0,-5) width 9: "{"
+            RenderBlock {mi} at (11,12) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (20,3) size 24x24
+              RenderBlock {div} at (0,0) size 24x24 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (45,0) size 9x26 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 9x26
+                RenderBlock (anonymous) at (0,0) size 9x26
+                  RenderText {mo} at (0,-5) size 9x31
+                    text run at (0,-5) width 9: "}"
+        RenderText {#text} at (95,7) size 4x17
+          text run at (95,7) width 4: " "
+        RenderMathMLMath {math} at (99,4) size 39x29 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 37x29
+            RenderMathMLOperator {mo} at (1,1) size 0x28 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,9) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 24x24
+              RenderBlock {div} at (0,0) size 24x24 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (36,1) size 0x28 [bgcolor=#C8C8C8]
+        RenderText {#text} at (138,7) size 4x17
+          text run at (138,7) width 4: " "
+        RenderMathMLMath {math} at (142,4) size 39x29 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 37x29
+            RenderMathMLOperator {mo} at (1,1) size 0x28 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,9) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 24x24
+              RenderBlock {div} at (0,0) size 24x24 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (36,1) size 0x28 [bgcolor=#C8C8C8]
+        RenderText {#text} at (181,7) size 4x17
+          text run at (181,7) width 4: " "
+        RenderMathMLMath {math} at (185,4) size 39x29 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 37x29
+            RenderMathMLOperator {mo} at (1,1) size 0x28 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,9) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 24x24
+              RenderBlock {div} at (0,0) size 24x24 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (36,1) size 0x28 [bgcolor=#C8C8C8]
+        RenderText {#text} at (224,7) size 4x17
+          text run at (224,7) width 4: " "
+        RenderMathMLMath {math} at (228,0) size 44x28 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 42x28
+            RenderMathMLOperator {mo} at (1,0) size 7x27 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 7x27
+                RenderBlock (anonymous) at (0,0) size 7x27
+                  RenderText {mo} at (0,-4) size 7x31
+                    text run at (0,-4) width 7: "\x{222B}"
+            RenderBlock {mi} at (9,13) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (18,4) size 24x24
+              RenderBlock {div} at (0,0) size 24x24 [bgcolor=#00FF00]
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,118) size 784x38
+        RenderText {#text} at (0,8) size 38x17
+          text run at (0,8) width 38: "32px: "
+        RenderMathMLMath {math} at (38,0) size 47x38 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 45x38
+            RenderMathMLOperator {mo} at (1,0) size 0x38 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,14) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 32x32
+              RenderBlock {div} at (0,0) size 32x32 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (44,0) size 0x38 [bgcolor=#C8C8C8]
+        RenderText {#text} at (85,8) size 4x17
+          text run at (85,8) width 4: " "
+        RenderMathMLMath {math} at (89,0) size 47x38 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 45x38
+            RenderMathMLOperator {mo} at (1,0) size 0x38 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,14) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 32x32
+              RenderBlock {div} at (0,0) size 32x32 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (44,0) size 0x38 [bgcolor=#C8C8C8]
+        RenderText {#text} at (136,8) size 4x17
+          text run at (136,8) width 4: " "
+        RenderMathMLMath {math} at (140,0) size 47x38 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 45x38
+            RenderMathMLOperator {mo} at (1,0) size 0x38 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,14) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 32x32
+              RenderBlock {div} at (0,0) size 32x32 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (44,0) size 0x38 [bgcolor=#C8C8C8]
+        RenderText {#text} at (187,8) size 4x17
+          text run at (187,8) width 4: " "
+        RenderMathMLMath {math} at (191,0) size 47x38 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 45x38
+            RenderMathMLOperator {mo} at (1,0) size 0x38 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,14) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 32x32
+              RenderBlock {div} at (0,0) size 32x32 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (44,0) size 0x38 [bgcolor=#C8C8C8]
+        RenderText {#text} at (238,8) size 4x17
+          text run at (238,8) width 4: " "
+        RenderMathMLMath {math} at (242,0) size 55x38 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 53x38
+            RenderMathMLOperator {mo} at (1,0) size 10x38 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (12,14) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (21,0) size 32x32
+              RenderBlock {div} at (0,0) size 32x32 [bgcolor=#00FF00]
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,172) size 784x57
+        RenderText {#text} at (0,19) size 38x17
+          text run at (0,19) width 38: "48px: "
+        RenderMathMLMath {math} at (38,0) size 63x57 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 61x57
+            RenderMathMLOperator {mo} at (1,0) size 0x57 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,25) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 48x48
+              RenderBlock {div} at (0,0) size 48x48 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (60,0) size 0x57 [bgcolor=#C8C8C8]
+        RenderText {#text} at (101,19) size 4x17
+          text run at (101,19) width 4: " "
+        RenderMathMLMath {math} at (105,0) size 63x57 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 61x57
+            RenderMathMLOperator {mo} at (1,0) size 0x57 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,25) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 48x48
+              RenderBlock {div} at (0,0) size 48x48 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (60,0) size 0x57 [bgcolor=#C8C8C8]
+        RenderText {#text} at (168,19) size 4x17
+          text run at (168,19) width 4: " "
+        RenderMathMLMath {math} at (172,0) size 63x57 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 61x57
+            RenderMathMLOperator {mo} at (1,0) size 0x57 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,25) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 48x48
+              RenderBlock {div} at (0,0) size 48x48 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (60,0) size 0x57 [bgcolor=#C8C8C8]
+        RenderText {#text} at (235,19) size 4x17
+          text run at (235,19) width 4: " "
+        RenderMathMLMath {math} at (239,0) size 63x57 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 61x57
+            RenderMathMLOperator {mo} at (1,0) size 0x57 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,25) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,0) size 48x48
+              RenderBlock {div} at (0,0) size 48x48 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (60,0) size 0x57 [bgcolor=#C8C8C8]
+        RenderText {#text} at (302,19) size 4x17
+          text run at (302,19) width 4: " "
+        RenderMathMLMath {math} at (306,0) size 71x57 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 69x57
+            RenderMathMLOperator {mo} at (1,0) size 10x57 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (12,25) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (21,0) size 48x48
+              RenderBlock {div} at (0,0) size 48x48 [bgcolor=#00FF00]
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,245) size 784x144
+        RenderText {#text} at (0,70) size 46x17
+          text run at (0,70) width 46: "120px: "
+        RenderMathMLMath {math} at (46,0) size 63x144 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 61x144
+            RenderMathMLOperator {mo} at (1,0) size 0x144 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,76) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,3) size 48x120
+              RenderBlock {div} at (0,0) size 48x120 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (60,0) size 0x144 [bgcolor=#C8C8C8]
+        RenderText {#text} at (109,70) size 4x17
+          text run at (109,70) width 4: " "
+        RenderMathMLMath {math} at (113,0) size 63x144 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 61x144
+            RenderMathMLOperator {mo} at (1,0) size 0x144 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,76) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,3) size 48x120
+              RenderBlock {div} at (0,0) size 48x120 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (60,0) size 0x144 [bgcolor=#C8C8C8]
+        RenderText {#text} at (176,70) size 4x17
+          text run at (176,70) width 4: " "
+        RenderMathMLMath {math} at (180,0) size 63x144 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 61x144
+            RenderMathMLOperator {mo} at (1,0) size 0x144 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,76) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,3) size 48x120
+              RenderBlock {div} at (0,0) size 48x120 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (60,0) size 0x144 [bgcolor=#C8C8C8]
+        RenderText {#text} at (243,70) size 4x17
+          text run at (243,70) width 4: " "
+        RenderMathMLMath {math} at (247,0) size 63x144 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 61x144
+            RenderMathMLOperator {mo} at (1,0) size 0x144 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,76) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (11,3) size 48x120
+              RenderBlock {div} at (0,0) size 48x120 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (60,0) size 0x144 [bgcolor=#C8C8C8]
+        RenderText {#text} at (310,70) size 4x17
+          text run at (310,70) width 4: " "
+        RenderMathMLMath {math} at (314,0) size 71x144 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 69x144
+            RenderMathMLOperator {mo} at (1,0) size 10x144 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (12,76) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderBlock {mtext} at (21,3) size 48x120
+              RenderBlock {div} at (0,0) size 48x120 [bgcolor=#00FF00]
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,405) size 784x48
+        RenderText {#text} at (0,14) size 38x17
+          text run at (0,14) width 38: "40px: "
+        RenderMathMLMath {math} at (38,0) size 165x48 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 163x48
+            RenderMathMLOperator {mo} at (1,0) size 0x48 [bgcolor=#C8C8C8]
+            RenderBlock {mi} at (2,20) size 9x9
+              RenderText {#text} at (0,-6) size 8x17
+                text run at (0,-6) width 8: "x"
+            RenderMathMLOperator {mo} at (14,26) size 4x4 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 4x4
+                RenderBlock (anonymous) at (0,0) size 4x4
+                  RenderText {mo} at (0,-12) size 4x17
+                    text run at (0,-12) width 4: ","
+            RenderBlock {mtext} at (21,1) size 40x40
+              RenderBlock {div} at (0,0) size 40x40 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (64,26) size 4x4 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 4x4
+                RenderBlock (anonymous) at (0,0) size 4x4
+                  RenderText {mo} at (0,-12) size 4x17
+                    text run at (0,-12) width 4: ","
+            RenderBlock {mtext} at (71,1) size 40x40
+              RenderBlock {div} at (0,0) size 40x40 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (114,26) size 4x4 [bgcolor=#C8C8C8]
+              RenderMathMLBlock (flex) {mo} at (0,0) size 4x4
+                RenderBlock (anonymous) at (0,0) size 4x4
+                  RenderText {mo} at (0,-12) size 4x17
+                    text run at (0,-12) width 4: ","
+            RenderBlock {mtext} at (121,1) size 40x40
+              RenderBlock {div} at (0,0) size 40x40 [bgcolor=#00FF00]
+            RenderMathMLOperator {mo} at (162,0) size 0x48 [bgcolor=#C8C8C8]
+        RenderText {#text} at (0,0) size 0x0
+layer at (252,134) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,0) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+      RenderText {mo} at (0,-1) size 10x17
+        text run at (0,-1) width 10: "\x{2320}"
+layer at (252,152) size 10x2 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,18) size 10x2
+    RenderBlock (anonymous) at (0,0) size 0x2
+layer at (252,154) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,20) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+layer at (316,188) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,0) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+      RenderText {mo} at (0,-1) size 10x17
+        text run at (0,-1) width 10: "\x{2320}"
+layer at (316,206) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,18) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (316,216) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,28) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (316,226) size 10x1 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,38) size 10x1
+    RenderBlock (anonymous) at (0,0) size 0x1
+layer at (316,227) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,39) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+layer at (324,261) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,0) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+      RenderText {mo} at (0,-1) size 10x17
+        text run at (0,-1) width 10: "\x{2320}"
+layer at (324,279) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,18) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (324,289) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,28) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (324,299) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,38) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (324,309) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,48) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (324,319) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,58) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (324,329) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,68) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (324,339) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,78) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (324,349) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,88) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (324,359) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,98) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (324,369) size 10x10 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,108) size 10x10
+    RenderBlock (anonymous) at (0,0) size 0x10
+layer at (324,379) size 10x8 scrollHeight 12
+  RenderMathMLBlock (flex) {mo} at (0,118) size 10x8
+    RenderBlock (anonymous) at (0,0) size 0x8
+layer at (324,387) size 10x18
+  RenderMathMLBlock (flex) {mo} at (0,126) size 10x18
+    RenderBlock (anonymous) at (0,0) size 10x18
+layer at (252,151) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (252,153) size 10x18 backgroundClip at (252,154) size 10x18 clip at (252,154) size 10x18 outlineClip at (252,154) size 10x18
+  RenderBlock (relative positioned) {mo} at (0,0) size 10x18
+    RenderText {mo} at (0,-1) size 10x17
+      text run at (0,-1) width 10: "\x{2321}"
+layer at (316,205) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (316,215) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (316,225) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (316,226) size 10x18 backgroundClip at (316,227) size 10x18 clip at (316,227) size 10x18 outlineClip at (316,227) size 10x18
+  RenderBlock (relative positioned) {mo} at (0,0) size 10x18
+    RenderText {mo} at (0,-1) size 10x17
+      text run at (0,-1) width 10: "\x{2321}"
+layer at (324,278) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,288) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,298) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,308) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,318) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,328) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,338) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,348) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,358) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,368) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,378) size 0x12
+  RenderBlock (relative positioned) {mo} at (0,0) size 0x12
+    RenderText {mo} at (0,-3) size 0x17
+      text run at (0,-3) width 0: "\x{23AE}"
+layer at (324,386) size 10x18 backgroundClip at (324,387) size 10x18 clip at (324,387) size 10x18 outlineClip at (324,387) size 10x18
+  RenderBlock (relative positioned) {mo} at (0,0) size 10x18
+    RenderText {mo} at (0,-1) size 10x17
+      text run at (0,-1) width 10: "\x{2321}"
diff --git a/LayoutTests/platform/qt/mathml/presentation/style-expected.png b/LayoutTests/platform/qt/mathml/presentation/style-expected.png
new file mode 100644 (file)
index 0000000..64d1cb8
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/style-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/style-expected.txt b/LayoutTests/platform/qt/mathml/presentation/style-expected.txt
new file mode 100644 (file)
index 0000000..34005e2
--- /dev/null
@@ -0,0 +1,30 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x101
+  RenderBlock {html} at (0,0) size 800x101
+    RenderBody {body} at (8,16) size 784x69
+      RenderBlock {p} at (0,0) size 784x22
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,38) size 784x31
+        RenderText {#text} at (0,4) size 322x17
+          text run at (0,4) width 322: "Square root, green on yellow, padded and bordered: "
+layer at (8,19) size 34x19
+  RenderMathMLMath {math} at (0,3) size 34x19 [padding: 0 1 0 1]
+    RenderBlock {mi} at (1,3) size 9x9
+      RenderText {#text} at (0,-6) size 8x17
+        text run at (0,-6) width 8: "x"
+    RenderMathMLOperator {mo} at (13,1) size 9x11
+      RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+        RenderBlock (anonymous) at (0,0) size 9x11
+          RenderText {mo} at (0,-4) size 9x17
+            text run at (0,-4) width 9: "+"
+    RenderBlock {mn} at (25,0) size 8x12
+      RenderText {#text} at (0,-3) size 8x17
+        text run at (0,-3) width 8: "1"
+layer at (330,54) size 46x31
+  RenderMathMLMath {math} at (322,0) size 46x31 [padding: 0 1 0 1]
+    RenderMathMLSquareRoot {msqrt} at (1,0) size 44x31 [color=#008000] [bgcolor=#FFFF00] [border: (1px solid #008000) (2px solid #008000) (3px solid #008000) (4px solid #008000)] [intrinsic + CSS padding: 6 6 9 24]
+      RenderMathMLRow (anonymous) at (28,7) size 8x12
+        RenderBlock {mn} at (0,0) size 8x12
+          RenderText {#text} at (0,-3) size 8x17
+            text run at (0,-3) width 8: "2"
diff --git a/LayoutTests/platform/qt/mathml/presentation/sub-expected.png b/LayoutTests/platform/qt/mathml/presentation/sub-expected.png
new file mode 100644 (file)
index 0000000..72ec358
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/sub-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/sub-expected.txt b/LayoutTests/platform/qt/mathml/presentation/sub-expected.txt
new file mode 100644 (file)
index 0000000..04ff569
--- /dev/null
@@ -0,0 +1,51 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x125
+  RenderBlock {html} at (0,0) size 800x125
+    RenderBody {body} at (8,16) size 784x93
+      RenderBlock {p} at (0,0) size 784x21
+        RenderText {#text} at (0,0) size 26x17
+          text run at (0,0) width 26: "text "
+        RenderMathMLMath {math} at (26,6) size 16x15 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msub} at (1,0) size 14x15
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+              RenderBlock {mi} at (0,0) size 8x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (8,5) size 6x10
+              RenderBlock {mn} at (0,0) size 6x10
+                RenderText {#text} at (0,-2) size 6x14
+                  text run at (0,-2) width 6: "1"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,37) size 784x19
+        RenderText {#text} at (0,0) size 26x17
+          text run at (0,0) width 26: "text "
+        RenderMathMLMath {math} at (26,4) size 17x15 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msub} at (1,0) size 15x15
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 9x15 [padding: 0 0 4 0]
+              RenderMathMLOperator {mo} at (0,0) size 9x11
+                RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+                  RenderBlock (anonymous) at (0,0) size 9x11
+                    RenderText {mo} at (0,-4) size 9x17
+                      text run at (0,-4) width 9: "+"
+            RenderMathMLBlock (anonymous, flex) at (9,8) size 6x7
+              RenderBlock {mi} at (0,0) size 6x7
+                RenderText {#text} at (0,-5) size 5x14
+                  text run at (0,-5) width 5: "x"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,72) size 784x21
+        RenderText {#text} at (0,0) size 26x17
+          text run at (0,0) width 26: "text "
+        RenderMathMLMath {math} at (26,0) size 13x21 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msub} at (1,0) size 11x21
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 4x21 [padding: 0 0 3 0]
+              RenderMathMLOperator {mo} at (0,0) size 4x18
+                RenderMathMLBlock (flex) {mo} at (0,0) size 4x18
+                  RenderBlock (anonymous) at (0,0) size 4x18
+                    RenderText {mo} at (0,-3) size 4x21
+                      text run at (0,-3) width 4: "\x{222B}"
+            RenderMathMLBlock (anonymous, flex) at (4,11) size 7x10
+              RenderBlock {mi} at (0,0) size 7x10
+                RenderText {#text} at (0,-2) size 6x14
+                  text run at (0,-2) width 6: "Y"
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/presentation/subsup-expected.png b/LayoutTests/platform/qt/mathml/presentation/subsup-expected.png
new file mode 100644 (file)
index 0000000..940981d
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/subsup-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/subsup-expected.txt b/LayoutTests/platform/qt/mathml/presentation/subsup-expected.txt
new file mode 100644 (file)
index 0000000..ad469a5
--- /dev/null
@@ -0,0 +1,243 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x315
+  RenderBlock {html} at (0,0) size 800x315
+    RenderBody {body} at (8,16) size 784x283
+      RenderBlock {p} at (0,0) size 784x22
+        RenderText {#text} at (0,1) size 34x17
+          text run at (0,1) width 34: "both: "
+        RenderMathMLMath {math} at (34,0) size 18x22 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msubsup} at (1,0) size 16x22
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 8x22 [padding: 7 0 6 0]
+              RenderBlock {mi} at (0,7) size 8x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (8,0) size 8x22
+              RenderBlock {mn} at (0,12) size 8x10
+                RenderText {#text} at (0,-2) size 6x14
+                  text run at (0,-2) width 6: "1"
+              RenderBlock {mi} at (1,0) size 7x10
+                RenderText {#text} at (0,-2) size 6x14
+                  text run at (0,-2) width 6: "k"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,38) size 784x23
+        RenderText {#text} at (0,1) size 140x17
+          text run at (0,1) width 140: "long subscript w/ both: "
+        RenderMathMLMath {math} at (140,0) size 51x23 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msubsup} at (1,0) size 49x23
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 9x23 [padding: 4 0 7 0]
+              RenderBlock {mi} at (0,4) size 9x12
+                RenderText {#text} at (0,-3) size 9x17
+                  text run at (0,-3) width 9: "Z"
+            RenderMathMLBlock (anonymous, flex) at (9,0) size 40x23
+              RenderMathMLRow {mrow} at (0,12) size 40x11
+                RenderBlock {mi} at (0,2) size 6x7
+                  RenderText {#text} at (0,-5) size 5x14
+                    text run at (0,-5) width 5: "x"
+                RenderMathMLOperator {mo} at (8,0) size 7x9
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+                    RenderBlock (anonymous) at (0,0) size 7x9
+                      RenderText {mo} at (0,-3) size 7x14
+                        text run at (0,-3) width 7: "+"
+                RenderBlock {mi} at (17,2) size 6x9
+                  RenderText {#text} at (0,-5) size 5x14
+                    text run at (0,-5) width 5: "y"
+                RenderMathMLOperator {mo} at (25,0) size 7x9
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+                    RenderBlock (anonymous) at (0,0) size 7x9
+                      RenderText {mo} at (0,-3) size 7x14
+                        text run at (0,-3) width 7: "+"
+                RenderBlock {mi} at (34,2) size 6x7
+                  RenderText {#text} at (0,-5) size 5x14
+                    text run at (0,-5) width 5: "z"
+              RenderBlock {mi} at (1,0) size 39x12
+                RenderText {#text} at (0,-2) size 3x14
+                  text run at (0,-2) width 3: "j"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,77) size 784x20
+        RenderText {#text} at (0,1) size 152x17
+          text run at (0,1) width 152: "long superscript w/ both: "
+        RenderMathMLMath {math} at (152,0) size 34x20 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msubsup} at (1,0) size 32x20
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 9x20 [padding: 4 0 4 0]
+              RenderBlock {mi} at (0,4) size 9x12
+                RenderText {#text} at (0,-3) size 9x17
+                  text run at (0,-3) width 9: "Z"
+            RenderMathMLBlock (anonymous, flex) at (9,0) size 23x20
+              RenderBlock {mi} at (0,13) size 23x7
+                RenderText {#text} at (0,-5) size 5x14
+                  text run at (0,-5) width 5: "x"
+              RenderMathMLRow {mrow} at (1,0) size 22x12
+                RenderBlock {mi} at (0,0) size 7x10
+                  RenderText {#text} at (0,-2) size 6x14
+                    text run at (0,-2) width 6: "k"
+                RenderMathMLOperator {mo} at (9,1) size 7x9
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+                    RenderBlock (anonymous) at (0,0) size 7x9
+                      RenderText {mo} at (0,-3) size 7x14
+                        text run at (0,-3) width 7: "+"
+                RenderBlock {mi} at (18,0) size 4x12
+                  RenderText {#text} at (0,-2) size 3x14
+                    text run at (0,-2) width 3: "j"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,113) size 784x23
+        RenderText {#text} at (0,1) size 82x17
+          text run at (0,1) width 82: "long w/ both: "
+        RenderMathMLMath {math} at (82,0) size 51x23 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msubsup} at (1,0) size 49x23
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 9x23 [padding: 4 0 7 0]
+              RenderBlock {mi} at (0,4) size 9x12
+                RenderText {#text} at (0,-3) size 9x17
+                  text run at (0,-3) width 9: "Z"
+            RenderMathMLBlock (anonymous, flex) at (9,0) size 40x23
+              RenderMathMLRow {mrow} at (0,12) size 40x11
+                RenderBlock {mi} at (0,2) size 6x7
+                  RenderText {#text} at (0,-5) size 5x14
+                    text run at (0,-5) width 5: "x"
+                RenderMathMLOperator {mo} at (8,0) size 7x9
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+                    RenderBlock (anonymous) at (0,0) size 7x9
+                      RenderText {mo} at (0,-3) size 7x14
+                        text run at (0,-3) width 7: "+"
+                RenderBlock {mi} at (17,2) size 6x9
+                  RenderText {#text} at (0,-5) size 5x14
+                    text run at (0,-5) width 5: "y"
+                RenderMathMLOperator {mo} at (25,0) size 7x9
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+                    RenderBlock (anonymous) at (0,0) size 7x9
+                      RenderText {mo} at (0,-3) size 7x14
+                        text run at (0,-3) width 7: "+"
+                RenderBlock {mi} at (34,2) size 6x7
+                  RenderText {#text} at (0,-5) size 5x14
+                    text run at (0,-5) width 5: "z"
+              RenderMathMLRow {mrow} at (1,0) size 39x12
+                RenderBlock {mi} at (0,0) size 7x10
+                  RenderText {#text} at (0,-2) size 6x14
+                    text run at (0,-2) width 6: "k"
+                RenderMathMLOperator {mo} at (9,1) size 7x9
+                  RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+                    RenderBlock (anonymous) at (0,0) size 7x9
+                      RenderText {mo} at (0,-3) size 7x14
+                        text run at (0,-3) width 7: "+"
+                RenderBlock {mi} at (18,0) size 4x12
+                  RenderText {#text} at (0,-2) size 3x14
+                    text run at (0,-2) width 3: "j"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,152) size 784x22
+        RenderText {#text} at (0,1) size 118x17
+          text run at (0,1) width 118: "Wrapped in mrow: "
+        RenderMathMLMath {math} at (118,0) size 18x22 [padding: 0 1 0 1]
+          RenderMathMLRow {mrow} at (1,0) size 16x22
+            RenderMathMLSubSup {msubsup} at (0,0) size 16x22
+              RenderMathMLBlock (anonymous, flex) at (0,0) size 8x22 [padding: 7 0 6 0]
+                RenderBlock {mi} at (0,7) size 8x9
+                  RenderText {#text} at (0,-6) size 8x17
+                    text run at (0,-6) width 8: "x"
+              RenderMathMLBlock (anonymous, flex) at (8,0) size 8x22
+                RenderBlock {mn} at (0,12) size 8x10
+                  RenderText {#text} at (0,-2) size 6x14
+                    text run at (0,-2) width 6: "1"
+                RenderBlock {mi} at (1,0) size 7x10
+                  RenderText {#text} at (0,-2) size 6x14
+                    text run at (0,-2) width 6: "k"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,190) size 784x52
+        RenderText {#text} at (0,15) size 158x17
+          text run at (0,15) width 158: "parts with various heights: "
+        RenderMathMLMath {math} at (158,0) size 88x52 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msubsup} at (1,0) size 17x34
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 8x34 [padding: 21 0 4 0]
+              RenderBlock {mi} at (0,21) size 8x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (8,0) size 9x34
+              RenderBlock {mi} at (0,27) size 9x7
+                RenderText {#text} at (0,-5) size 6x14
+                  text run at (0,-5) width 6: "n"
+              RenderMathMLFraction {mfrac} at (1,0) size 7x26
+                RenderMathMLBlock (anonymous, flex) at (0,0) size 7x14
+                  RenderBlock {mi} at (1,0) size 4x12
+                    RenderText {#text} at (0,-2) size 3x14
+                      text run at (0,-2) width 3: "f"
+                RenderMathMLBlock (anonymous, flex) at (0,14) size 7x12 [padding: 1 0 0 0]
+                  RenderBlock {mi} at (0,3) size 7x9
+                    RenderText {#text} at (0,-5) size 6x14
+                      text run at (0,-5) width 6: "g"
+          RenderMathMLOperator {mo} at (21,19) size 9x11
+            RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+              RenderBlock (anonymous) at (0,0) size 9x11
+                RenderText {mo} at (0,-4) size 9x17
+                  text run at (0,-4) width 9: "+"
+          RenderMathMLSubSup {msubsup} at (33,17) size 17x35
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 8x35 [padding: 4 0 22 0]
+              RenderBlock {mi} at (0,4) size 8x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (8,0) size 9x35
+              RenderMathMLFraction {mfrac} at (1,9) size 7x26
+                RenderMathMLBlock (anonymous, flex) at (0,0) size 7x14
+                  RenderBlock {mi} at (1,0) size 4x12
+                    RenderText {#text} at (0,-2) size 3x14
+                      text run at (0,-2) width 3: "f"
+                RenderMathMLBlock (anonymous, flex) at (0,14) size 7x12 [padding: 1 0 0 0]
+                  RenderBlock {mi} at (0,3) size 7x9
+                    RenderText {#text} at (0,-5) size 6x14
+                      text run at (0,-5) width 6: "g"
+              RenderBlock {mi} at (1,0) size 8x7
+                RenderText {#text} at (0,-5) size 6x14
+                  text run at (0,-5) width 6: "n"
+          RenderMathMLOperator {mo} at (53,19) size 9x11
+            RenderMathMLBlock (flex) {mo} at (0,0) size 9x11
+              RenderBlock (anonymous) at (0,0) size 9x11
+                RenderText {mo} at (0,-4) size 9x17
+                  text run at (0,-4) width 9: "+"
+          RenderMathMLSubSup {msubsup} at (65,7) size 22x38
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 15x38
+              RenderMathMLFenced {mfenced} at (0,0) size 15x38
+                RenderMathMLOperator {mfenced} at (1,0) size 0x38
+                RenderMathMLFraction {mfrac} at (3,1) size 9x32
+                  RenderMathMLBlock (anonymous, flex) at (0,0) size 9x17
+                    RenderBlock {mi} at (1,0) size 6x14
+                      RenderText {#text} at (0,-3) size 5x17
+                        text run at (0,-3) width 5: "f"
+                  RenderMathMLBlock (anonymous, flex) at (0,17) size 9x15 [padding: 1 0 0 0]
+                    RenderBlock {mi} at (0,4) size 9x11
+                      RenderText {#text} at (0,-6) size 8x17
+                        text run at (0,-6) width 8: "g"
+                RenderMathMLOperator {mfenced} at (14,0) size 0x38
+            RenderMathMLBlock (anonymous, flex) at (15,0) size 7x38
+              RenderBlock {mi} at (0,31) size 7x7
+                RenderText {#text} at (0,-5) size 6x14
+                  text run at (0,-5) width 6: "n"
+              RenderBlock {mi} at (0,0) size 7x7
+                RenderText {#text} at (0,-5) size 5x14
+                  text run at (0,-5) width 5: "x"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,258) size 784x25
+        RenderText {#text} at (0,7) size 26x17
+          text run at (0,7) width 26: "For "
+        RenderInline {a} at (0,0) size 68x17 [color=#0000EE]
+          RenderText {#text} at (26,7) size 68x17
+            text run at (26,7) width 68: "Bug 95015"
+        RenderText {#text} at (94,7) size 407x17
+          text run at (94,7) width 407: " - Remove { vertical-align: baseline } declarations from mathml.css: "
+        RenderMathMLMath {math} at (501,0) size 22x22 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msup} at (1,0) size 20x22
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 9x22 [padding: 13 0 0 0]
+              RenderBlock {mi} at (0,13) size 9x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (9,0) size 11x18
+              RenderMathMLSubSup {msubsup} at (0,0) size 11x18
+                RenderMathMLBlock (anonymous, flex) at (0,0) size 5x18 [padding: 6 0 3 0]
+                  RenderBlock {mi} at (0,6) size 5x9
+                    RenderText {#text} at (0,-5) size 5x14
+                      text run at (0,-5) width 5: "y"
+                RenderMathMLBlock (anonymous, flex) at (5,0) size 6x18
+                  RenderBlock {mn} at (0,10) size 6x8
+                    RenderText {#text} at (0,-1) size 5x10
+                      text run at (0,-1) width 5: "1"
+                  RenderBlock {mn} at (1,0) size 5x8
+                    RenderText {#text} at (0,-1) size 5x10
+                      text run at (0,-1) width 5: "2"
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/presentation/sup-expected.png b/LayoutTests/platform/qt/mathml/presentation/sup-expected.png
new file mode 100644 (file)
index 0000000..7773a08
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/sup-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/sup-expected.txt b/LayoutTests/platform/qt/mathml/presentation/sup-expected.txt
new file mode 100644 (file)
index 0000000..a7892bc
--- /dev/null
@@ -0,0 +1,40 @@
+layer at (0,0) size 823x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x103
+  RenderBlock {html} at (0,0) size 800x103
+    RenderBody {body} at (8,16) size 784x71
+      RenderBlock {p} at (0,0) size 784x19
+        RenderText {#text} at (0,1) size 73x17
+          text run at (0,1) width 73: "superscript: "
+        RenderMathMLMath {math} at (73,0) size 17x16 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msup} at (1,0) size 15x16
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 9x16 [padding: 7 0 0 0]
+              RenderBlock {mi} at (0,7) size 9x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (9,0) size 6x10
+              RenderBlock {mn} at (0,0) size 6x10
+                RenderText {#text} at (0,-2) size 6x14
+                  text run at (0,-2) width 6: "2"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,35) size 784x36
+        RenderText {#text} at (0,0) size 26x17
+          text run at (0,0) width 26: "For "
+        RenderInline {a} at (0,0) size 68x17 [color=#0000EE]
+          RenderText {#text} at (26,0) size 68x17
+            text run at (26,0) width 68: "Bug 95404"
+        RenderText {#text} at (94,0) size 381x17
+          text run at (94,0) width 14: " - "
+          text run at (108,0) width 367: "mathml.css: Add more { white-space: nowrap } declarations:"
+        RenderBR {br} at (475,0) size 0x17
+        RenderMathMLMath {math} at (0,20) size 815x13 [padding: 0 1 0 1]
+          RenderMathMLSubSup {msup} at (1,0) size 813x13
+            RenderMathMLBlock (anonymous, flex) at (0,0) size 408x13 [padding: 4 0 0 0]
+              RenderBlock {mi} at (0,4) size 408x9
+                RenderText {#text} at (0,-6) size 8x17
+                  text run at (0,-6) width 8: "x"
+            RenderMathMLBlock (anonymous, flex) at (408,0) size 405x9
+              RenderBlock {mi} at (0,0) size 405x9
+                RenderText {#text} at (0,-5) size 5x14
+                  text run at (0,-5) width 5: "y"
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/presentation/tables-expected.png b/LayoutTests/platform/qt/mathml/presentation/tables-expected.png
new file mode 100644 (file)
index 0000000..5d8c48c
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/tables-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/tables-expected.txt b/LayoutTests/platform/qt/mathml/presentation/tables-expected.txt
new file mode 100644 (file)
index 0000000..b726ea5
--- /dev/null
@@ -0,0 +1,341 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x180
+  RenderBlock {html} at (0,0) size 800x180
+    RenderBody {body} at (8,16) size 784x148
+      RenderBlock {p} at (0,0) size 784x66
+        RenderText {#text} at (0,22) size 45x17
+          text run at (0,22) width 45: "simple: "
+        RenderMathMLMath {math} at (45,0) size 80x66 [padding: 0 1 0 1]
+          RenderMathMLTable {mtable} at (1,0) size 78x66
+            RenderTableSection (anonymous) at (0,0) size 78x66
+              RenderTableRow {mtr} at (0,0) size 78x21
+                RenderTableCell {mtd} at (0,0) size 26x21 [r=0 c=0 rs=2 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "11"
+                RenderTableCell {mtd} at (26,0) size 26x21 [r=0 c=1 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "12"
+                RenderTableCell {mtd} at (52,0) size 26x21 [r=0 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "13"
+              RenderTableRow {mtr} at (0,21) size 78x24
+                RenderTableCell {mtd} at (26,21) size 26x24 [r=1 c=1 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x18
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "b"
+                    RenderMathMLBlock (anonymous, flex) at (8,8) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "22"
+                RenderTableCell {mtd} at (52,21) size 26x24 [r=1 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x18
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "b"
+                    RenderMathMLBlock (anonymous, flex) at (8,8) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "23"
+              RenderTableRow {mtr} at (0,45) size 78x21
+                RenderTableCell {mtd} at (0,45) size 78x21 [r=2 c=0 rs=1 cs=3]
+                  RenderMathMLSubSup {msub} at (30,3) size 19x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 7x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                    RenderMathMLBlock (anonymous, flex) at (7,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "31"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,82) size 784x66
+        RenderText {#text} at (0,22) size 287x17
+          text run at (0,22) width 287: "left, default (center) and right column alignment: "
+        RenderMathMLMath {math} at (287,0) size 242x66 [padding: 0 1 0 1]
+          RenderMathMLTable {mtable} at (1,0) size 78x66
+            RenderTableSection (anonymous) at (0,0) size 78x66
+              RenderTableRow {mtr} at (0,0) size 78x21
+                RenderTableCell {mtd} at (0,0) size 26x21 [r=0 c=0 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 14x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 6x10
+                      RenderBlock {mn} at (0,0) size 6x10
+                        RenderText {#text} at (0,-2) size 6x14
+                          text run at (0,-2) width 6: "1"
+                RenderTableCell {mtd} at (26,0) size 26x21 [r=0 c=1 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "12"
+                RenderTableCell {mtd} at (52,0) size 26x21 [r=0 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "13"
+              RenderTableRow {mtr} at (0,21) size 78x24
+                RenderTableCell {mtd} at (0,21) size 26x24 [r=1 c=0 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x18
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "b"
+                    RenderMathMLBlock (anonymous, flex) at (8,8) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "21"
+                RenderTableCell {mtd} at (26,21) size 26x24 [r=1 c=1 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 14x18
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "b"
+                    RenderMathMLBlock (anonymous, flex) at (8,8) size 6x10
+                      RenderBlock {mn} at (0,0) size 6x10
+                        RenderText {#text} at (0,-2) size 6x14
+                          text run at (0,-2) width 6: "2"
+                RenderTableCell {mtd} at (52,21) size 26x24 [r=1 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x18
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "b"
+                    RenderMathMLBlock (anonymous, flex) at (8,8) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "23"
+              RenderTableRow {mtr} at (0,45) size 78x21
+                RenderTableCell {mtd} at (0,45) size 26x21 [r=2 c=0 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 19x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 7x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                    RenderMathMLBlock (anonymous, flex) at (7,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "31"
+                RenderTableCell {mtd} at (26,45) size 26x21 [r=2 c=1 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 19x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 7x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                    RenderMathMLBlock (anonymous, flex) at (7,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "32"
+                RenderTableCell {mtd} at (52,45) size 26x21 [r=2 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 13x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 7x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                    RenderMathMLBlock (anonymous, flex) at (7,5) size 6x10
+                      RenderBlock {mn} at (0,0) size 6x10
+                        RenderText {#text} at (0,-2) size 6x14
+                          text run at (0,-2) width 6: "3"
+          RenderBlock {mtext} at (79,35) size 4x4
+            RenderText {#text} at (0,-13) size 4x17
+              text run at (0,-13) width 4: ","
+          RenderMathMLTable {mtable} at (83,0) size 78x66
+            RenderTableSection (anonymous) at (0,0) size 78x66
+              RenderTableRow {mtr} at (0,0) size 78x21
+                RenderTableCell {mtd} at (0,0) size 26x21 [r=0 c=0 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (6,3) size 14x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 6x10
+                      RenderBlock {mn} at (0,0) size 6x10
+                        RenderText {#text} at (0,-2) size 6x14
+                          text run at (0,-2) width 6: "1"
+                RenderTableCell {mtd} at (26,0) size 26x21 [r=0 c=1 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "12"
+                RenderTableCell {mtd} at (52,0) size 26x21 [r=0 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "13"
+              RenderTableRow {mtr} at (0,21) size 78x24
+                RenderTableCell {mtd} at (0,21) size 26x24 [r=1 c=0 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x18
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "b"
+                    RenderMathMLBlock (anonymous, flex) at (8,8) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "21"
+                RenderTableCell {mtd} at (26,21) size 26x24 [r=1 c=1 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (6,3) size 14x18
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "b"
+                    RenderMathMLBlock (anonymous, flex) at (8,8) size 6x10
+                      RenderBlock {mn} at (0,0) size 6x10
+                        RenderText {#text} at (0,-2) size 6x14
+                          text run at (0,-2) width 6: "2"
+                RenderTableCell {mtd} at (52,21) size 26x24 [r=1 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x18
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "b"
+                    RenderMathMLBlock (anonymous, flex) at (8,8) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "23"
+              RenderTableRow {mtr} at (0,45) size 78x21
+                RenderTableCell {mtd} at (0,45) size 26x21 [r=2 c=0 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (4,3) size 19x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 7x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                    RenderMathMLBlock (anonymous, flex) at (7,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "31"
+                RenderTableCell {mtd} at (26,45) size 26x21 [r=2 c=1 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (4,3) size 19x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 7x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                    RenderMathMLBlock (anonymous, flex) at (7,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "32"
+                RenderTableCell {mtd} at (52,45) size 26x21 [r=2 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (7,3) size 13x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 7x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                    RenderMathMLBlock (anonymous, flex) at (7,5) size 6x10
+                      RenderBlock {mn} at (0,0) size 6x10
+                        RenderText {#text} at (0,-2) size 6x14
+                          text run at (0,-2) width 6: "3"
+          RenderBlock {mtext} at (161,35) size 4x4
+            RenderText {#text} at (0,-13) size 4x17
+              text run at (0,-13) width 4: ","
+          RenderMathMLTable {mtable} at (165,0) size 76x66
+            RenderTableSection (anonymous) at (0,0) size 76x66
+              RenderTableRow {mtr} at (0,0) size 76x21
+                RenderTableCell {mtd} at (0,0) size 50x21 [r=0 c=0 rs=2 cs=2]
+                  RenderMathMLSubSup {msub} at (33,3) size 14x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 6x10
+                      RenderBlock {mn} at (0,0) size 6x10
+                        RenderText {#text} at (0,-2) size 6x14
+                          text run at (0,-2) width 6: "1"
+                RenderTableCell {mtd} at (50,0) size 26x21 [r=0 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x9
+                        RenderText {#text} at (0,-6) size 8x17
+                          text run at (0,-6) width 8: "a"
+                    RenderMathMLBlock (anonymous, flex) at (8,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "13"
+              RenderTableRow {mtr} at (0,21) size 76x24
+                RenderTableCell {mtd} at (50,21) size 26x24 [r=1 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 20x18
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 8x18 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 8x12
+                        RenderText {#text} at (0,-3) size 8x17
+                          text run at (0,-3) width 8: "b"
+                    RenderMathMLBlock (anonymous, flex) at (8,8) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "23"
+              RenderTableRow {mtr} at (0,45) size 76x21
+                RenderTableCell {mtd} at (0,45) size 25x21 [r=2 c=0 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 19x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 7x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                    RenderMathMLBlock (anonymous, flex) at (7,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "31"
+                RenderTableCell {mtd} at (25,45) size 25x21 [r=2 c=1 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (3,3) size 19x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 7x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                    RenderMathMLBlock (anonymous, flex) at (7,5) size 12x10
+                      RenderBlock {mn} at (0,0) size 12x10
+                        RenderText {#text} at (0,-2) size 12x14
+                          text run at (0,-2) width 12: "32"
+                RenderTableCell {mtd} at (50,45) size 26x21 [r=2 c=2 rs=1 cs=1]
+                  RenderMathMLSubSup {msub} at (10,3) size 13x15
+                    RenderMathMLBlock (anonymous, flex) at (0,0) size 7x15 [padding: 0 0 6 0]
+                      RenderBlock {mi} at (0,0) size 7x9
+                        RenderText {#text} at (0,-6) size 7x17
+                          text run at (0,-6) width 7: "c"
+                    RenderMathMLBlock (anonymous, flex) at (7,5) size 6x10
+                      RenderBlock {mn} at (0,0) size 6x10
+                        RenderText {#text} at (0,-2) size 6x14
+                          text run at (0,-2) width 6: "3"
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/presentation/tokenElements-expected.png b/LayoutTests/platform/qt/mathml/presentation/tokenElements-expected.png
new file mode 100644 (file)
index 0000000..6b5d658
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/tokenElements-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/tokenElements-expected.txt b/LayoutTests/platform/qt/mathml/presentation/tokenElements-expected.txt
new file mode 100644 (file)
index 0000000..9861c29
--- /dev/null
@@ -0,0 +1,32 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x84
+  RenderBlock {html} at (0,0) size 800x84
+    RenderBody {body} at (8,16) size 784x52
+      RenderBlock {p} at (0,0) size 784x18
+        RenderText {#text} at (0,0) size 272x17
+          text run at (0,0) width 272: "Following elements should use a regular font: "
+        RenderMathMLMath {math} at (272,2) size 61x13 [padding: 0 1 0 1]
+          RenderBlock {mn} at (1,1) size 8x12
+            RenderText {#text} at (0,-3) size 8x17
+              text run at (0,-3) width 8: "1"
+          RenderMathMLOperator {mo} at (12,0) size 11x13
+            RenderMathMLBlock (flex) {mo} at (0,0) size 11x13
+              RenderBlock (anonymous) at (0,0) size 11x13
+                RenderText {mo} at (0,-2) size 11x17
+                  text run at (0,-2) width 11: "\x{2207}"
+          RenderBlock {mtext} at (26,2) size 22x11
+            RenderText {#text} at (0,-4) size 22x17
+              text run at (0,-4) width 22: "text"
+          RenderBlock {ms} at (48,1) size 12x12
+            RenderText {#text} at (0,-3) size 12x17
+              text run at (0,-3) width 12: "&"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,34) size 784x18
+        RenderText {#text} at (0,0) size 223x17
+          text run at (0,0) width 223: "Following element should be in italic: "
+        RenderMathMLMath {math} at (223,6) size 11x9 [padding: 0 1 0 1]
+          RenderBlock {mi} at (1,0) size 9x9
+            RenderText {#text} at (0,-6) size 8x17
+              text run at (0,-6) width 8: "x"
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/presentation/under-expected.png b/LayoutTests/platform/qt/mathml/presentation/under-expected.png
new file mode 100644 (file)
index 0000000..57ace91
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/under-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/under-expected.txt b/LayoutTests/platform/qt/mathml/presentation/under-expected.txt
new file mode 100644 (file)
index 0000000..62722ec
--- /dev/null
@@ -0,0 +1,29 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x95
+  RenderBlock {html} at (0,0) size 800x95
+    RenderBody {body} at (8,16) size 784x63
+      RenderBlock {p} at (0,0) size 784x22
+        RenderText {#text} at (0,0) size 41x17
+          text run at (0,0) width 41: "under: "
+        RenderMathMLMath {math} at (41,3) size 12x19 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {munder} at (1,0) size 10x19
+            RenderBlock {mi} at (0,0) size 10x12
+              RenderText {#text} at (0,-3) size 9x17
+                text run at (0,-3) width 9: "B"
+            RenderBlock {mi} at (2,12) size 6x7
+              RenderText {#text} at (0,-5) size 5x14
+                text run at (0,-5) width 5: "x"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,38) size 784x25
+        RenderText {#text} at (0,0) size 41x17
+          text run at (0,0) width 41: "under: "
+        RenderMathMLMath {math} at (41,3) size 12x22 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {munder} at (1,0) size 10x22
+            RenderBlock {mi} at (0,0) size 10x12
+              RenderText {#text} at (0,-3) size 9x17
+                text run at (0,-3) width 9: "B"
+            RenderBlock {mi} at (1,12) size 8x10
+              RenderText {#text} at (0,-2) size 7x14
+                text run at (0,-2) width 7: "X"
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/presentation/underover-expected.png b/LayoutTests/platform/qt/mathml/presentation/underover-expected.png
new file mode 100644 (file)
index 0000000..b5d4460
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/presentation/underover-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/presentation/underover-expected.txt b/LayoutTests/platform/qt/mathml/presentation/underover-expected.txt
new file mode 100644 (file)
index 0000000..79336f2
--- /dev/null
@@ -0,0 +1,105 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x226
+  RenderBlock {html} at (0,0) size 800x226
+    RenderBody {body} at (8,16) size 784x194
+      RenderBlock {p} at (0,0) size 784x28
+        RenderText {#text} at (0,6) size 88x17
+          text run at (0,6) width 88: "under & over: "
+        RenderMathMLMath {math} at (88,0) size 12x28 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {munderover} at (1,0) size 10x28
+            RenderBlock {mi} at (0,9) size 10x12
+              RenderText {#text} at (0,-3) size 9x17
+                text run at (0,-3) width 9: "B"
+            RenderBlock {mi} at (2,21) size 6x7
+              RenderText {#text} at (0,-5) size 5x14
+                text run at (0,-5) width 5: "x"
+            RenderBlock {mi} at (2,0) size 6x9
+              RenderText {#text} at (0,-5) size 5x14
+                text run at (0,-5) width 5: "y"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,44) size 784x31
+        RenderText {#text} at (0,6) size 88x17
+          text run at (0,6) width 88: "under & over: "
+        RenderMathMLMath {math} at (88,0) size 12x31 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {munderover} at (1,0) size 10x31
+            RenderBlock {mi} at (0,9) size 10x12
+              RenderText {#text} at (0,-3) size 9x17
+                text run at (0,-3) width 9: "B"
+            RenderBlock {mi} at (1,21) size 8x10
+              RenderText {#text} at (0,-2) size 7x14
+                text run at (0,-2) width 7: "X"
+            RenderBlock {mi} at (2,0) size 6x9
+              RenderText {#text} at (0,-5) size 5x14
+                text run at (0,-5) width 5: "y"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,91) size 784x43
+        RenderText {#text} at (0,14) size 88x17
+          text run at (0,14) width 88: "under & over: "
+        RenderMathMLMath {math} at (88,0) size 25x43 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {munderover} at (1,0) size 23x43
+            RenderMathMLOperator {mo} at (3,11) size 17x22
+              RenderMathMLBlock (flex) {mo} at (0,0) size 17x22
+                RenderBlock (anonymous) at (0,0) size 17x22
+                  RenderText {mo} at (0,-5) size 17x27
+                    text run at (0,-5) width 17: "\x{2211}"
+            RenderMathMLRow {mrow} at (0,33) size 22x10
+              RenderBlock {mi} at (0,0) size 4x10
+                RenderText {#text} at (0,-2) size 3x14
+                  text run at (0,-2) width 3: "i"
+              RenderMathMLOperator {mo} at (6,3) size 7x7
+                RenderMathMLBlock (flex) {mo} at (0,0) size 7x7
+                  RenderBlock (anonymous) at (0,0) size 7x7
+                    RenderText {mo} at (0,-5) size 7x14
+                      text run at (0,-5) width 7: "="
+              RenderBlock {mi} at (15,0) size 7x10
+                RenderText {#text} at (0,-2) size 6x14
+                  text run at (0,-2) width 6: "0"
+            RenderMathMLRow {mrow} at (0,0) size 23x11
+              RenderBlock {mi} at (0,2) size 6x7
+                RenderText {#text} at (0,-5) size 5x14
+                  text run at (0,-5) width 5: "x"
+              RenderMathMLOperator {mo} at (8,0) size 7x9
+                RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+                  RenderBlock (anonymous) at (0,0) size 7x9
+                    RenderText {mo} at (0,-3) size 7x14
+                      text run at (0,-3) width 7: "+"
+              RenderBlock {mi} at (17,2) size 6x9
+                RenderText {#text} at (0,-5) size 5x14
+                  text run at (0,-5) width 5: "y"
+        RenderText {#text} at (0,0) size 0x0
+      RenderBlock {p} at (0,150) size 784x44
+        RenderText {#text} at (0,15) size 88x17
+          text run at (0,15) width 88: "under & over: "
+        RenderMathMLMath {math} at (88,0) size 27x44 [padding: 0 1 0 1]
+          RenderMathMLUnderOver {munderover} at (1,0) size 25x44
+            RenderMathMLOperator {mo} at (4,12) size 17x22
+              RenderMathMLBlock (flex) {mo} at (0,0) size 17x22
+                RenderBlock (anonymous) at (0,0) size 17x22
+                  RenderText {mo} at (0,-5) size 17x27
+                    text run at (0,-5) width 17: "\x{2211}"
+            RenderMathMLRow {mrow} at (1,34) size 23x10
+              RenderBlock {mi} at (0,0) size 5x10
+                RenderText {#text} at (0,-2) size 4x14
+                  text run at (0,-2) width 4: "I"
+              RenderMathMLOperator {mo} at (7,3) size 7x7
+                RenderMathMLBlock (flex) {mo} at (0,0) size 7x7
+                  RenderBlock (anonymous) at (0,0) size 7x7
+                    RenderText {mo} at (0,-5) size 7x14
+                      text run at (0,-5) width 7: "="
+              RenderBlock {mi} at (16,0) size 7x10
+                RenderText {#text} at (0,-2) size 6x14
+                  text run at (0,-2) width 6: "0"
+            RenderMathMLRow {mrow} at (0,0) size 25x12
+              RenderBlock {mi} at (0,0) size 8x10
+                RenderText {#text} at (0,-2) size 7x14
+                  text run at (0,-2) width 7: "X"
+              RenderMathMLOperator {mo} at (10,1) size 7x9
+                RenderMathMLBlock (flex) {mo} at (0,0) size 7x9
+                  RenderBlock (anonymous) at (0,0) size 7x9
+                    RenderText {mo} at (0,-3) size 7x14
+                      text run at (0,-3) width 7: "+"
+              RenderBlock {mi} at (19,3) size 6x9
+                RenderText {#text} at (0,-5) size 5x14
+                  text run at (0,-5) width 5: "y"
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/qt/mathml/xHeight-expected.png b/LayoutTests/platform/qt/mathml/xHeight-expected.png
new file mode 100644 (file)
index 0000000..2aa4f7d
Binary files /dev/null and b/LayoutTests/platform/qt/mathml/xHeight-expected.png differ
diff --git a/LayoutTests/platform/qt/mathml/xHeight-expected.txt b/LayoutTests/platform/qt/mathml/xHeight-expected.txt
new file mode 100644 (file)
index 0000000..b1addea
--- /dev/null
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x53
+  RenderBlock {html} at (0,0) size 800x53
+    RenderBody {body} at (8,16) size 784x21
+      RenderBlock {p} at (0,0) size 784x21
+        RenderText {#text} at (0,0) size 286x17
+          text run at (0,0) width 286: "The green square should be vertically centered: "
+        RenderMathMLMath {math} at (286,1) size 31x20 [padding: 0 1 0 1]
+          RenderBlock {mi} at (1,5) size 9x9
+            RenderText {#text} at (0,-6) size 8x17
+              text run at (0,-6) width 8: "x"
+          RenderBlock {mtext} at (10,0) size 20x20
+            RenderBlock {div} at (0,0) size 20x20 [bgcolor=#00FF00]
+            RenderText {#text} at (0,0) size 0x0
+        RenderText {#text} at (0,0) size 0x0
index b7de824..ea3787e 100644 (file)
@@ -1,3 +1,12 @@
+2013-02-19  Allan Sandfeld Jensen  <allan.jensen@digia.com>
+
+        [Qt] Enable MathML
+        https://bugs.webkit.org/show_bug.cgi?id=110205
+
+        Reviewed by Simon Hausmann.
+
+        * qmake/mkspecs/features/features.pri:
+
 2013-02-17  Andrei Bucur  <abucur@adobe.com>
 
         Unreviewed. Adding myself as a committer.
index 0c269ac..bc56e81 100644 (file)
@@ -74,7 +74,7 @@ FEATURE_DEFAULTS = \
     ENABLE_LEGACY_WEB_AUDIO=1 \
     ENABLE_LINK_PREFETCH=0 \
     ENABLE_LINK_PRERENDER=0 \
-    ENABLE_MATHML=0 \
+    ENABLE_MATHML=1 \
     ENABLE_MEDIA_SOURCE=0 \
     ENABLE_MEDIA_STATISTICS=0 \
     ENABLE_MEDIA_STREAM=0 \