Closed Bug 1511137 Opened 3 years ago Closed 3 years ago

Zoom isn't restored after exiting fullscreen


(Core :: Panning and Zooming, defect, P2)

65 Branch



Tracking Status
firefox-esr60 --- unaffected
firefox63 --- unaffected
firefox64 --- wontfix
firefox65 --- fixed


(Reporter: csheany, Assigned: botond)


(Blocks 1 open bug)


(Keywords: regression)


(1 file)

User Agent: Mozilla/5.0 (Android 7.1.1; Tablet; rv:65.0) Gecko/65.0 Firefox/65.0

Steps to reproduce:

1. Open
2. Zoom in
3. Enter fullscreen of a video
4. Exit

Actual results:

The page is zoomed out

Expected results:

The page should still be zoomed in
I can reproduce this intermittently. It looks like there may be a race condition between the code to restore the original zoom level that was added in bug 1493976, and some other code that is setting the zoom level.
(In reply to Botond Ballo [:botond] from comment #1)
> and some other code that is setting the zoom level

Specifically, APZCCallbackHelper::UpdateRootFrame() [1].

Component: General → Panning and Zooming
Product: Firefox for Android → Core
Version: Firefox 65 → 65 Branch
We take this branch in NotifyLayersUpdated() [1] which has a comment that says:

  // Any change to the pres shell resolution was requested by APZ and is
  // already included in our zoom;

This is no longer true in light of bug 1493976.

Assignee: nobody → botond
Priority: -- → P2
Ever confirmed: true
The tracking is done using nsAtom origins, similarly to how updates to the
scroll offset are tracked.

Currently, APZ still uses some heuristics to deduce that the main thread
originated a resolution change in some cases, but the intention is to try
to remove those and rely only on this mechanism in the furture.
Pushed by
Track more accurately when the main thread originates a resolution change. r=kats
Blocks: 1512273
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
Too late to uplift this on 64.
You need to log in before you can comment on or make changes to this bug.