The release of the wayland-protocols package 1.26 has been published, which includes a set of protocols and extensions that enhance the capabilities of the base Wayland protocol and provide the necessary features for building compositing servers and user environments.
All protocols go through three phases: development, testing, and stabilization. After the development stage (the 'unstable' category) is completed, the protocol is moved to the 'staging' branch and officially included in the wayland-protocols set, and after testing is completed, it is moved to the stable category. Protocols in the 'staging' category can already be used in composite servers and clients where the related functionality is required. Unlike the 'unstable' category, changes that break compatibility are prohibited in 'staging', but if issues and deficiencies are identified during testing, the replacement of the protocol with a significant new version or another Wayland extension is not excluded.
In the new version:
- The 'staging' category has been updated with the single-pixel-buffer protocol, which allows the creation of single-pixel buffers that include four 32-bit RGBA values. Using the viewporter protocol, compositing servers can scale single-pixel buffers to create uniform color surfaces of arbitrary size.
- Support for composites has been added in the xdg_shell protocol, which provides an interface for interacting with surfaces as windows, allowing surfaces to be moved across the screen, minimized, maximized, resized, etc. servers, implementing only a subset of the window management operations offered in xdg_shell. An event wm_capabilities has been proposed to convey information about the capabilities available in the composite. server The text-input protocol has been rewritten to clarify ambiguous wording and include explanations about implied behavior.
- The use of terminology defined in RFC 2119 has been mandated.
- «linux-dmabuf» allows for the sharing of multiple graphics cards using DMABuff technology.
Currently, the wayland-protocols package includes the following stable protocols that ensure backward compatibility:
- âviewporterâ â allows clients to perform actions for scaling and cropping surface edges on the server side.
- âpresentation-timeâ â provides video display.
- âxdg-shellâ â an interface for creating and interacting with surfaces as windows, allowing them to be moved across the screen, minimized, maximized, resized, etc.
Protocols currently being tested in the 'staging' branch:
- drm-lease provides the resources necessary for forming a stereo image with different buffers for the left and right eye when outputting to virtual reality headsets.
- ext-session-lock defines session lock mechanisms, such as during the screensaver operation or the display of an authentication dialog.
- single-pixel-buffer allows the creation of single-pixel buffers that include four 32-bit RGBA values.
- xdg-activation enables focus transfer between different top-level surfaces (for example, using xdg-activation, one application can shift focus to another).
Protocols being developed in the âunstableâ branch:
- «fullscreen-shell» â management of fullscreen operation.
- «input-method» â processing of input methods.
- «idle-inhibit» â prevents the screensaver (screen saver) from starting.
- «input-timestamps» â timestamps for input events.
- «keyboard-shortcuts-inhibit» â manages the attachment of keyboard shortcuts and hotkeys.
- The release of the wayland-protocols package 1.26 has been published, which includes a set of protocols and extensions that enhance the capabilities of the base Wayland protocol and provide the necessary features for building compositing.
- «linux-explicit-synchronization» â Linux-specific buffer synchronization mechanism related to surfaces.
- «pointer-gestures» â manages input from touch screens.
- «pointer constraints» â pointer restrictions (blocking).
- «primary-selection» â similar to X11, enables the primary clipboard (primary selection), where information is typically pasted using the middle mouse button.
- «relative pointer events» â relative pointer events.
- tablet - support for input from tablets.
- «text-input» â organization of text input.
- «xdg-foreign» â interface for interaction with 'foreign' client surfaces.
- «xdg-decoration» â rendering of window decorations on the server side.
- «xdg-output» â additional information about video output (used for fractional scaling).
- «xwayland-keyboard-grab» â input capture in XWayland applications.
Source: opennet.ru
