Closed Bug 1578100 Opened 5 years ago Closed 5 years ago

The FPS overlay (layers.acceleration.draw-fps) doesn't work when CoreAnimation is enabled

Categories

(Core :: Graphics: Layers, defect)

All
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla71
Tracking Status
firefox-esr60 --- unaffected
firefox-esr68 --- unaffected
firefox69 --- unaffected
firefox70 --- wontfix
firefox71 --- fixed

People

(Reporter: mstange, Assigned: mstange)

References

(Regression)

Details

(Keywords: regression)

Attachments

(7 files)

In bug 1574745 I broke the FPS overlay in configurations that use native layers, i.e. macOS with CoreAnimation. So the layers.acceleration.draw-fps pref doesn't do anything there at the moment.
The work in this bug will bring the FPS overlay back.

(This is not that urgent and does not need to be tracked for Firefox 70, it's a pref that is only occasionally used by Gecko developers.)

This creates and updates layers that draw the same things as RenderDebugOverlay().
The code is duplicated so that the overlay can be independent of the compositing
layer content drawing. All layers need to be drawn first, and the GPU stats from
that layer are shown in mGPUStatsLayer.

Depends on D44336

This makes the fill rate numbers which are displayed in the FPS overlay a lot more reasonable.
It also requires the TransformAndClipBounds fix from bug 1578045 for correct numbers.

Depends on D44337

Pushed by mstange@themasta.com: https://hg.mozilla.org/integration/autoland/rev/6f8f8f958da7 Use DrawTarget::CopySurface in the text renderer. r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/e408b810106d Remove unused aTextSize argument. r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/1d43d31f95ed Factor out surface size computation. r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/9b78526a3b4a Add TextRenderer::RenderTextToDrawTarget. r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/d8a238d4c34d Factor out DrawTranslationWarningOverlay. r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/f8ced2588497 Implement LayerManagerComposite::UpdateDebugOverlayNativeLayers(). r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/12a11f3c8ab4 Respect the clip when calculating the number of pixels to fill. r=mattwoodrow
Regressions: 1578305

Is this going to ride Fx71 to release?

(In reply to Ryan VanderMeulen [:RyanVM] from comment #10)

Is this going to ride Fx71 to release?

I think that would be acceptable. The alternative would be to uplift both bug 1578099 and this bug to 70, including the three regression fixes from bug 1578310, bug 1578376 and bug 1578305. I'd rather wait for any remaining regressions to shake out before doing that.

Flags: needinfo?(mstange)
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: