2010-10-21  Alex Milowski  <alex@milowski.com>

        Reviewed by Kenneth Rohde Christiansen.

        Updated the tests results with changes from the new row layout algorithm.

        * mathml/presentation/row.xhtml:
           Added an mrow to make the tests more consistent.
        * platform/mac/mathml/presentation/fenced-expected.txt:
        * platform/mac/mathml/presentation/fenced-mi-expected.txt:
        * platform/mac/mathml/presentation/fractions-expected.checksum:
        * platform/mac/mathml/presentation/fractions-expected.png:
        * platform/mac/mathml/presentation/fractions-expected.txt:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.checksum:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.png:
        * platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
        * platform/mac/mathml/presentation/roots-expected.txt:
        * platform/mac/mathml/presentation/row-alignment-expected.checksum:
        * platform/mac/mathml/presentation/row-alignment-expected.png:
        * platform/mac/mathml/presentation/row-alignment-expected.txt:
        * platform/mac/mathml/presentation/row-expected.txt:
        * platform/mac/mathml/presentation/sub-expected.checksum:
        * platform/mac/mathml/presentation/sub-expected.png:
        * platform/mac/mathml/presentation/sub-expected.txt:
        * platform/mac/mathml/presentation/subsup-expected.txt:
        * platform/mac/mathml/presentation/sup-expected.txt:
        * platform/mac/mathml/presentation/tables-expected.txt:
2010-10-21  Alex Milowski  <alex@milowski.com>

        Reviewed by Kenneth Rohde Christiansen.

        Changed the layout algorithm for rows to avoid unnecessary recursion
        into child rows.  This solves the long rendering time experienced in
        https://bugs.webkit.org/show_bug.cgi?id=43462 as well as reports in
        various other bugs.  The change in the algorithm required some
        tweaks to other rendering objects to make sure that the baseline
        alignment still works.

        In addition, an attempt was made to go through the various
        rendering objects for MathML and reduce unnecessary calls that
        mark the tree in need of layout.

        * mathml/RenderMathMLFenced.cpp:
        * mathml/RenderMathMLFenced.h:
        * mathml/RenderMathMLFraction.cpp:
        (WebCore::RenderMathMLFraction::layout):
        * mathml/RenderMathMLOperator.cpp:
        (WebCore::RenderMathMLOperator::stretchToHeight):
        * mathml/RenderMathMLRoot.cpp:
        (WebCore::RenderMathMLRoot::layout):
        * mathml/RenderMathMLRow.cpp:
        (WebCore::RenderMathMLRow::layout):
        * mathml/RenderMathMLRow.h:
        (WebCore::RenderMathMLRow::stretchToHeight):
        * mathml/RenderMathMLSubSup.cpp:
        (WebCore::RenderMathMLSubSup::addChild):
        (WebCore::RenderMathMLSubSup::stretchToHeight):
        (WebCore::RenderMathMLSubSup::nonOperatorHeight):
        (WebCore::RenderMathMLSubSup::layout):
        (WebCore::RenderMathMLSubSup::baselinePosition):
        * mathml/RenderMathMLUnderOver.cpp:
        (WebCore::RenderMathMLUnderOver::stretchToHeight):
        (WebCore::RenderMathMLUnderOver::layout):
        (WebCore::RenderMathMLUnderOver::nonOperatorHeight):
        * mathml/mathtags.in:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@70221 268f45cc-cd09-0410-ab3c-d52691b4dbfc
32 files changed