[Webkit-unassigned] [Bug 139582] New: AX: Anonymous RenderMathMLOperators are not exposed to the accessibility tree

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Dec 12 04:04:44 PST 2014


https://bugs.webkit.org/show_bug.cgi?id=139582

            Bug ID: 139582
           Summary: AX: Anonymous RenderMathMLOperators are not exposed to
                    the accessibility tree
    Classification: Unclassified
           Product: WebKit
           Version: 528+ (Nightly build)
          Hardware: All
                OS: All
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: MathML
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: fred.wang at free.fr
        Depends on: 124838
            Blocks: 124836

If we compare

<mfenced open="(" separators="," close=")"><mi>x</mi><mi>y</mi></mfenced>

and

<mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow>

we see that the render trees only differ by the fact that RenderMathMLOperator are anonymous in the former case but not in the latter:

  RenderBlock {HTML} at (0,0) size 800x600
    RenderBody {BODY} at (8,8) size 784x584
      RenderBlock (anonymous) at (0,0) size 784x16
        RenderMathMLMath {math} at (0,0) size 56x16 [padding: 0 1 0 1]
          RenderMathMLFenced {mfenced} at (1,0) size 54x16
            RenderMathMLOperator (anonymous) at (0,0) size 14x16
              RenderMathMLBlock (anonymous, flex) at (0,0) size 6x16
                RenderBlock (anonymous) at (0,0) size 6x16
                  RenderText at (0,-45) size 6x106
                    text run at (0,-45) width 6: "("
            RenderMathMLToken {mi} at (14,5) size 10x8 [padding: 0 2 0 0]
              RenderMathMLBlock (anonymous, flex) at (0,0) size 8x8
                RenderBlock (anonymous) at (0,0) size 8x8
                  RenderText {#text} at (0,-50) size 8x106
                    text run at (0,-50) width 8: "x"
            RenderMathMLOperator (anonymous) at (23,10) size 8x6
              RenderMathMLBlock (anonymous, flex) at (0,0) size 4x6
                RenderBlock (anonymous) at (0,0) size 4x6
                  RenderText at (0,-55) size 4x106
                    text run at (0,-55) width 4: ","
            RenderMathMLToken {mi} at (30,5) size 10x11 [padding: 0 2 0 0]
              RenderMathMLBlock (anonymous, flex) at (0,0) size 8x11
                RenderBlock (anonymous) at (0,0) size 8x11
                  RenderText {#text} at (0,-50) size 8x106
                    text run at (0,-50) width 8: "y"
            RenderMathMLOperator (anonymous) at (39,0) size 15x16
              RenderMathMLBlock (anonymous, flex) at (0,0) size 6x16
                RenderBlock (anonymous) at (0,0) size 6x16
                  RenderText at (0,-45) size 6x106
                    text run at (0,-45) width 6: ")"
        RenderText {#text} at (0,0) size 0x0
      RenderBlock {P} at (0,32) size 784x17
        RenderText {#text} at (0,0) size 175x17
          text run at (0,0) width 175: "-----------------------------------"
      RenderBlock (anonymous) at (0,65) size 784x16
        RenderMathMLMath {math} at (0,0) size 56x16 [padding: 0 1 0 1]
          RenderMathMLRow {mrow} at (1,0) size 54x16
            RenderMathMLOperator {mo} at (0,0) size 14x16
              RenderMathMLBlock (anonymous, flex) at (0,0) size 14x16
                RenderBlock (anonymous) at (0,0) size 6x16
                  RenderText at (0,-45) size 6x106
                    text run at (0,-45) width 6: "("
            RenderMathMLToken {mi} at (14,5) size 10x8 [padding: 0 2 0 0]
              RenderMathMLBlock (anonymous, flex) at (0,0) size 8x8
                RenderBlock (anonymous) at (0,0) size 8x8
                  RenderText {#text} at (0,-50) size 8x106
                    text run at (0,-50) width 8: "x"
            RenderMathMLOperator {mo} at (23,10) size 8x6
              RenderMathMLBlock (anonymous, flex) at (0,0) size 4x6
                RenderBlock (anonymous) at (0,0) size 4x6
                  RenderText at (0,-55) size 4x106
                    text run at (0,-55) width 4: ","
            RenderMathMLToken {mi} at (30,5) size 10x11 [padding: 0 2 0 0]
              RenderMathMLBlock (anonymous, flex) at (0,0) size 8x11
                RenderBlock (anonymous) at (0,0) size 8x11
                  RenderText {#text} at (0,-50) size 8x106
                    text run at (0,-50) width 8: "y"
            RenderMathMLOperator {mo} at (39,0) size 15x16
              RenderMathMLBlock (anonymous, flex) at (0,0) size 14x16
                RenderBlock (anonymous) at (0,0) size 6x16
                  RenderText at (0,-45) size 6x106
                    text run at (0,-45) width 6: ")"

The point of bug 124838 was to refactor the code to get cleaner and more consistent render trees. However, this change broke platform/mac/accessibility/mathml-elements.html

It seems that the code added into AccessibilityRenderObject::isIgnoredElementWithinMathTree to force exposure of anonymous render operators into the accessibility tree didn't help:

if (m_renderer->isAnonymous()) { 
    if (m_renderer->isRenderMathMLOperator()) 
       return false;
    ...

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20141212/19c183ea/attachment-0002.html>


More information about the webkit-unassigned mailing list