Merge nsHTMLContainerFrame, nsContainerFrame to one class

RESOLVED FIXED in mozilla12

Status

()

Core
Layout
--
enhancement
RESOLVED FIXED
8 years ago
5 years ago

People

(Reporter: mats, Assigned: mats)

Tracking

unspecified
mozilla12
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

8 years ago
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
I don't think so.
(Assignee)

Updated

5 years ago
Assignee: nobody → matspal
(Assignee)

Comment 3

5 years ago
Created attachment 584162 [details] [diff] [review]
fix

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)
Attachment #584162 - Flags: review?(roc) → review+
(Assignee)

Comment 4

5 years ago
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
Last Resolved: 5 years ago
Resolution: --- → FIXED
Whiteboard: [inbound]
You need to log in before you can comment on or make changes to this bug.