Closed Bug 900118 Opened 11 years ago Closed 11 years ago

nsDeckFrame::DoLayout calls nsDeckFrame::HideBox on all non-selected panes each time DoLayout is called

Categories

(Core :: Layout, defect)

defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: jaws, Unassigned)

References

Details

nsDeckFrame::DoLayout calls nsDeckFrame::HideBox on all non-selected panes each time DoLayout is called. It doesn't look like this should be necessary after the first time, so I expect that there is some unnecessary work done here as long as the selectedIndex hasn't changed on the <xul:deck>.

Note that Australis builds are using a deck to switch between the <xul:browser> element and a <xul:vbox> for customization mode, so if this is hurting us perf-wise Australis will make this performance hit much more pronounced.
HideBox just calls nsIPresShell::ClearMouseCapture, which doesn't really do anything in the common case (no mouse capture). Doesn't seem like there's enough evidence of badness here to keep a bug open.
(CCing tn since he worked on bug 658001)
Yeah, pretty sure I noticed that deck frame is non-optimal in ways like this back when I was mucking with it, but all of the things it does seemed very light weight so I didn't do anything further back then.

Anyways, comment 1 seems bang on to me, in the common case this should be doing basically nothing extra. If we get some evidence this is hurting us then we can do something smarter here.

(Bug 658001 was mostly to emulate what we did before some changes I was making at the time, I choose to just emulate the old behaviour instead of investigate if we still needed it.)
OK, closing this out then.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.