Closed Bug 515530 Opened 15 years ago Closed 12 years ago

Merge nsHTMLContainerFrame, nsContainerFrame to one class

Categories

(Core :: Layout, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla12

People

(Reporter: MatsPalmgren_bugz, Assigned: MatsPalmgren_bugz)

Details

Attachments

(1 file)

Followup from bug 233463 comment 62 --
From  Boris Zbarsky (:bz) 2009-08-25 08:44:30 PDT:

For that matter, I'm not quite sure why we have separate nsHTMLContainerFrame
and nsContainerFrame, but that's also fodder for a separate bug.
dbaron, roc, is there a point to having these be separate classes?
Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee: nobody → matspal
Attached patch fixSplinter Review
There was one issue - both nsHTMLContainerFrame, nsContainerFrame
implements BuildDisplayList.  Identically, except nsHTMLContainerFrame
uses DISPLAY_CHILD_INLINE and nsContainerFrame does not.

Investigating all classes that inherit nsHTMLContainerFrame...
   nsHTMLFramesetFrame
   nsInlineFrame
implements BuildDisplayList that explicitly calls nsHTMLContainerFrame::BuildDisplayList
   nsProgressFrame
   nsFirstLetterFrame
does not implement BuildDisplayList

I made the above four have a BuildDisplayList that calls a new (protected)
convenience method BuildDisplayListForInline that implements the
DISPLAY_CHILD_INLINE version.

The remaining derived classes all implements BuildDisplayList but
does not call nsHTMLContainerFrame::BuildDisplayList.
Attachment #584162 - Flags: review?(roc)
https://hg.mozilla.org/integration/mozilla-inbound/rev/7db218a91c88
Whiteboard: [inbound]
Target Milestone: --- → mozilla12
https://hg.mozilla.org/mozilla-central/rev/7db218a91c88
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Whiteboard: [inbound]
You need to log in before you can comment on or make changes to this bug.