Pinch-zooming inwards on pages "separate" them from underlying canvas when a hidden overflow is used

VERIFIED FIXED in Firefox 14

Status

()

Firefox for Android
General
VERIFIED FIXED
6 years ago
6 years ago

People

(Reporter: aaronmt, Assigned: kats)

Tracking

({testcase})

unspecified
Firefox 15
ARM
Android
testcase
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox14 verified, firefox15 verified, blocking-fennec1.0 +)

Details

Attachments

(3 attachments)

(Reporter)

Description

6 years ago
Created attachment 615688 [details]
Nightly (04/17) - Screenshot

Currently on DuckDuckGo when one pinch-zooms outwards, the page "separates" from it's underlying white blank canvas. This is evident in the attached screenshot.

--
Samsung Galaxy Nexus (Android 4.0.4)
Nightly (04/17)
Blocks: 746185
qawanted to get a reduced test case for ddg
Keywords: qawanted
(Reporter)

Updated

6 years ago
Keywords: testcase-wanted
(Reporter)

Comment 2

6 years ago
Created attachment 615855 [details]
testcase

Pinch-zoom outwards with this test-case and see the layout separation
(Reporter)

Updated

6 years ago
Keywords: testcase-wanted
(Reporter)

Updated

6 years ago
Keywords: testcase

Comment 3

6 years ago
removing qawanted now that testcase has been added.
Keywords: qawanted
(Reporter)

Comment 4

6 years ago
Looks like the hidden overflow is the issue here?
Summary: Pinch-zooming outwards on DDG "separates" the page from its canvas → Pinch-zooming inwards on pages "separate" them from underlying canvas when a hidden overflow is used

Comment 5

6 years ago
Let us know if this is tricky and needs beta testing instead.
Assignee: nobody → tnikkel
blocking-fennec1.0: ? → +

Updated

6 years ago
Duplicate of this bug: 732119
If you give the html element a background color then the bottom right rectangle stays white, so I'm wondering what exactly it is.
(Reporter)

Updated

6 years ago
Blocks: 746995

Comment 8

6 years ago
user-scalable=no is supposed to prevent any zooming per:
https://developer.mozilla.org/en/Mobile/Viewport_meta_tag

Did we break that recently? Regression window please.
Keywords: regressionwindow-wanted
The bug happens without user-scalable=no so that is a separate issue.
(In reply to Jet Villegas (:jet) from comment #8)
> user-scalable=no is supposed to prevent any zooming per:
> https://developer.mozilla.org/en/Mobile/Viewport_meta_tag
> 
> Did we break that recently? Regression window please.

Yes, that is currently broken. Bug 707571 is tracking it. However as :tn said, that is a separate issue.
Good build: 03/17

Bad build: 03/18

Possible regression range: 
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=ecaad3ae9964&tochange=e94edfdb1f5b

--
Device: Samsung Galaxy S (Captivate)
OS: Android 2.2
Keywords: regressionwindow-wanted
Created attachment 618686 [details] [diff] [review]
Patch

(In reply to Timothy Nikkel (:tn) from comment #7)
> If you give the html element a background color then the bottom right
> rectangle stays white, so I'm wondering what exactly it is.

I've been investigating this issue indirectly via bug 735652 and bug 748526, and I believe that white rectangle is drawn by Java. By commenting out various lines in this function: http://mxr.mozilla.org/mozilla-central/source/mobile/android/base/gfx/LayerRenderer.java#574 I was able to make it go away. In latest m-c code the white rectangle is drawn by the checkerboard layer; if you comment that out it will turn black because it a "hole" in the background layer; if you comment out the line that sets the mask on the background layer the hole is filled in.

The attached patch that removes the "separation" of the layers by ensuring that the gecko root layer is transformed even if it is not scrollable.
Attachment #618686 - Flags: review?(ajuma)

Comment 13

6 years ago
Comment on attachment 618686 [details] [diff] [review]
Patch

Review of attachment 618686 [details] [diff] [review]:
-----------------------------------------------------------------

Transforming the root layer when it's not scrollable may cause other weirdness (since we don't have a displayport set in that situation). But it seems the right approach is to take this fix, and then get follow-up fixes for the other problems.
Attachment #618686 - Flags: review?(ajuma) → review+
https://hg.mozilla.org/integration/mozilla-inbound/rev/1cc5c7879c82
Assignee: tnikkel → bugmail.mozilla
status-firefox14: --- → affected
status-firefox15: --- → fixed
Target Milestone: --- → Firefox 15
https://hg.mozilla.org/mozilla-central/rev/1cc5c7879c82
Status: NEW → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
Comment on attachment 618686 [details] [diff] [review]
Patch

[Approval Request Comment]
Regression caused by (bug #): OMTC
User impact if declined: on pages with frameset or an overflow:hidden body, pinch zooming leaves the page anchored to the top-left of the screen with another white rect moving around
Testing completed (on m-c, etc.): tested locally, should probably bake on m-c for a day or two
Risk to taking this patch (and alternatives if risky): could expose other, worse, behaviour on overflow:hidden pages but i'd say low-risk.
String changes made by this patch: none
Attachment #618686 - Flags: approval-mozilla-aurora?
Attachment #618686 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+

Comment 18

6 years ago
Is there any possibility of this having caused bug 749658?
(In reply to IU from comment #18)
> Is there any possibility of this having caused bug 749658?

No, this is a mobile-only change.

Comment 20

6 years ago
On duckduckgo.com with the following build:
ftp://ftp.mozilla.org/pub/mobile/tinderbox-builds/mozilla-aurora-android/1335647503/

There is a black background you can see when you pinch zoom out.  Is this expected (ie the ignoring the user-scalable piece).
(Reporter)

Comment 21

6 years ago
(In reply to JP Rosevear [:jpr] from comment #20)
> On duckduckgo.com with the following build:
> ftp://ftp.mozilla.org/pub/mobile/tinderbox-builds/mozilla-aurora-android/
> 1335647503/
> 
> There is a black background you can see when you pinch zoom out.  Is this
> expected (ie the ignoring the user-scalable piece).

Filed bug 749741; it needs attention
This issue doesn't occur anymore on the latest Nightly and Aurora builds. Closing bug as verified fixed on:

Firefox 15.0a1 (2012-05-29)
Firefox 14.0a2 (2012-05-29)

Device: Galaxy Nexus
OS: Android 4.0.2
Status: RESOLVED → VERIFIED
status-firefox14: fixed → verified
status-firefox15: fixed → verified
You need to log in before you can comment on or make changes to this bug.