Closed Bug 1525805 Opened 5 years ago Closed 5 years ago

The floating text icon in reader mode scrolls away

Categories

(Firefox for Android Graveyard :: Reader View, defect, P2)

Firefox 67
All
Android
defect

Tracking

(firefox65 unaffected, firefox66 unaffected, firefox67+ fixed)

RESOLVED FIXED
Firefox 67
Tracking Status
firefox65 --- unaffected
firefox66 --- unaffected
firefox67 + fixed

People

(Reporter: kats, Assigned: hiro)

References

()

Details

(Keywords: regression)

Attachments

(2 files)

The floating text settings icon in reader mode is fixed position and the fixed position implementation had changed. So that will probably need reimplementation.

Keywords: regression
OS: Unspecified → Android
Hardware: Unspecified → All
See Also: → 1525836

Doesn't seem to happen on every page, so here is one where this is observable for me:
https://www.hq.nasa.gov/office/pao/History/SP-4204/ch1-3.html

Blocks: 1520077
Flags: needinfo?(hikezoe)
Version: unspecified → Firefox 67

Looking at bug 1520077, would this issue be fixed by bug 1516377, too?

I don't think so. I think bug 1516377 makes this issue more worse. The site in comment 1 overflows on my Android phone (Sony D5803) because some images are wider than ICB and the reader mode specifies 'overflow:hidden' there? If so, the icon is attached at the right bottom of the layout viewport by bug 1516377, so it might not be in view. Bug 1519013 prevents the overflow in the case of this particular site, but even so there might be other sites that affected by 1520077.

Keep NI to me for now.

The style for the icon is specified by this '.toolbar' class? Though I don't quite understand how the icon is positioned at the right bottom of the display because the left:0 is specified (I thought right:0 is specified instead), it doesn't matter for now since I suppose expanding the layout viewport to the vertical direction rarely happens.

Flags: needinfo?(hikezoe)

Anyway, the overflow is a real problem now, bug 1519013 should fix it. That's said, I am not sure it is desirable for the reader mode.

Gosh! I did totally misunderstand this bug. The icon will be mis-placed by bug 1516377, it will only be seen at the bottom of the content.

Just using position:stick instead of position:fixed fixes the issue?

If the layout viewport is expected to remain as it is now (i.e. possibly larger than the screen size), we'd need to fix bug 1525967 as well then.

The layout viewport should be equal in size to the visual viewport when you're zoomed out as far as you can.

On the page from comment 1, you can't zoom out, so I would expect the two viewports to match in size, and therefore fixed-position elements to remain fixed to the visual viewport.

It would be good to understand why that's not happening.

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

The layout viewport should be equal in size to the visual viewport when you're zoomed out as far as you can.

On the page from comment 1, you can't zoom out, so I would expect the two viewports to match in size, and therefore fixed-position elements to remain fixed to the visual viewport.

It would be good to understand why that's not happening.

I am not sure this is the answer to your question. The reader mode (or the site) specifies user-scalable=no and the site is not automatically scaled down because, I guess, loading the wider images are generally done after the initial paint. Anyway, I've confirmed that bug 1519013 fixes the overflow issue on the site.

Or you mean in the case of user-scalable=no we should disallow expanding the layout viewport?

(In reply to Hiroyuki Ikezoe (:hiro) from comment #10)

Or you mean in the case of user-scalable=no we should disallow expanding the layout viewport?

We should check Chrome's behaviour, but intuitively, I would think that user-scalable=no would play a role in determining the "mininum scale" used to calculate the "minimum scale size". That is, on a page with user-scalable=no, I would expect the "minimum scale" to be the scale at which the page is loaded (and which the user cannot then change).

Don't forget that we optionally allow overriding user-scalable=no, so we still need to behave in a sane way if the user scales the page anyway (or use the effective user-scalable value, taking into account the user override).

Tracking for 67, if this is not fixed during the nightly cycle, I'll accept an uplifted patch early in the beta cycle.

P2 as discussed during triage.

Priority: -- → P2

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

(In reply to Hiroyuki Ikezoe (:hiro) from comment #10)

Or you mean in the case of user-scalable=no we should disallow expanding the layout viewport?

We should check Chrome's behaviour, but intuitively, I would think that user-scalable=no would play a role in determining the "mininum scale" used to calculate the "minimum scale size". That is, on a page with user-scalable=no, I would expect the "minimum scale" to be the scale at which the page is loaded (and which the user cannot then change).

You are totally right. I should have checked Chrome's behavior first.

Surprisingly, Chrome doesn't allow using the minimum scale size for the content having user-scalable=no. (I did also expect the page disallow scaling after the minimum scale is applied).

Anyway, to fix this reader mode issue, we can simply skip applying the minimum scale for user-scalable=no contents.

Assignee: nobody → hikezoe
Status: NEW → ASSIGNED

Oops, I did forget about JanH's comment. We also need to change aboutReader.css in the case where the user changes the setting (but hopefully it can be done in a later bug).

See Also: → 1527561

Bug 1525948 should improve the behaviour here, because it keeps the layout viewport's aspect ratio locked to that of the visual viewport. So, if the article content isn't wider than the screen, the layout viewport height won't be taller, either.

For a full solution, we should still factor user-scalable=no into the minimum scale size.

Huh? I thought I did push the fix to Phabricator last week..

https://treeherder.mozilla.org/#/jobs?repo=try&revision=5bfd997c08e524c69a7dbf92e6e3f47d5d89c948

I am not sure whether an additional reftest for the case where initial-scale is specified works on Windows or not.

Pushed by hikezoe@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/931ffb6a2a7a
Don't apply the minimum scale size if user-scalable=no is specified. r=botond
Backout by ncsoregi@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/9b7598cd4319
Backed out changeset 931ffb6a2a7a by request. CLOSED TREE
Pushed by hikezoe@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/75260b774b5c
Don't apply the minimum scale size if user-scalable=no is specified. r=botond
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 67
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: