events: Compress touch update events
GTK3 often moves child windows around in response to touch gestures, such as scrolling or swipes. This leads to a problem when a frame has multiple events whose coordinates are relative to the window: the first event moves the window, then the second event has wrong coordinates. This leads to a severe jumping when scrolling or swiping when the system slows down.
GTK4 fixes this by getting rid of child windows completely, but for GTK3 we have to work around this by compressing touch update events. This isn't really suitable for upstream, but wouldn't be the worst patch we have downstream.
Fixes #8 (closed)