Open Bug 1262264 Opened 9 years ago Updated 6 months ago

Improve APZ minimap rendering behaviour for subframes with tall viewports

Categories

(Core :: Panning and Zooming, defect, P3)

48 Branch
defect

Tracking

()

Tracking Status
firefox48 --- affected

People

(Reporter: kats, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: polish, Whiteboard: [gfx-noted])

Attachments

(1 file)

+++ This bug was initially created as a clone of Bug #1259529 +++ Bug 1259529 improved the minimap rendering in subframes somewhat, but on some pages it's still not useful. The specific page I have in mind is http://www.sjsu.edu/openuniversity/schedule/. When drawing the minimap, we use either the transformed aClipRect, or the layer's GetEffectiveClipRect(), if there is one, to bound the minimap. However on this page, the GetEffectiveClipRect() is ginormous, and the aClipRect is the one we want. So really I think we want to intersect the two or something, and use that as the bound of the minimap, so that it fits into the smallest clip applied to the layer. I'll play around with this.
There's also a second issue where the minimap for the parent frame gets drawn into the subframe as well, because there are multiple layers with the outer metrics.
This fixes the issue in comment 0. I can't think of an easy way to fix the issue in comment 1.
I don't think this patch is worth landing without fixing the issue in comment 1, because the minimap is useless either way without that. However I don't have any good solutions in mind and I'm not actively working on this, so unassigning.
Assignee: bugmail.mozilla → nobody
Blocks: 1604282
Severity: normal → S3

The issue discussed in comment 1 has been resolved by the WebRender implementation of the minimap in bug 1604280.

The issue discussed in comment 0 remains valid. While the structure of the page at http://www.sjsu.edu/openuniversity/schedule/ has changed since the time of filing the bug and no longer contains a subframe, the earlier page can be seen at https://web.archive.org/web/20160420064916/http://www.sjsu.edu/openuniversity/schedule/. Basically, it has a subframe whose viewport is taller than the browser window, and the minimap is sized to fit the subframe viewport, which means it is also taller than the browser window and so only part of the minimap is visible at a given time.

A solution to this would involve scaling the minimap to the intersection of the subframe viewport and any enclosing viewports (similar to what the attached patch was trying to do in the Layers implementation).

Depends on: 1604280
Summary: Improve APZ minimap rendering behaviour for subframes → Improve APZ minimap rendering behaviour for subframes with tall viewports
Component: Graphics: Layers → Panning and Zooming
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: