Add missing toUTC() conversions in the preview generator.

Without these conversions, modification timestamps on
backend-generated preview files are reported in local time, but
interpreted by the frontend as UTC.  The frontend then converts this
to local time and uses that to set the modification timestamp of the
locally cached preview, effectively back-dating the cached file in
most time zones.  This messes up date comparison logic for determining
whether to regenerate or reload the preview image.
(cherry picked from commit ad18e3d69c19ab6e197e15d285844ccb49e16795)
Handle system keypress events during playback.  Refs #11881.
(cherry picked from commit b83e60520062cd338f2b952a8b8bc7aeb0260b27)
Merge remote-tracking branch 'origin/fixes/0.26' into fixes/0.26