Difference between revisions of "Mozilla.dev.tech.layout"

From CDOT Wiki
Jump to: navigation, search
(Newsgroup)
(Weekly Summaries)
 
(22 intermediate revisions by 4 users not shown)
Line 12: Line 12:
 
== Weekly Summaries ==
 
== Weekly Summaries ==
  
# [[Mozilla.dev.tech.layout_-_Friday_September_29_2006]]
+
# [[Mozilla.dev.tech.layout_-_Friday_September_29_2006| Friday September 29 2006]]
 +
# [http://developer.mozilla.org/en/docs/Layout_FAQ Friday October 6th 2006] - Created FAQ
 +
# [http://developer.mozilla.org/en/docs/Layout_FAQ Friday October 13th 2006] - Updated FAQ - Went back 3 pages into history.
 +
# [[Mozilla.dev.tech.layout_-_Friday_October_13_2006|Friday October 20 2006]]
 +
# [http://developer.mozilla.org/en/docs/Newsgroup_summaries:mozilla-dev-tech-layout:2006-10-27 Friday October 27 2006]
 +
# [http://developer.mozilla.org/en/docs/Newsgroup_summaries:mozilla-dev-tech-layout:2006-11-03 Friday November 3 2006]
 +
# [http://developer.mozilla.org/en/docs/Newsgroup_summaries:mozilla-dev-tech-layout:2006-11-10 Friday November 10 2006]
 +
# [http://developer.mozilla.org/en/docs/Newsgroup_summaries:mozilla-dev-tech-layout:2006-11-17 Friday November 17 2006]
 +
# [http://developer.mozilla.org/en/docs/Newsgroup_summaries:mozilla-dev-tech-layout:2006-11-24 Friday November 24, 2006]
 +
# [http://developer.mozilla.org/en/docs/Newsgroup_summaries:mozilla-dev-tech-layout:2006-12-_02 Saturday December 2, 2006]
 +
# [http://developer.mozilla.org/en/docs/Newsgroup_summaries:mozilla-dev-tech-layout:2006-12-_08 Saturday December 8, 2006]
  
 
== FAQ ==
 
== FAQ ==
  
1. Is there a way to do profiling of what is going on in Mozilla?  Is there a framework for this?
+
Located on MDC at: [http://developer.mozilla.org/en/docs/Layout_FAQ Layout FAQ]
  
A. If you're on Linux, then you can try using jprof.  Instructions  are available at   
+
<div class="note">
[http://lxr.mozilla.org/mozilla/source/tools/jprof/README.html Jprof Readme]  On more recent linux versions sysprof can also 
+
=== Is there a way to do profiling of what is going on in Mozilla? Is there a framework for this? ===
  be used. [http://www.mozilla.org/performance/tools.html] also lists some profiles.
 
  
2How 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? ===
+
If you're on Linux, then you can try using jprofInstructions  are available at    [http://lxr.mozilla.org/mozilla/source/tools/jprof/README.html Jprof Readme] On more recent linux versions sysprof can also be used. [http://www.mozilla.org/performance/tools.html] also lists some profiles.
 +
</div>
  
A. On the reflow branch you could check the DIRTY and DIRTY_CHILDREN framestate
+
<div class="note">
flags.  That won't help with pending style changes, but it'll work to detect
+
=== How do you find out 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? ===
  cases when the popup or something in it needs to be reflown.
 
  
3What are the lowercase items called "line"? ===
+
On the reflow branch you could check the DIRTY and DIRTY_CHILDREN framestate flagsThat 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.
Block(body)(1)@035FF490 {120,120,8820,600} [state=00000010]
+
</div>
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:
 
  [http://lxr.mozilla.org/seamonkey/source/layout/generic/nsLineBox.cpp#206 Example]
 
  
4. How do you fix inconsistent float behavior in firefox involving a two column layout using display:table and floating div elements ? ===
+
<div class="note">
 +
=== What are the lowercase items called "line"? ===
 +
<pre>
 +
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]
 +
    >
 +
  >
 +
</pre>
 +
The linebox is used to contain everything on a single line: [http://lxr.mozilla.org/seamonkey/source/layout/generic/nsLineBox.cpp#206 Example]
 +
</div>
  
A. [https://bugzilla.mozilla.org/show_bug.cgi?id=105520 This is a bug in Firefox.] You can work around it by removing  
+
<div class="note">
display:table in the style rule with the "#main" selector or adding clear:both to it.
+
=== How do you fix inconsistent float behavior in firefox involving a two column layout using display:table and floating div elements? ===
 +
 
 +
[https://bugzilla.mozilla.org/show_bug.cgi?id=105520 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.
 +
</div>
 +
 
 +
<div class="note">
 +
=== Why does move movement disappear when I use the mouse events to click and drag? ===
 +
 
 +
Since the dragging action is involved, you might need to disable it. Try using event.preventDefault()
 +
</div>
 +
 
 +
<div class="note">
 +
=== What is the purpose of the NS_LossyConvertUCS2toASCII() function? ===
 +
 
 +
This function converts an nsAString to an nsACString by assuming that all the
 +
16-bit units are ASCII and just dropping the high byte on them all.
 +
</div>
 +
 
 +
stopped reading on page 3 of the older link (11-20)

Latest revision as of 05:46, 13 December 2006

Newsgroup

Mozilla.dev.tech.layout

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

Authors

  1. Philip Vitorino
  2. Colin Guy

Weekly Summaries

  1. Friday September 29 2006
  2. Friday October 6th 2006 - Created FAQ
  3. Friday October 13th 2006 - Updated FAQ - Went back 3 pages into history.
  4. Friday October 20 2006
  5. Friday October 27 2006
  6. Friday November 3 2006
  7. Friday November 10 2006
  8. Friday November 17 2006
  9. Friday November 24, 2006
  10. Saturday December 2, 2006
  11. Saturday December 8, 2006

FAQ

Located on MDC at: Layout FAQ

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

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.

How do you find out 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?

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.

What are the lowercase items called "line"?

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]
    >
  > 

The linebox is used to contain everything on a single line: Example

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

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.

Why does move movement disappear when I use the mouse events to click and drag?

Since the dragging action is involved, you might need to disable it. Try using event.preventDefault()

What is the purpose of the NS_LossyConvertUCS2toASCII() function?

This function converts an nsAString to an nsACString by assuming that all the 16-bit units are ASCII and just dropping the high byte on them all.

stopped reading on page 3 of the older link (11-20)