Closed Bug 120974 Opened 23 years ago Closed 23 years ago

All OutlinerBodyFrames are wrapped in BoxToBlockAdaptors

Categories

(Core :: XUL, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla0.9.9

People

(Reporter: bryner, Assigned: bryner)

References

Details

(Keywords: perf)

Attachments

(1 file)

I was looking into some reflow performance problems with XBL select widgets, and noticed that each OutlinerBodyFrame was being wrapped with a BoxToBlockAdaptor. On closer inspection, OutlinerBodyFrame fails to QI to nsIBox (even though it inherits from nsLeafBoxFrame), because the QI map calls to nsLeafFrame, not nsLeafBoxFrame. I tried changing it to call nsLeafBoxFrame, and all my outliners came out blank. Investigating.
Updating summary to be more descriptive, adding perf keyword and dependency for xbl form controls (I believe this is slowing them down).
Blocks: 112713
Status: NEW → ASSIGNED
Keywords: perf
Summary: OutlinerBodyFrame doesn't QI to nsIBox! → All OutlinerBodyFrames are wrapped in BoxToBlockAdaptors
Target Milestone: --- → mozilla0.9.9
Attached patch patchSplinter Review
sr=hyatt
Comment on attachment 66376 [details] [diff] [review] patch r=varga please, double check SetBounds is called only from a reflow
Attachment #66376 - Flags: review+
Ok, I changed it to only pass PR_TRUE for aInReflow if aBoxLayoutState.GetReflowState() returns non-null. This should be accurate.
checked in.
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Component: XP Toolkit/Widgets: Trees → XUL
QA Contact: jrgmorrison → xptoolkit.widgets
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: