[non WebRender] OOP iframe contents gets incorrectly minus offset-ed without layerization on Fission
Categories
(Core :: Panning and Zooming, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox86 | --- | fixed |
People
(Reporter: hiro, Assigned: hiro)
References
(Blocks 2 open bugs)
Details
(Whiteboard: [fission:non-qr])
Attachments
(3 files, 1 obsolete file)
Steps to reproduce;
- Enable fission and disable WebRender
- Open the attaching file
- Pinch zoom in
- The contents in the iframe will go outside the iframe's viewport
If the iframe has will-change: transform
style, it works properly.
Assignee | ||
Comment 1•3 years ago
|
||
Probably this is not a high priority issue for Fission because it only happens without WebRender.
Assignee | ||
Updated•3 years ago
|
Comment 2•3 years ago
|
||
Fission Future. We only support Fission with WebRender for now.
Comment 3•3 years ago
|
||
S4 for a bug in a configuration we are not intending to ship.
Assignee | ||
Comment 4•3 years ago
|
||
I happened to notice where the problem underlies. The problem is here in nsDisplayRemote::BuildLayer to get the remote iframe offset. When the desktop zoom is applied, the offset should be multiplied by the zoom value.
Attaching file is a fix for simple OOP iframe case, it doesn't fix nested iframe cases unfortunately we need a way to get the desktop zoom value in OOP contents. I will introduce the way in bug 1649447.
An interesting thing (at least for me) is that we use the same offset for WebRender as well, but the rendering results on WebRender looks correct. (note that hit testing is incorrect on WebRender).
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 5•3 years ago
|
||
The issue is not a desktop zoom specific issue, it's an issue that we don't scale the offset to the iframe because we use PreScale. Using PostScale seems to fix this issue.
Assignee | ||
Comment 6•3 years ago
|
||
When the iframe is inside a scaled container, the offset to the reference frame
needs to be scaled.
This change fixes both a rendering issue (bug 1682197) and a hit-testing issue
(bug 1682200) altogether for non WebRender.
Assignee | ||
Updated•3 years ago
|
Pushed by hikezoe.birchill@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1f6d62f03dd7 Scale the offset to remote iframe in nsDisplayRemote::BuildLayer. r=mattwoodrow
Comment 8•3 years ago
|
||
bugherder |
Description
•