Closed Bug 1649052 Opened 1 year ago Closed 9 months ago

Scrolling on LineageOS download page spends 70ms-140ms in Layout (The scrolling itself is smooth)

Categories

(Core :: Layout: Flexbox, enhancement)

enhancement

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: mayankleoboy1, Unassigned)

References

(Blocks 1 open bug, )

Details

(Whiteboard: [qf:responsiveness][qf:p3])

Attachments

(1 file)

Attached file about:support

Thanks for the report! I can reproduce. Here's a performance profile I captured in a fresh Firefox profile on Linux (showing similar 70-100ms reflow operations to what you reported):
https://share.firefox.dev/38efA3J

It looks like nsFlexContainerFrame is in the stack for most of the long layouts, so I'm tentatively assuming that we should categorize this as a flexbox layout bug.

It also looks like these layouts are coming from .clientHeight reads in JS (which causes a layout flush), inside of a setTimeout handler. Maybe this is some sort of lazy-scrolling JS implementation?

I profiled the same steps in Chrome, and I see similar setTimeout flushes & see some restyles/relayouts during them, but they're quite fast there --
the layouts are ~1ms long, vs. > 70ms long in Firefox.

Component: Layout → Layout: Flexbox
OS: Unspecified → All
Hardware: Unspecified → All
Whiteboard: [qf]
Version: unspecified → Trunk
Severity: -- → S3
Summary: Scrolling on LineageOS download page spends 70ms-140msms in Layout (The scrolling itself is smooth) → Scrolling on LineageOS download page spends 70ms-140ms in Layout (The scrolling itself is smooth)
Whiteboard: [qf] → [qf:responsiveness][qf:p3]

I cant repro this anymore..looks like they changed the page.

This is a profile from the same time, created using the mozregression : https://share.firefox.dev/2NAJvxc
It is quite different from the original profile. There are still ~10ms flushes, but I guess its fine.
I am happy to close this bug as WORKFORSOME

Status: NEW → RESOLVED
Closed: 9 months ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.