Release 2.4.0

We’ve been improving our interfaces for graphics platforms to make them more suitable for use on hybrid systems. There’s more work to do on that front, but the new driver-quirks configuration option has proved useful in bringing up some devices.

There are a lot of “papercut” fixes to our Wayland and Xwayland support and we’ve made a number of improvements to our “Mir on X” platform.


ABI summary:

  • mirserver ABI bumped to 55
  • mirplatform ABI bumped to 22


  • Make attached surfaces respect exclusive zones
  • split mg::Platform into DisplayPlatform and RenderingPlatform
  • [gbm-kms] Add --driver-quirks option to avoid probing devices where probing crashes
  • [Wayland] Respect --enable-key-repeat with Wayland
  • [Wayland] Send timestamps with frame done event
  • [Wayland] Send timestamps with frame done event
  • [X11 platform] Add hostname to title when remote over X-forwarding (Fixes #1889)
  • [X11 platform] Port from XLib to XCB
  • [X11 platform] Don’t clamp Mir-on-X window size
  • [X11 platform] Allow resizing Mir-on-X windows

Bugs fixed:

  • Keep track of past surface states (Fixes #1979)
  • Place popups on output their anchor is on (Fixes #1408)
  • [mirplatform] Fix mirplatform.pc include dirs
  • [X11 platform] Fix cursor position on scaled outputs (Fixes #2034)
  • [X11 platform] Handle key state changes when window is not focused (Fixes #2029)
  • [XWayland] Gracefully handle XWayland errors (Fixes #1969)
  • [Wayland] Send bufferless frame callbacks after timeout (Fixes #1967)
  • [Wayland] Fix resize of layer shell surfaces (Fixes #1986)
  • [Wayland] Check for locked cursor before sending pointer movement
  • [Wayland platform] Precise (floating point) pointer events. (Fixes #1852)

I’ve pushed out Mir 2.4.0 to Fedora 33, 34 and Rawhide. It should show up in the next day or so, depending on mirror sync latency.

1 Like