keyboard scrolling at fixed 60fps, despite of widget.wayland_vsync.enabled
Categories
(Core :: Widget: Gtk, defect, P3)
Tracking
()
People
(Reporter: tempel.julian, Unassigned)
References
Details
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0
Steps to reproduce:
When setting widget.wayland_vsync.enabled = true, mouse scrolling happens with smooth 75fps on a 75Hz display inside a Sway Wayland session.
Actual results:
But this is not true for scrolling via keyboard arrow keys, it still looks like choppy fixed 60fps @ 75Hz.
Expected results:
Keyboard scrolling input events should be equally applied to every display refresh so that scrolling looks smooth (which it does on Xorg).
The about:support page btw. seems to be an exception: There keyboard scrolling input seems to lead to fluid 75fps/Hz scrolling. I first thought the stutter was just less noticeable than on other sites, but it probably was due to me moving the cursor, which makes keyboard scrolling stutter on that particular page for whatever reason.
Hi walmartguy,
Thanks for reporting this bug.
Since I don't have a Sway Wayland set up to test on my end, I'll add a product and component to this bug.
In the meantime, please confirm:
-
Is this bug reproducible in Nightly? You can download it from here: https://nightly.mozilla.org/ and retest the problem.
-
Does this happen with a new profile? If you still have the issue please create a new profile, you have the steps here: https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles?redirectlocale=en-US&redirectslug=Managing-profiles#w_starting-the-profile-manager
Regards,
Virginia
Reporter | ||
Comment 2•5 years ago
|
||
Yes, happens also with Nightly 73a1 2019-12-10 and fresh profile.
Comment 3•5 years ago
|
||
Kenny, I guess it's related to your patch, correct?
Comment 4•5 years ago
|
||
The overall gist should be the same as bug 1601966. Synthetic scroll movement is likely running off the synthetic global vsync source rather than the new widget-local vsync source, making it appear choppy even though it is compositing on vsync.
I'd have to dig into where the synthetic scroll movements are scheduled. Switching something over from synthetic global to widget local vsync source requires access the the (real, non-puppet) nsWindow that is used as compositing target.
Comment 5•4 years ago
|
||
Also likely a duplicate of bug 1645528, but not yet confirmed.
Comment 6•4 years ago
|
||
Julian: same here, can you confirm that it's fixed now in nightly?
Reporter | ||
Comment 7•4 years ago
|
||
It is still choppy. Though the same now applies to Xorg (both GLX and EGL backends of FF) and even Windows. Perhaps it's not just a vsync issue, but the keyboard scrolling in general is choppy (regressed)?
Comment 8•4 years ago
|
||
(In reply to walmartguy from comment #7)
It is still choppy. Though the same now applies to Xorg (both GLX and EGL backends of FF) and even Windows. Perhaps it's not just a vsync issue, but the keyboard scrolling in general is choppy (regressed)?
Hm, this is very interesting. Can I talk you into bisecting the regression (using https://mozilla.github.io/mozregression/, it makes it very easy)? :)
Unfortunately I still don't own any hardware that is capable of >60Hz refresh rates...
It would be especially interesting if either bug 1645528, bug 1681030 or bug 1684352 have anything to do with it.
Reporter | ||
Comment 9•4 years ago
|
||
It's also very stuttery with 60Hz display, the keyboard scrolling looks more like 30fps or so.
Comment 10•4 years ago
|
||
(In reply to walmartguy from comment #9)
It's also very stuttery with 60Hz display, the keyboard scrolling looks more like 30fps or so.
Hm, you are right. Did a quick bisect and got this:
12:29.62 INFO: Last good revision: cab81767be70469b780cd372ff463df59c2264e0
12:29.62 INFO: First bad revision: 32a2e59ab7260118d8d5f430e503967fad6993cf
12:29.62 INFO: Pushlog:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=cab81767be70469b780cd372ff463df59c2264e0&tochange=32a2e59ab7260118d8d5f430e503967fad6993cf
Reporter | ||
Comment 11•4 years ago
|
||
It btw. is still fluid on about:support, unless the cursor is moved while scrolling.
Comment 12•4 years ago
|
||
Does setting apz.force_disable_desktop_zooming_scrollbars:true
make it smooth again (even though with some elements getting rendered slowly)? And does it then run properly with your refresh rate?
Reporter | ||
Comment 13•4 years ago
|
||
Yes, this makes keyboard scrolling run smoothly with properly vsynced fps on Windows, Xorg and Wayland.
Comment 14•4 years ago
|
||
(In reply to walmartguy from comment #13)
Yes, this makes keyboard scrolling run smoothly with properly vsynced fps on Windows, Xorg and Wayland.
\o/
So I guess we can close this a dup of bug 1645528 once bug 1684520 is addressed.
Updated•4 years ago
|
Description
•