Opublikowano wydanie pakietu wayland-protocols 1.21, zawierającego zestaw protokołów i rozszerzeń, które uzupełniają możliwości podstawowego protokołu Wayland oraz zapewniają funkcje niezbędne do budowy serwerów kompozytowych i środowisk użytkownika.
Rozpoczynając od wydania 1.21, etap rozwoju protokołów 'unstable' zastąpiono na 'staging', aby uprościć proces stabilizacji protokołów, które przeszły testy w środowiskach roboczych. Wszystkie protokoły przechodzą kolejno trzy etapy — rozwój, testy i stabilizację. Po zakończeniu etapu rozwoju protokół trafia do gałęzi 'staging' i wchodzi w skład pakietu wayland-protocols, a po zakończeniu testów zostaje przeniesiony do kategorii stabilnych. Protokoły z kategorii 'staging' można już stosować w kompozycjach serwerach i klientach, gdzie wymagana jest związana z nimi funkcjonalność. W kategorii 'staging' zabronione jest wprowadzanie zmian naruszających zgodność, jednak w przypadku wykrycia problemów i niedociągnięć podczas testów możliwa jest wymiana na nową, znaczącą wersję protokołu lub inne rozszerzenie Wayland.
W nowej wersji wprowadzono możliwość instalacji z wykorzystaniem systemu budowy Meson zamiast autotools. W przyszłości planuje się całkowite zaprzestanie wsparcia dla autotools. Nowy protokół xdg-activation został dodany do kategorii staging, umożliwiający przesyłanie fokusu między różnymi powierzchniami pierwszego poziomu. Na przykład za pomocą xdg-activation jeden interfejs uruchamiania aplikacji może przekazać fokus innemu interfejsowi, lub jedna aplikacja może przełączyć fokus na drugą. Obsługa xdg-activation została już zrealizowana dla Qt, GTK, wlroots, Mutter i KWin.
Obecnie w skład zestawu wayland-protocols wchodzą następujące stabilne protokoły, które zapewniają zgodność wsteczną:
- viewporter” — umożliwia klientowi działania związane ze skalowaniem i przycinaniem krawędzi powierzchni po stronie klienta. serwera.
- ‘presentation time’ — zapewnia wyświetlanie video.
- „xdg-shell” — interfejs do tworzenia i interakcji z powierzchniami jak z oknami, co pozwala na ich przemieszczanie po ekranie, minimalizowanie, maksymalizowanie, zmienianie rozmiaru itd.
Protokoły testowane w gałęzi «staging»:
- ‘fullscreen-shell’ — zarządzanie pracą w trybie pełnoekranowym;
- ‘input-method’ — obsługa metod wejścia;
- ‘idle-inhibit’ — blokowanie uruchamiania wygaszacza ekranu;
- ‘input-timestamps’ — znaczniki czasowe dla zdarzeń wejściowych;
- ‘linux-dmabuf’ — współdzielenie wielu kart graficznych za pomocą technologii DMABuff;
- ‘text-input’ — organizacja wprowadzania tekstu;
- ‘pointer-gestures’ — zarządzanie z ekranów dotykowych;
- ‘relative pointer events’ — względne zdarzenia wskaźników;
- ‘pointer constraints’ — ograniczenia wskaźników (blokada);
- „tablet” — wsparcie dla wejścia z tabletów.
- ‘xdg-foreign’ — interfejs współpracy z powierzchniami 'sąsiedniego' klienta;
- «xdg-decoration» — renderowanie dekoracji okien po stronie serwera;
- «xdg-output» — dodatkowe informacje o wyjściu wideo (używane do skalowania ułamkowego);
- «xwayland-keyboard-grab» — przechwytywanie wejścia w aplikacjach XWayland.
- primary-selection — na wzór X11 zapewnia działanie podstawowego schowka (primary selection), wklejanie informacji z którego zazwyczaj odbywa się za pomocą środkowego przycisku myszy;
- linux-explicit-synchronization — specyficzny dla Linuxa mechanizm synchronizacji buforów powiązany z powierzchnią.
- xdg-activation — umożliwia przeniesienie fokusu między różnymi powierzchniami pierwszego poziomu (na przykład, za pomocą xdg-activation jedno aplikacja może przełączyć fokus na inną).
Źródło: opennet.ru
