The release of Mir display server 2.25 has been published, which continues to be developed by Canonical, despite the abandonment of the Unity shell and the Ubuntu edition for smartphones. Mir remains in demand in Canonical's projects and is now positioned as a solution for embedded devices and the Internet of Things (IoT). The project's code is distributed under the GPLv2 license.
Mir provides a set of libraries for creating composite servers based on the Wayland protocol and includes typical functionality of window managers and display servers. The project is designed to operate across various classes of devices, from standard desktop systems to embedded devices and IoT systems. Notable projects based on Mir include the composite manager Miracle, the shell for Internet kiosks Ubuntu Frame, and the user environment Miriway.
In the new version:
- Support has been added for the Wayland extension ext-foreign-toplevel-list to obtain information about surfaces positioned at the top level (toplevel), which allow organizing window pinning over other content, for example, for connecting custom panels and application switchers.
- Support has also been added for the Wayland extension ext-data-control, enabling privileged clients to manage data processing, e.g., for implementing clipboard managers.
- Partial support has been implemented for the Wayland extensions ext-image-capture-source and ext-image-copy-capture for capturing content displayed on the screen.
- Management of Wayland extensions has been revised.
- The platform evdev-rs has been added, implementing libinput (input event handling) in Rust.
- The package mir-renderer-gl has been included in the platform, providing functionality for rendering via OpenGL.
- Cursor resize animation has been improved.
- A LocatePointer class has been added.
- ApplicationSwitcher and StandardApplicationSwitcher handlers have been added to simplify the implementation of switching between applications using Alt + tab.
- A new class FloatingWindowManager has been proposed, implementing a window manager (the old class MinimalWindowManager has been deprecated).
- The method mir::report_exception() has been added.
Source: opennet.ru
