Closed Bug 766811 Opened 12 years ago Closed 6 years ago

Audio controls code makes table with lots of <audio> elements in it really slow

Categories

(Core :: Audio/Video: Playback, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1373537

People

(Reporter: bzbarsky, Unassigned)

References

()

Details

I don't know how long the testcase will stay up, but it's just a table with 263 rows.  Each row's third cell has an <audio> in it.  It takes us 10+ seconds to render the table.

What my profiler says is that all the time is under the layout flushes triggered by the .clientWidth gets in an XBL constructor; presumably the one for the controls.

What seems to be happening is that each constructor flushes layout to get some width styles, then sets some sizing stuff which causes the table layout to be marked dirty.  Then the next constructor fires, flushes layout, etc.  So we lay out the whole table 250+ times.
I tried marking the nsVideoFrame as a reflow root.  That makes things a little faster, but the controls don't show up unless something triggers a reflow from the outside....
Depends on: 511163
Component: Audio/Video → Audio/Video: Playback
Mass closing do to inactivity.
Feel free to re-open if still needed.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → INACTIVE
This got fixed in bug 1373537...  Why that took an extra 5 years...
Resolution: INACTIVE → DUPLICATE
You need to log in before you can comment on or make changes to this bug.