Merged today to Mutter ahead of next month’s GNOME 49 release is an important improvement for those making use of Variable Rate Refresh (VRR).
The adapted Mutter code by Red Hat engineer Michel Dänzer allows for the cursor to move at the maximum refresh rate with VRR. Dänzer explained in the merge request:
“If the fullscreen surface frame rate drops below 30 fps, allow the cursor to move at maximum refresh rate, instead of limiting it to ≤ 30 Hz.
The core changes are clutter/frame-clock: Use frame sync actor update time for VRR timeout & kms/crtc: Use VRR update time in meta_kms_crtc_determine_deadline, inspired by @Zamundaaa’s description of how KWin handles this.”
This should address various VRR issues with GNOME such as this bug report from over a year ago around low cursor frame rates when VRR is enabled.
A nice fix/improvement ahead of the big GNOME 49 release in September.