Closed Bug 1486695 Opened 6 years ago Closed 6 years ago

Scrolling not working in an iframe on Android.

Categories

(Core :: Layout: Scrolling and Overflow, defect, P3)

63 Branch
ARM
Android
defect

Tracking

()

VERIFIED FIXED
mozilla64
Tracking Status
firefox63 --- verified
firefox64 --- verified

People

(Reporter: karlcow, Assigned: botond)

References

()

Details

(Whiteboard: [webcompat])

Attachments

(1 file)

This is a spin-off of https://webcompat.com/issues/18316 This is a test case created by Daniel Holbert https://fiddle.jshell.net/g0Ljc9f4/show/ And the following comment https://webcompat.com/issues/18316#issuecomment-414862903 ========================== Here's a reduced testcase, with a skinnier iframe to make the "trapping" more obvious: https://jsfiddle.net/g0Ljc9f4/ Here's a version you can load on your phone (without most of the jsfiddle ui): https://fiddle.jshell.net/g0Ljc9f4/show/ STR, from that testcase: STEP 1. Try tapping to the right of the purple box, and scrolling up and down. STEP 2. Try tapping inside and scrolling up and down. STEP 3. Try tapping to the right again and scrolling up and down. Does it still work? Can you scroll to see the bottom purple border? In Firefox on Android, I'm unable to scroll the outer scrolling context in step 3 -- after I've tapped inside the iframe, that's the only piece that Firefox will let me scroll. ==========================
Flags: needinfo?(botond)
Thanks for the reduced testcase! This is a very simple page for us to be getting wrong... will investigate.
Assignee: nobody → botond
Flags: needinfo?(botond)
Looking like an issue in the scroll frame activation code during display list building / FrameLayerBuilder.
Component: Panning and Zooming → Layout: Scrolling and Overflow
And the difference in behaviour between Fennec and RDM is probably due to containerful vs. containerless scrolling.
Indeed, I can reproduce the problem on desktop (no RDM required even) if I flip layout.scroll.root-frame-containers.
We were mistakenly using it for subframe RSF's as well.
This patch is causing layout/reftests/async-scrolling/fixed-pos-scrolled-clip-4.html to fail on Android.
Comment on attachment 9011121 [details] Bug 1486695 - Only set nsDisplayListBuilder::mActiveScrolledRootForRootScrollframe for the RCD-RSF. r?mstange Markus Stange [:mstange] has approved the revision.
Attachment #9011121 - Flags: review+
Attachment #9011121 - Attachment description: Bug 1486695 - Only use the SetActiveScrolledRootForRootScrollframe() workaround for the RCD-RSF. r?mstange → Bug 1486695 - Only set nsDisplayListBuilder::mActiveScrolledRootForRootScrollframe for the RCD-RSF. r?mstange
Pushed by bballo@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/fa1831cceeae Only set nsDisplayListBuilder::mActiveScrolledRootForRootScrollframe for the RCD-RSF. r=mstange
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
Comment on attachment 9011121 [details] Bug 1486695 - Only set nsDisplayListBuilder::mActiveScrolledRootForRootScrollframe for the RCD-RSF. r?mstange Approval Request Comment [Feature/Bug causing the regression]: Likely bug 1298218 [User impact if declined]: On pages with a certain structure (iframe inside scrollable <div>), scrolling the iframe results in no longer being able to scroll the <div>. [Is this code covered by automated tests?]: This particular scenario isn't, but test coverage of the code being touched is fairly good (e.g. several previous attempts at fixing this bug that were misguided were caught by test failures). [Has the fix been verified in Nightly?]: Yes, by me. [Needs manual test from QE? If yes, steps to reproduce]: No. [List of other uplifts needed for the feature/fix]: None. [Is the change risky?]: Low risk. [Why is the change risky/not risky?]: Small, targeted, and (by now) well-understood change [String changes made/needed]: None
Attachment #9011121 - Flags: approval-mozilla-beta?
Comment on attachment 9011121 [details] Bug 1486695 - Only set nsDisplayListBuilder::mActiveScrolledRootForRootScrollframe for the RCD-RSF. r?mstange Targeted fix, uplift accepted for 63 beta 11, thanks.
Attachment #9011121 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
I have also verified this fix.
Status: RESOLVED → VERIFIED
Hardware: Unspecified → ARM
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: