A few changes of note on the reflow branch:

A few weeks ago, I changed intrinsic width calculation for
percentage margins and percentage padding so that it does
multiplication by 1/(1-%) and thus correctly accounts for the
intrinsic width contribution of percentages.  This involved
rewriting nsLayoutUtils::IntrinsicForContainer.  I also made it
significantly *less* parameterized while I was there, and made its
quirks live in a new virtual function on nsIFrame
(IntrinsicWidthOffsets).

Today I mostly finished up the ComputeSize changes and turned them
on (although not exactly in that order; things were pretty busted
most of the day but should at least be vaguely working now).  I
managed to get away without very many overrides of ComputeSize by
having the implementation on nsFrame defer a good part of its work
to another virtual function, ComputeAutoSize, and then putting
reasonable implementations of that on nsFrame and nsContainerFrame
(it could perhaps have been a single implementation, except that at
least nsFrame itself is occasionally used as an "empty frame" but is
not marked as nsIFrame::eReplaced).

While doing that, I also ripped out the quirk that *inline*
fieldsets ignore the 'width' and 'height' properties.

I'm sure I regressed something, though.  I need to investigate
percentage height quirks a bit.

-David

-- 
L. David Baron                                <URL: http://dbaron.org/ >
           Technical Lead, Layout & CSS, Mozilla Corporation

Attachment: pgpaJNN5D2Ej9.pgp
Description: PGP signature

_______________________________________________
dev-tech-layout mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-layout

Reply via email to