Bug 57700 - RenderMathMLOperator mutates the render tree in layout()
Summary: RenderMathMLOperator mutates the render tree in layout()
Status: RESOLVED DUPLICATE of bug 122361
Alias: None
Product: WebKit
Classification: Unclassified
Component: MathML (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Major
Assignee: Nobody
Keywords: InRadar
Depends on: 121416
  Show dependency treegraph
Reported: 2011-04-01 22:35 PDT by mitz
Modified: 2013-10-08 16:09 PDT (History)
6 users (show)

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description mitz 2011-04-01 22:35:26 PDT
RenderMathMLOperator::layout() deletes and creates renderers. Layout time is not the right time to do this. One serious side effect of this is that preferred logical width computation is completely wrong.
Comment 1 mitz 2011-04-01 22:39:25 PDT
Comment 2 Alex Milowski 2011-04-25 14:07:02 PDT
Only at layout time do we know the operator height.  Glyph stacking is relative to the row height calculated when the row's contents are laid out.  This is then essential for the layout of rows that contain rows with operators that are to be stretched.

I'm certainly open to suggestions as to when this should happen but the information necessary to stretch the operator is ascertained during the layout of the containing row and so it always happens at layout().  

You should look at the RenderMathMLRow to see when the operator stretch height is calculated.
Comment 3 Martin Robinson 2013-10-08 16:09:38 PDT

*** This bug has been marked as a duplicate of bug 122361 ***