Closed Bug 1176395 Opened 10 years ago Closed 10 years ago

position:sticky element jitters while scrolling with APZ

Categories

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

defect

Tracking

()

RESOLVED FIXED
mozilla45
Tracking Status
firefox45 --- fixed

People

(Reporter: kats, Assigned: botond)

References

Details

Attachments

(3 files)

Attached file Test case
OS X desktop: - Enable APZ - Load the attached test page - scroll with two-finger gesture on trackpad Expected: blue thingy doesn't jitter Actual: blue thingy jitters APZ disabled doesn't have this problem.
Note that even applying attachment 8624838 [details] [diff] [review] doesn't fix this.
It looks like to me the same thing I mentioned in: https://bugzilla.mozilla.org/show_bug.cgi?id=1133588#c12 Here's an url on the website where the background is persistently there: ipon.hu/hir/csokkenti_kaveri_apu_jainak_az_arat_az_amd/33519 But more importantly, I'm also getting the bug with the test case and I'm on windows 8.1 x64 and an Nvidia gts450.
Priority: -- → P1
Also happens on Linux. I'm going to have a look at this.
Assignee: nobody → botond
OS: Mac OS X → All
While investigating this with Matt, we discovered that when - as in this testcase - an element is both position:sticky and transformed, the transform is applied outside of the position:sticky. We believe this is wrong; the position:sticky should be outside the transform. (Conceptually, the transformed content is position:sticky.) This decision is made in nsIFrame::BuildDisplayListForStackingContext(), which wraps the display list into an nsDisplayStickyPosition first and then an nsDisplayTransform. Switching this order gives us the desired semantics, and fixes this bug.
Bug 1176395 - When an element is both position:sticky and transformed, apply the position:sticky outside the transform. r=roc Conceptually, the transformed content is position:sticky. position:fixed behaves similarly.
Attachment #8697418 - Flags: review?(roc)
Bug 1176395 - Reftest. r=mstange
Attachment #8697419 - Flags: review?(mstange)
Comment on attachment 8697418 [details] MozReview Request: Bug 1176395 - When an element is both position:sticky and transformed, apply the position:sticky outside the transform. r=roc https://reviewboard.mozilla.org/r/27605/#review24873
Attachment #8697418 - Flags: review?(roc) → review+
Attachment #8697419 - Flags: review?(mstange)
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla45
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: