Open Bug 1361635 Opened 9 years ago Updated 2 years ago

1.19ms uninterruptible reflow from window.innerWidth at getContentSize@resource://gre/modules/PageThumbUtils.jsm:112:9

Categories

(Core :: DOM: Core & HTML, defect, P3)

defect

Tracking

()

Performance Impact low

People

(Reporter: bugzilla, Unassigned)

Details

(Keywords: perf, perf:frontend, perf:responsiveness, Whiteboard: [ohnoreflow])

Here's the stack: getContentSize@resource://gre/modules/PageThumbUtils.jsm:112:9 createSnapshotThumbnail@resource://gre/modules/PageThumbUtils.jsm:144:41 _captureToCanvas@resource://gre/modules/PageThumbs.jsm:292:5 captureToCanvas@resource://gre/modules/PageThumbs.jsm:222:5 refreshThumbAndLabel@chrome://tabcenter/content/vertical-tabbrowser.xml:827:17 refreshAllTabs@resource://gre/modules/commonjs/toolkit/loader.js -> resource://tabcentertest1-at-mozilla-dot-com/verticaltabs.js:1291:7 actuallyResizeTabs@resource://gre/modules/commonjs/toolkit/loader.js -> resource://tabcentertest1-at-mozilla-dot-com/verticaltabs.js:1277:9 delayResizeTabs/this.resizeTimeout<@resource://gre/modules/commonjs/toolkit/loader.js -> resource://tabcentertest1-at-mozilla-dot-com/verticaltabs.js:1172:55
http://searchfox.org/mozilla-central/rev/abe68d5dad139e376d5521ca1d4b7892e1e7f1ba/toolkit/components/thumbnails/PageThumbUtils.jsm#112 let width = aWindow.innerWidth - sbWidth.value; let height = aWindow.innerHeight - sbHeight.value; Do we know why this need flushing? Could it be fixed in a way similar to bug 1358809? The above stack looks like this is running off a timer after a resize event, so using getBoundsWithoutFlushing (or similar) would probably give correct results here.
Flags: qe-verify?
Priority: -- → P2
Component: Untriaged → General
Product: Firefox → Toolkit
Whiteboard: [ohnoreflow][qf][photon-performance] → [ohnoreflow][qf-][photon-performance]
(In reply to Florian Quèze [:florian] [:flo] from comment #1) > http://searchfox.org/mozilla-central/rev/ > abe68d5dad139e376d5521ca1d4b7892e1e7f1ba/toolkit/components/thumbnails/ > PageThumbUtils.jsm#112 > > let width = aWindow.innerWidth - sbWidth.value; > let height = aWindow.innerHeight - sbHeight.value; > > Do we know why this need flushing? Could it be fixed in a way similar to bug > 1358809? Note that aWindow is a content window here. This might be more similar to bug 1307134, i.e. accessing an iframe's innerWidth should flush layout in ancestor content windows, but accessing a top-level content window's innerWidth shouldn't flush layout.
Flags: qe-verify? → qe-verify-
Component: General → DOM: Core & HTML
Product: Toolkit → Core
Summary: 1.19ms uninterruptible reflow at getContentSize@resource://gre/modules/PageThumbUtils.jsm:112:9 → 1.19ms uninterruptible reflow from innerWidth at getContentSize@resource://gre/modules/PageThumbUtils.jsm:112:9
Summary: 1.19ms uninterruptible reflow from innerWidth at getContentSize@resource://gre/modules/PageThumbUtils.jsm:112:9 → 1.19ms uninterruptible reflow from window.innerWidth at getContentSize@resource://gre/modules/PageThumbUtils.jsm:112:9
Whiteboard: [ohnoreflow][qf-][photon-performance] → [ohnoreflow][qf][photon-performance]
Priority: P2 → P3
Whiteboard: [ohnoreflow][qf][photon-performance] → [ohnoreflow][qf][reserve-photon-performance]
Whiteboard: [ohnoreflow][qf][reserve-photon-performance] → [ohnoreflow][reserve-photon-performance][qf:p3]
Priority: P3 → P4
Hi Marco, we don't use P4 for DOM bugs. We use P3 (backlog) and P5 (not plan to fix it but happy to take a patch). Do you think we could remap your P4 into either of them? Thank you.
Flags: needinfo?(mmucci)
(In reply to Hsin-Yi Tsai [:hsinyi] from comment #3) > Hi Marco, we don't use P4 for DOM bugs. We use P3 (backlog) and P5 (not plan > to fix it but happy to take a patch). Do you think we could remap your P4 > into either of them? Thank you. I'll remove from Photon Performance and you can adjust the priority level as you wish.
Flags: needinfo?(mmucci)
Whiteboard: [ohnoreflow][reserve-photon-performance][qf:p3] → [ohnoreflow] [qf:p3]
Priority: P4 → P3
Keywords: perf
Whiteboard: [ohnoreflow] [qf:p3] → [ohnoreflow] [qf:p3] [fxperf]
Whiteboard: [ohnoreflow] [qf:p3] [fxperf] → [ohnoreflow] [qf:p3] [fxperf:p3]
Whiteboard: [ohnoreflow] [qf:p3] [fxperf:p3] → [ohnoreflow] [qf:p3:responsiveness] [fxperf:p3]
Performance Impact: --- → P3
Whiteboard: [ohnoreflow] [qf:p3:responsiveness] [fxperf:p3] → [ohnoreflow] [fxperf:p3]
Severity: normal → S3
Keywords: perf:frontend
Whiteboard: [ohnoreflow] [fxperf:p3] → [ohnoreflow]
You need to log in before you can comment on or make changes to this bug.