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)
Core
Panning and Zooming
Tracking
()
RESOLVED
FIXED
mozilla45
Tracking | Status | |
---|---|---|
firefox45 | --- | fixed |
People
(Reporter: kats, Assigned: botond)
References
Details
Attachments
(3 files)
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.
Reporter | ||
Comment 1•10 years ago
|
||
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.
Reporter | ||
Updated•10 years ago
|
Updated•10 years ago
|
Priority: -- → P1
Assignee | ||
Comment 3•10 years ago
|
||
Also happens on Linux. I'm going to have a look at this.
Assignee: nobody → botond
OS: Mac OS X → All
Assignee | ||
Comment 4•10 years ago
|
||
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.
Assignee | ||
Comment 5•10 years ago
|
||
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)
Assignee | ||
Comment 6•10 years ago
|
||
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+
Comment on attachment 8697419 [details]
MozReview Request: Bug 1176395 - Reftest. r=mstange
https://reviewboard.mozilla.org/r/27607/#review24875
Attachment #8697419 -
Flags: review+
Assignee | ||
Comment 9•10 years ago
|
||
Try push good:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=8790273a2bc3
Landed (with test as r=roc).
Comment 10•10 years ago
|
||
Assignee | ||
Updated•10 years ago
|
Attachment #8697419 -
Flags: review?(mstange)
Comment 11•10 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/a64252105705
https://hg.mozilla.org/mozilla-central/rev/2b827b7841f6
Status: NEW → RESOLVED
Closed: 10 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
•