clutter: Smooth out master clock to smooth visuals
authorDaniel van Vugt <daniel.van.vugt@canonical.com>
Fri, 16 Feb 2018 08:50:59 +0000 (02:50 -0600)
committerSimon McVittie <smcv@debian.org>
Tue, 31 Jul 2018 14:35:03 +0000 (15:35 +0100)
commitbb7dcd7926389f2b8f06caf009822370c1ed79fd
tree99758ee93a5982597d6773f0a74359b099d4b68f
parenta93c36fd66148d680e0637970413c8aead0a033c
clutter: Smooth out master clock to smooth visuals

Clutter's master clock was jittery because it included errors in cur_tick
such as dispatch delays due to other sources. Dispatch could also occur up
to 1ms early since GSource can only be timed to the millisecond. All of this
could impact the visual smoothness of animations as they are displayed on
the steady interval of the monitor, but spacially moving in less regular
steps derived from the dispatch times.

The simple fix is to ignore any jitter in dispatch timing. Try a little
bit harder to use a precise interval that will better match the display
hardware, and smoother visuals will follow.

Bug: https://gitlab.gnome.org/GNOME/mutter/issues/25
Forwarded: https://gitlab.gnome.org/GNOME/mutter/merge_requests/70

Gbp-Pq: Name clutter-Smooth-out-master-clock-to-smooth-visuals.patch
clutter/clutter/clutter-master-clock-default.c