Closed Bug 1634621 Opened 4 years ago Closed 4 years ago

[regression] Default zoom level isn't actually applied on opening page in new tab, and needs forcing via zoom in/out to be applied

Categories

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

77 Branch
defect
Not set
normal

Tracking

()

VERIFIED FIXED
mozilla77
Tracking Status
firefox-esr68 --- unaffected
firefox75 --- unaffected
firefox76 --- unaffected
firefox77 --- verified
firefox78 --- verified

People

(Reporter: ronan.jouchet, Assigned: emilio)

References

(Regression)

Details

(Keywords: regression)

Attachments

(3 files)

User Agent: Mozilla/5.0 (Windows NT 10.0; rv:74.0) Gecko/20100101 Firefox/74.0

Steps to reproduce:

  1. Start Firefox (fresh new profile, no addons, 77.0a1-20200430155041)
  2. In the options, set a default zoom level, for example 200%
  3. Open a web page, for example https://www.nytimes.com/

Actual results:

See attached screencast:

  • Default zoom level (200%) is not applied
  • However, Firefox does read the zoom level and "pretends" to apply it: if I add the zoom buttons to the toolbar, it correctly displays 200%. But the content is definitely not zoomed at 200%, it's at 100%.
  • Then, on zooming in&out, I get to 200%, indicating again that Firefox thought it was displaying 200% on initial load, which it was not.

Expected results:

  • Default zoom level (200%) should have been applied on page load.

This is a regression since somewhere this week, between April 27 and April 30

Additional data point: custom per-domain zoom is remembered and honored. If I zoom in nytimes.com (setting it at 240%), close the tab, and open nytimes.com again, then 240% will honored. This bug is specific to honoring a default, non-100%, non-domain-overridden zoom level.

[Tracking Requested - why for this release]: Default full zoom feature is broken

I can reproduce the issue.

Regression window:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=306fcf2f019450fe89ae62c91c3818b1d2a2c73a&tochange=e690c4cf884848b968c214c38f86727ff30bc03d

Suspect: Bug 1633488

Status: UNCONFIRMED → NEW
Has Regression Range: --- → yes
Has STR: --- → yes
Component: Untriaged → DOM: Core & HTML
Ever confirmed: true
Keywords: regression
Product: Firefox → Core
Regressed by: 1633488
Assignee: nobody → emilio
Flags: needinfo?(emilio)

Bug 1633938 re-introduced this field to handle full-zoom on RDM without
having to affect the actual content zoom, see related hacks that went
away in this push:

https://hg.mozilla.org/integration/autoland/rev/9e6925ea790f994f09c1af3e442aaab1d14388f6

But I added it to the browser element constructor, instead of to
resetFields(), which means that it's not properly reset when the
browsing context changes and thus it can get out of sync.

Move it to resetFields(), so that we properly detect that zoom has
changed. An alternative to this is to only use this._fullZoom when in
RDM instead.

This is where a similar field only used for remote browser used to live
before my Fission zoom changes:

https://searchfox.org/mozilla-central/rev/9642a113737b556750228965bb9cbd3aaa655e22/toolkit/content/widgets/browser-custom-element.js#346

That avoids having two sources of truth. This might be better, still
unsure how I feel about it compared to the current setup.

Flags: needinfo?(emilio)
Blocks: 1634655
Pushed by ealvarez@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/626d2d4c0fd6
Move _fullZoom initialization to resetFields() rather than the browser constructor. r=Gijs
https://hg.mozilla.org/integration/autoland/rev/be474ea875e8
Alternative approach: Make use of the member only for RDM. r=Gijs
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla77
Flags: qe-verify+

Verified - Fixed in Firefox 77.0b1 and latest Nightly 78.0a1 (20200505) using Windows 10 and Ubuntu 18.04.

Status: RESOLVED → VERIFIED
Flags: qe-verify+
Regressions: 1638118
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: