2.24ms uninterruptible reflow at handleEvent@chrome://browser/content/tabbrowser.xml:6224:19

RESOLVED WORKSFORME

Status

()

enhancement
P4
normal
RESOLVED WORKSFORME
2 years ago
2 years ago

People

(Reporter: rjward0, Unassigned)

Tracking

(Blocks 1 bug, {perf})

unspecified
Points:
---
Dependency tree / graph
Bug Flags:
qe-verify -

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [ohnoreflow][qf:p2][reserve-photon-performance])

Reporter

Description

2 years ago
Here's the stack:

handleEvent@chrome://browser/content/tabbrowser.xml:6224:19
EventListener.handleEvent*tabbrowser-tabs_XBL_Constructor@chrome://browser/content/tabbrowser.xml:5664:11
Component: Untriaged → Tabbed Browser
Flags: qe-verify?
Priority: -- → P2
I guess this is when resizing the browser window, with the this.mTabstrip.boxObject.width at http://searchfox.org/mozilla-central/rev/7aa21f3b531ddee90a353215bd86e97d6974e25b/browser/base/content/tabbrowser.xml#6223

I wonder if we could avoid this (or reduce its cost) by using requestAnimationFrame.
Another stack:

handleEvent@chrome://browser/content/tabbrowser.xml:6265:19
rect@chrome://browser/content/browser-tabsintitlebar.js:106:23
_update@chrome://browser/content/browser-tabsintitlebar.js:157:28
updateAppearance@chrome://browser/content/browser-tabsintitlebar.js:65:5
toggle@chrome://browser/content/browser-fullScreenAndPointerLock.js:333:7
handleEvent@chrome://browser/content/browser-fullScreenAndPointerLock.js:349:9
EventListener.handleEvent*init@chrome://browser/content/browser-fullScreenAndPointerLock.js:255:5
_delayedStartup@chrome://browser/content/browser.js:1506:5
EventListener.handleEvent*onLoad@chrome://browser/content/browser.js:1239:5
onload@chrome://browser/content/browser.xul:1:1
I'm not convinced the stack in comment 2 is the same bug. Comment 0 was when resizing the browser window. Comment 2 seems to be when entering or leaving fullscreen. The code around http://searchfox.org/mozilla-central/rev/f225dbcb15ca2e38f7d434a9278a41d2340e7cf3/browser/base/content/browser-tabsintitlebar.js#156 does several calls that could trigger sync reflows.
Whiteboard: [ohnoreflow][qf][photon-performance] → [ohnoreflow][qf:p1][photon-performance]
Priority: P2 → P3
Whiteboard: [ohnoreflow][qf:p1][photon-performance] → [ohnoreflow][qf:p1][reserve-photon-performance]
Flags: qe-verify? → qe-verify-
Whiteboard: [ohnoreflow][qf:p1][reserve-photon-performance] → [ohnoreflow][qf:p2][reserve-photon-performance]
Priority: P3 → P4
Keywords: perf
This reflow no longer exists, since bug 1414252 landed.
Status: NEW → RESOLVED
Closed: 2 years ago
Depends on: 1414252
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.