Objavljeno je izdanje paketa wayland-protocols 1.31, koje sadrži skup protokola i ekstenzija koje nadopunjuju mogućnosti osnovnog protokola Wayland i pružaju funkcionalnosti potrebne za izgradnju kompozitnih servera i korisničkih okruženja.
Svi protokoli prolaze kroz tri faze — razvoj, testiranje i stabilizacija. Nakon završetka faze razvoja (kategorija „unstable”), protokol se prebacuje u granu „staging” i službeno se uključuje u skup wayland-protocols, a nakon završetka testiranja prelazi u kategoriju stabilnih. Protokoli iz kategorije „staging” već se mogu primenjivati u kompozitnim serverima i klijentima gde su potrebne odgovarajuće funkcionalnosti. Za razliku od kategorije „unstable”, u „staging” nije dozvoljeno unositi promene koje narušavaju kompatibilnost, ali u slučaju otkrivanja problema i nedostataka tokom testiranja ne isključuje se zamena novom značajnom verzijom protokola ili drugim Wayland-proširenjem.
Nova različica je objavljena teden dni po izidu Wayland-Protocols 1.30, v katerem je bila dodana podpora za protokol tearing-control za izklop vertikalne sinhronizacije. V različici 1.31 je v kategorijo „staging“ dodan protokol fractional-scale, s pomočjo katerega lahko sestavljalni upravljalnik prenaša nedisperzijske vrednosti za povečavo površin, kar omogoča naročniku, da določi natančnejšo velikost predpomnilnikov za objekte wp_viewport, v primerjavi s prenosom zaokroženih informacij o povečavi. Izvedbe protokola fractional-scale so pripravljene za wlroots, KWin in glfw.
Trenutno nabor wayland-protocols vključuje naslednje stabilne protokole, ki zagotavljajo povratno združljivost:
- viewporter“ – umožňuje klientovi provádět akce změny měřítka a ořezávání okrajů plochy na straně strežnika.
- „presentation-time“ – zajišťuje zobrazování videa.
- „xdg-shell“ — vmesnik za ustvarjanje in interakcijo s površinami kot okni, kar omogoča njihovo premikanje po zaslonu, minimiziranje, maksimiziranje, spreminjanje velikosti itd.
Protokoly testované ve větvi „staging“:
- drm-lease – poskytuje zdroje potřebné k vytváření stereoskopického obrazu s různými buffery pro levé a pravé oko při zobrazování na hemlch virtuální reality.
- „ext-session-lock“ – určuje prostředky pro zamykání sezení, například během provozu spořiče obrazovky nebo zobrazování autentizačního dialogu.
- „single-pixel-buffer“ – umožňuje vytvářet jednopixelové buffery obsahující čtyři 32bitové hodnoty RGBA.
- „xdg-activation“ – umožňuje předat fokus mezi různými plochami prvního stupně (například pomocí xdg-activation může jedna aplikace přepnout fokus na jinou).
- content-type — omogoča strankam, da posredujejo kompozitnemu strežniku podatke o predstavljenem vsebinu, ki se lahko uporabijo za optimizacijo obnašanja na podlagi vsebine, na primer, nastavitvi specifičnih lastnosti DRM, kot so „content type“. Podprti so naslednji tipi vsebine: none (brez podatkov o vrsti podatkov), photo (prikaz digitalnih fotografij, ki zahteva minimalno obdelavo), video (video ali animacija, pri čemer je potrebna natančnejša sinhronizacija za preprečitev zatikanja) in game (začetek iger, pri katerem je potrebno prikazovanje z minimalno zakasnitvijo).
- ext-idle-notify — omogoča kompozitnim strežnikom, da strankam posredujejo obvestila o neaktivnosti uporabnika, kar se lahko uporabi za aktiviranje dodatnih načinov varčevanja z energijo po določenem času neaktivnosti.
- tearing-control — omogoča onemogočitev vertikalne sinhronizacije (VSync) pri celozaslonskih aplikacijah s pulzom za ugašanje okvirjev, ki se uporablja za zaščito pred nastajanjem razpok pri prikazu (tearing). V multimedijskih aplikacijah je pojav artefaktov zaradi razpok nezaželen učinek, vendar v igrah z artefakti to lahko sprejmemo, če boj proti njim povzroča dodatne zakasnitve.
Protokoli, ki se razvijajo v veji „unstable“:
- „fullscreen-shell“ — upravljanje dela v celozaslonskem načinu.
- „input-method“ — obdelava metod vnosa.
- „idle-inhibit“ — blokiranje zagonov ekrannega varčevalnika.
- „input-timestamps“ — časovne oznake za dogodke vnosa.
- „keyboard-shortcuts-inhibit“ — upravljanje pritrjevanja kombinacij na tipkovnici in hitrih tipk.
- „linux-dmabuf“ — skupna raba več grafičnih kartic s pomočjo tehnologije dma-buf.
- „linux-explicit-synchronization“ — za Linux specifičen mehanizem sinhronizacije pomnilnika v povezavi s površino.
- „pointer-gestures“ — upravljanje s potezami na zaslonih na dotik.
- „pointer constraints“ — omejitve kazalcev (blokada).
- „primary-selection“ — po analogiji z X11 omogoča delovanje primarnega odložišča, katerega vstavljanje običajno poteka s srednjo miškino tipko.
- „relative pointer events“ — relativni dogodki kazalca.
- „tablet“ — podpora za vhodne naprave iz tabličnih računalnikov.
- „text-input“ — organizacija vnosa besedila.
- „xdg-foreign“ — vmesnik za interakcijo s površinami „sosednjega“ odjemalca.
- «xdg-decoration» — risanje okenskih dekoracij na strežniku.
- «xdg-output» — dodatne informacije o video izhodu (uporablja se za sorazmerno merjenje).
- «xwayland-keyboard-grab» — zajem vnosa v aplikacijah XWayland.
Izvor: opennet.ru
