Mozilla.dev.tech.layout - Friday October 13 2006

From CDOT Wiki
Revision as of 09:02, 2 November 2006 by Cbguy1 (talk | contribs) (Discussions)
Jump to: navigation, search

Newsgroup summaries:mozilla.dev.tech.layout

October 13-26, 2006

Go to mozilla.dev.tech.layout on google groups.

Go to mozilla.dev.tech.layout on this wiki.

Announcements

No announcements for this week.

Discussions

  • There was discussion about profiling the testcase for bug 352367 on the reflow branch. This bug is Firefox renders large tables with forms MUCH slower than IE (100x slower)The writer was asking about trying to reduce the calls to various functions like nsRuleNode::GetStyleData and nsStyleContext::GetStyleData . Ultimately it was mentioned that GetWidthInfo() took about 20% of the load time.
  • In MSIE table captions are displayed at the same size as content. But in Firefox the text displays at browser default, It also exceeds the width of the table and the excess is hidden if the table is enclosed in a bounding div. The writer wants to know if Is there any way of applying a font-size to firefox table caption text while keeping the correct display in other browsers. In addition is it possible for preventing the caption width from exceeding the tables'width.
/** 
   * Compute the size that a frame will occupy.  Called while 
   * constructing the nsHTMLReflowState to be used to Reflow the frame, 
   * in order to fill its mComputedWidth and mComputedHeight member 
   * variables. 
   * 
   * The |height| member of the return value may be 
   * NS_UNCONSTRAINEDSIZE, but the |width| member must not be. 
   * 
   * @param aAvailWidth  The available width into which the element is 
   *                     being placed (i.e., the width of its containing 
   *                     block). 
   * @param aMargin  The sum of the left and right margins of the 
   *                 frame, including actual values resulting from 
   *                 percentages, but not including actual values 
   *                 resulting from 'auto'. 
   * @param aBorder  The sum of the left and right border widths of the 
   *                 frame. 
   * @param aPadding  The sum of the left and right margins of the 
   *                  frame, including actual values resulting from 
   *                  percentages. 
   * @param aShrinkWrap  Whether the frame is in a context where 
   *                     non-replaced blocks should shrink-wrap (e.g., 
   *                     it's floating, absolutely positioned, or 
   *                     inline-block). 
   */ 
  virtual nsSize ComputeSize(nscoord aAvailWidth, nscoord aMargin, 
                             nscoord aBorder, nscoord aPadding, 
                             PRBool aShrinkWrap) = 0;
Details can be located at refactoring some of nsHTMLReflowState.
  • Discussion on how to determine whether there is pending layout changes or reflows when using a popup. It was concluded that a frame model change is utilized within a popup, not a layout change. On the reflow branch, check the DIRTY and DIRTY_CHILDREN framestate flags. That won't help with pending style changes, but it'll work to detect cases when the popup or something in it needs to be reflown. Details can be located at frame reflow
  • Issues related to the ongoing implementation of MathML-in-HTML into Mozilla, which include:
  • Exposing the MathML implementation to tag soup.
  • CSS Matching rules.
Details can be located at MathML-in-HTML5

Meetings

No meetings for this week.