Bug 380266 (mspace-linebreak)

MathML rendering errors : mspace linebreak

RESOLVED DUPLICATE of bug 534962

Status

()

Core
MathML
RESOLVED DUPLICATE of bug 534962
10 years ago
5 years ago

People

(Reporter: Michel de Becdelièvre, Unassigned)

Tracking

(Blocks: 1 bug)

Trunk
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [close-me-2012-04-08] , URL)

Attachments

(2 attachments, 1 obsolete attachment)

(Reporter)

Description

10 years ago
User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3

The two most frustating bugs I have find in MathML rendering are :

1) bad rendering of line breaks (<mspace linebreak="newline" />), see W3C sample.
2) bad rendering of square root extension (may be font related).

Reproducible: Always

Steps to Reproduce:
1.any use of <mspace linebreak="newline" /> in any expression is ignored.
2.
3.
Actual Results:  
no line break, no usable workaround found.

Expected Results:  
display linebreak in math expression.

This prevents the use of any long math expression, hand cutting the expression is not ran option, specially in tables.
Assignee: nobody → rbs
Component: General → MathML
Product: Firefox → Core
QA Contact: general → ian
Version: unspecified → 1.8 Branch
QA Contact: ian → mathml
Created attachment 398141 [details] [diff] [review]
Parsing of linebreak attribute

  I think we can first work on the linebreak="newline" since it is likely to be the most useful / simplest to implement. Any idea about how to force a newline in a MathML formula?
Finally I have been able to force a new line using NS_INLINE_LINE_BREAK_AFTER.

   NS_FRAME_SET_TRUNCATION(aStatus, aReflowState, aDesiredSize);
+
+  if (mLineBreak == LINEBREAK_NEWLINE)
+    aStatus = NS_INLINE_LINE_BREAK_AFTER(aStatus);
+
   return NS_OK;

I don't think a support for other values than "newline" is really necessary since it is said in MathML3 WD that controlling linebreaking on <mo/> is preferred. Maybe I should modify my patch not to parse these extra values.

http://www.w3.org/TR/2009/WD-MathML3-20090604/chapter3.html#presm.mspace
(In reply to comment #2)
> Finally I have been able to force a new line using NS_INLINE_LINE_BREAK_AFTER.
> 

Actually it seems a bit more complicated... Currently Mozilla can not linebreak within <mrow>:

http://www.mozilla.org/projects/mathml/update.html (see the section about mrow)
Status: UNCONFIRMED → NEW
Ever confirmed: true
Blocks: 525772
Assignee: rbs → nobody
Blocks: 534962
Severity: major → normal
OS: Windows XP → All
Hardware: x86 → All
Version: 1.8 Branch → Trunk
Created attachment 424866 [details] [diff] [review]
Patch
Attachment #398141 - Attachment is obsolete: true
Created attachment 424867 [details]
Testcase
Alias: mspace-linebreak
The patch here does not appear to fix the issue from the original test from the URL in the patch:

http://www.w3.org/Math/testsuite/build/main/Presentation/TokenElements/mspace/mspaceAbreak3-full.xhtml
(In reply to comment #6)
> The patch here does not appear to fix the issue from the original test from the
> URL in the patch:
             ^^^^^
             bug
linebreaking is currently only possible at the level of the math element. Although the patch allows to force linebreaking, it is still impossible to break deeper (in the MathML testsuite, we are inside a mrow). Fixing the bug will be more complicated that I initially thought. I don't plan to work on it for the moment.
No longer blocks: 534962
The MathML 3 says

"Linebreaking was originally specified on mspace in MathML2, but controlling linebreaking on mo is to be preferred starting with MathML 3."

I don't know if it's really worth implementing linebreaking on mspace, given that this is probably going to become obsolete.

So I think we should either resolve this bug as WONTFIX or as a DUPLICATE of bug 534962.
Whiteboard: [close-me-2012-04-08]
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 534962
You need to log in before you can comment on or make changes to this bug.