Skip to content

platforms/x11: Disable swap events by default on Intel

Some users reported performances issues after recent compositing scheduling changes, in particular animations being laggy.

The issue is that sometimes it may take more than a vblank interval for a buffer swap to complete. Previously, compositing was driven by a timer and it wasn't synchronized to vblanks. If some frame is running late, the compositor will just start painting a new frame, i.e. the screen will be rendered triple buffered.

This change disables the swap events code path on Intel to restore the previous behavior. Unfortunately, that may add an extra frame of latency.

The swap events code path can be enabled explicitly on Intel by setting the KWIN_USE_INTEL_SWAP_EVENT environment variable to 1.

Merge request reports