I have a nsSelectsAreaFrame (which is just an nsAreaFrame for reflow purposes)
doing the following:
Area(select)(1)@0x88657d0: GetPrefWidth
line 0 (inline,empty)
pref: [prevLines=0 currentLine=0]
line 1 (block)
Block(option)(1)@0x86dcc88: GetPrefWidth
line 0 (inline)
pref: [prevLines=0 currentLine=168]
pref: [prevLines=224 currentLine=0]
Area(select)(1)@0x88657d0: GetMinWidth
line 0 (inline,empty)
min: [prevLines=0 currentLine=0]
line 1 (block)
Block(option)(1)@0x86dcc88: GetMinWidth
line 0 (inline)
min: [prevLines=0 currentLine=168]
min: [prevLines=280 currentLine=0]
Note that the return value of GetMinWidth is larger than that of GetPrefWidth!
This triggers some asserts I added to nsHTMLReflowState.
I tracked this down to the fact that nsIFrame::InlinePrefWidthData::Break
subtracts off trailingWhitespace from currentLine, while
nsIFrame::InlineMinWidthData::Break does not. Should the latter be subtracting
it off as well? Or is my assertion that GetPrefWidth() >= GetMinWidth() not
something I can assert?
-Boris
_______________________________________________
dev-tech-layout mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-layout