L. David Baron wrote:
On Wednesday 2006-08-02 21:50 -0500, Boris Zbarsky wrote:
Setting the popup as a reflow root causes asserts in nsHTMLReflowState,
since it's an unknown type of out-of-flow. So I think the right thing to
Is there any good reason popups shouldn't be reflow roots? If not, then
they should be.
Conceptually, that would make a lot of sense to me. Is reflowing an nsBoxFrame
equivalent to calling Layout() on the corresponding box? In any case, I'll try
doing this.
Speaking of popups, it looks like the #if 0 in
nsMenuFrame::GetAdditionalChildListName got removed on branch. This causes
asserts about things still being in the primary frame map when they're being
destroyed... The real issue seems to be that nsMenuFrame::Destroy changes
attributes on the menupopup, which resets the primary frame for the menupopup,
after which we call DestroyPopupFrames() and destroy the frame we just readded
to the frame map. Not sure why the GetAdditionalChildListName code is really
relevant here, but skipping over nsLayoutAtoms::popupList in
DoDeletingFrameSubtree seems to help. Not sure why it does. Mats, you probably
know this code best; any ideas on it?
-Boris
_______________________________________________
dev-tech-layout mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-layout