Need to lock FrameMetrics between "before-first-paint" and first paint

RESOLVED INCOMPLETE

Status

()

Core
Graphics: Layers
RESOLVED INCOMPLETE
5 years ago
9 months ago

People

(Reporter: drs, Unassigned)

Tracking

Trunk
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

5 years ago
We're running into a situation where, if "Viewport:Change" events are going through and setting the displayport/resolution/metrics between "before-first-paint" and actual first paint, we are clobbering the proper new metrics. This only happens while panning or zooming around the page, since that's the only time "Viewport:Change" events go through.

To help visualize this:
load a page -> wait for it to paint -> load a new page (click on a link, open from url bar, whatever) -> pan around while waiting for the new page to load -> observe random crap on the new page

I think the ideal solution is to not accept new FrameMetrics after we get a "before-first-paint", until the mScrollId field changes. However, this is more difficult than it sounds, because mScrollId doesn't change if it's a root layer, even if it's a new frame.

This is similar to bug 735029, but I'm not going to mark them as interdependent.
(Reporter)

Updated

5 years ago
Blocks: 745136
Old B2G bug, no longer relevant.
Status: NEW → RESOLVED
Last Resolved: 9 months ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.