Mozilla.dev.tech.layout

From CDOT Wiki
Revision as of 15:08, 6 October 2006 by Cbguy1 (talk | contribs) (FAQ)
Jump to: navigation, search

Newsgroup

Newsgroup name goes here...

Authors

  1. Philip Vitorino
  2. Colin Guy

Weekly Summaries

  1. Mozilla.dev.tech.layout_-_Friday_September_29_2006
  2. Mozilla.dev.tech.layout_-_Friday_October_6_2006

FAQ

1. Is there a way to do profiling of what is going on in Mozilla? Is there a framework for this?

A. If you're on Linux, then you can try using jprof.  Instructions  are available at    
Jprof Readme  On more recent linux versions sysprof can also  
be used. [1] also lists some profiles.

2. How do you findout if there are any reflows that are pending and wait to show the view until afterwards, but if none are pending, show the view immediately? What is the best way to determine whether there are any pending changes?

A. On the reflow branch you could 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.

3. What are the lowercase items called "line"? I don't see it when I do frame->GetFirstChild(nsnull) from the block/body item.

Block(body)(1)@035FF490 {120,120,8820,600} [state=00000010] 
sc=035FF264(i=2,b=0)< 
  line 035FFC18: count=1 
state=inline,clean,prevmarginclean,not impacted,not 
wrapped,before:nobr,after:linebr[0x5100] {0,0,330,300} < 
    Inline(span)(0)@035FFA04 next=035FFC48 
next-continuation=035FFC48 {0,7,330,285} [content=0359ED50] 
[sc=035FF990]< 
      Text(0)@035FFA8C[0,4,T]  next=035FFB1C {0,0,330,285} 
[state=41600020] sc=035FFA3C pst=:-moz-non-element< 
        "\nabc" 
     > 
     Frame(br)(1)@035FFB1C {330,225,0,0} [state=00000020] 
[content=035AEBF0] 
   > 
 >
A. The linebox is used to contain everything on a single line: 
 Example

4. How do you fix inconsistent float behavior in firefox involving a two column layout using display:table and floating div elements ?

A. This is a bug in Firefox. You can work around it by removing   
display:table in the style rule with the "#main" selector or adding clear:both to it.