wayland-protocols 1.21 release

The release of the wayland-protocols 1.21 package has been published, containing a set of protocols and extensions that complement the capabilities of the basic Wayland protocol and provide the capabilities necessary for building composite servers and user environments.

Starting with release 1.21, the β€œunstable” protocol development stage has been replaced by β€œstaging” in order to smooth out the stabilization process for protocols that have been tested in production environments. All protocols sequentially go through three phases - development, testing and stabilization. After completing the development stage, the protocol is placed in the β€œstaging” branch and included in the wayland-protocols set, and after testing is completed, it is moved to the stable category. Protocols from the β€œstaging” category can already be used in composite servers and clients where related functionality is required. In the β€œstaging” category, it is prohibited to make changes that violate compatibility, but if problems and shortcomings are identified during testing, replacement with a new significant version of the protocol or another Wayland extension is not excluded.

The new version includes the ability to install using the Meson build system instead of autotools. There are plans to completely stop supporting autotools in the future. A new xdg-activation protocol has been added to the staging category, allowing focus to be transferred between different first-level surfaces. For example, with xdg-activation, one application launcher interface can give focus to another interface, or one application can switch focus to another. xdg-activation support has already been implemented for Qt, GTK, wlroots, Mutter and KWin.

Wayland-protocols currently includes the following stable protocols that are backward compatible:

  • "viewporter" - allows the client to perform scaling and cropping actions on the edges of the surface on the server side.
  • "presentation time" - provides video display.
  • β€œxdg-shell” is an interface for creating and interacting with surfaces like windows, which allows them to be moved around the screen, minimized, maximized, resized, etc.

Protocols tested in the "staging" branch:

  • "fullscreen-shell" - control of work in full screen mode;
  • "input-method" - processing of input methods;
  • "idle-inhibit" - blocking the launch of the screensaver (screen saver);
  • "input-timestamps" - timestamps for input events;
  • "linux-dmabuf" - sharing multiple video cards using DMABuff technology;
  • "text-input" - organization of text input;
  • "pointer-gestures" - control from touch screens;
  • "relative pointer events" - relative pointer events;
  • "pointer constraints" - pointer constraints (blocking);
  • "tablet" - support for input from tablets.
  • "xdg-foreign" - interface for interacting with the surfaces of a "neighboring" client;
  • "xdg-decoration" - rendering window decorations on the server side;
  • "xdg-output" - additional information about the video output (used for fractional scaling);
  • "xwayland-keyboard-grab" - Capture input in XWayland applications.
  • primary-selection - by analogy with X11, it provides the primary clipboard (primary selection), the insertion of information from which is usually done with the middle mouse button;
  • linux-explicit-synchronization is a Linux-specific mechanism for synchronizing buffers in relation to a surface.
  • xdg-activation - allows you to transfer focus between different first-level surfaces (for example, using xdg-activation, one application can switch focus to another).

Source: opennet.ru

Add a comment