Closed
Bug 1225508
Opened 9 years ago
Closed 9 years ago
about:firefox is truncated with APZ enabled
Categories
(Core :: Layout, defect)
Tracking
()
RESOLVED
FIXED
mozilla45
Tracking | Status | |
---|---|---|
firefox45 | --- | fixed |
People
(Reporter: kats, Assigned: kats)
References
Details
Attachments
(2 files)
2.07 KB,
patch
|
Details | Diff | Splinter Review | |
1.47 KB,
patch
|
botond
:
review+
|
Details | Diff | Splinter Review |
If APZ is enabled on Fennec then about:firefox is truncated.
Assignee | ||
Updated•9 years ago
|
Assignee: nobody → bugmail.mozilla
Assignee | ||
Comment 1•9 years ago
|
||
So the problem here is that the RCD doesn't have a displayport on it, but it does have a resolution. (And more specifically, the resolution is < 1). The content has this meta tag:
width=480; initial-scale=.6667; user-scalable=no
Since the content fits in the 480 CSS pixel width (and corresponding height), it is non-scrollable and we don't put a displayport on it. The code at [1] also skips putting margins on it because APZ hasn't set a displayport on it.
However, without the displayport, layout doesn't take into account the resolution, so it only paints the area of the page that would be visible without the resolution. This results in the truncation.
[1] https://dxr.mozilla.org/mozilla-central/rev/a2f83cbe53ac4009afa4cb2b0b8f549289b23eeb/layout/base/MobileViewportManager.cpp#218
Component: Graphics, Panning and Zooming → Layout
Product: Firefox for Android → Core
Assignee | ||
Comment 2•9 years ago
|
||
One fix here is to just back out bug 1198839, but that's probably undesirable in the general case. The "correct" fix is probably in layout, to take into account the resolution when computing the dirty rect of things. I'll see if I can write that up.
Assignee | ||
Comment 3•9 years ago
|
||
This was my attempt at trying to fix it in layout, but it didn't work
Assignee | ||
Comment 4•9 years ago
|
||
This one does work, and is better than a straight backout of bug 1198839
Assignee | ||
Comment 5•9 years ago
|
||
Comment on attachment 8689088 [details] [diff] [review]
Patch
tn might have other suggestions when he comes online, but I think this is probably ok as well.
Attachment #8689088 -
Flags: review?(botond)
Comment 6•9 years ago
|
||
Comment on attachment 8689088 [details] [diff] [review]
Patch
Review of attachment 8689088 [details] [diff] [review]:
-----------------------------------------------------------------
This sounds reasonable as a workaround, but I'd like to hear from Timothy about whether we can solve the problem in Layout, which feels like the more proper solution.
Attachment #8689088 -
Flags: review?(botond) → feedback+
Assignee | ||
Comment 7•9 years ago
|
||
tn, thoughts on how to do this properly in layout?
Flags: needinfo?(tnikkel)
Comment 8•9 years ago
|
||
Hmm, is it just getting the dirty rect right that we need to support resolution without display port fully?
That might not be too bad, I can take a look. The setting a displayport workaround also seems reasonable to me.
Assignee | ||
Comment 9•9 years ago
|
||
I was assuming it was just the dirty rect that needed to be corrected. When I looked at the layer dump the visible region on the PaintedLayer was wrong (i.e. it was too small), and there might be other things in layout that need to be updated as well.
Assignee | ||
Comment 10•9 years ago
|
||
(In reply to Timothy Nikkel (:tn) from comment #9)
> This part
>
> https://hg.mozilla.org/integration/mozilla-inbound/rev/0aa2e79b9252#l4.13
>
> of bug 1224015 appears to have fixed bug 1225508 for me. This makes sense to
> me. (I tested with and without that hunk.) So I think you are good to land
> without the workaround.
I'm still seeing this issue. Note that it only manifests when the about:firefox page is NOT scrollable by default. For me, on a try or nightly build, about:firefox IS scrollable (because there's a big "Check for Updates" button) but a local build doesn't have that button and so the page is just short enough that it's not scrollable. So on a local build I see the truncation problem but not on a Nightly. My observations are specific to the Nexus 4; devices with taller screens will probably have the issue on Nightly builds as well, because the page won't be scrollable. Devices with shorter screens may never see this problem.
Assignee | ||
Comment 11•9 years ago
|
||
Comment on attachment 8689088 [details] [diff] [review]
Patch
Any objections to landing the workaround for now?
Attachment #8689088 -
Flags: feedback+ → review?(botond)
Comment 12•9 years ago
|
||
Comment on attachment 8689088 [details] [diff] [review]
Patch
Review of attachment 8689088 [details] [diff] [review]:
-----------------------------------------------------------------
No objection, as long as we're tracking the proper solution somewhere (either in a follow-up bug, or by leaving this bug open).
Attachment #8689088 -
Flags: review?(botond) → review+
Assignee | ||
Comment 13•9 years ago
|
||
Thanks! I filed bug 1228602 as a follow-up to fix it properly.
Flags: needinfo?(tnikkel)
Comment 14•9 years ago
|
||
Comment 15•9 years ago
|
||
bugherder |
Status: NEW → RESOLVED
Closed: 9 years ago
status-firefox45:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla45
You need to log in
before you can comment on or make changes to this bug.
Description
•