Closed Bug 1622926 Opened 5 years ago Closed 5 years ago

android shows zoomed in about:support page

Categories

(GeckoView :: General, defect, P3)

76 Branch
Unspecified
Android
defect

Tracking

(firefox76 fixed)

RESOLVED FIXED
mozilla76
Tracking Status
firefox76 --- fixed

People

(Reporter: ktaeleman, Assigned: agi)

References

(Regression)

Details

(Keywords: regression)

Attachments

(3 files)

STR:

  • Enable webrender
  • Open about:support
    Notice how the page is zoomed in

Expected:

  • Page fits to screen like in OpenGL mode.

See screenshots.

I think this is a regression as I can't remember it being this way before.

@botond: Any idea what would be going on here?

Flags: needinfo?(botond)

The special thing about about:support in comparison to regular webpages is that it's loaded in the parent process rather than the content process.

So, perhaps there's something particular to the combination of WebRender + parent process related to zooming that needs hooking up.

(In reply to Kris Taeleman (:ktaeleman) from comment #0)

I think this is a regression as I can't remember it being this way before.

A regression window might be useful.

Flags: needinfo?(botond)

(In reply to Botond Ballo [:botond] from comment #3)

A regression window might be useful.

I got this regression window by running mozregression on GVE:

https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=4c3bf1eb86b9cd3051362510b3675c7d619fc4a7&tochange=245c4d1fe36f4e8812d9ffefb5cfdc9196a8c349

Flags: needinfo?(agi)

I can repro this with OpenGL compositing, too.

For example, if I run mozregression -n gve --pref gfx.webrender.force-disabled:true --launch 2020-03-16 and then navigate to about:support, it's zoomed in (and the contents of the page, if you scroll down to Graphics > Compositing, confirm that the pref had the intended effect of disabling WebRender).

It's probably from

Agi Sferro — Bug 1554302 - Restore history when switching process during navigation. r=snorp

I can take a look tomorrow (keeping the ni so I remember)

(In reply to :Agi | ⏰ PST | he/him from comment #6)

It's probably from

Agi Sferro — Bug 1554302 - Restore history when switching process during navigation. r=snorp

Confirmed, backing this patch out locally fixes the issue for me.

What's hapenning at the platform level is, with bug 1554302 applied, we are getting a call to nsIDOMWindowUtils.setRestoreResolution(), with the resolution being 3.0, which we do not get without the patch. This overrides the platform's internal calculation of what the resolution should be (which would otherwise be something like ~0.7, depending on the screen size) and results in the zoomed-in rendering.

(In reply to Botond Ballo [:botond] from comment #8)

we are getting a call to nsIDOMWindowUtils.setRestoreResolution(), with the resolution being 3.0

The call site of that in turn is in GeckoViewContentChild.js.

Yeah we restore zoom state from the previous page which is not correct.

I can reproduce on OpenGL too.

Flags: needinfo?(agi)
Summary: Webrender on android shows zoomed in about:support page → android shows zoomed in about:support page
Component: Graphics: WebRender → General
Product: Core → GeckoView

That data is not the right one anyway, since it comes from the previous page
rather than the current one.

Note: this is also broken on desktop too. It will be fixed once we move to main
process history (hopefully?).

Assignee: nobody → agi
Status: NEW → ASSIGNED
Regressed by: 1554302
Has Regression Range: --- → yes
Keywords: regression
Pushed by asferro@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/827ffc5edb15 Don't restore scrolldata and form data when switching processes. r=droeh
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla76
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: