Utgitt versjon av wayland-protocols 1.31, som inneholder et sett med protokoller og utvidelser som supplerer funksjonaliteten til den grunnleggende Wayland-protokollen og gir nĂždvendige muligheter for Ă„ bygge komposittservere og brukergrensesnitt.
Alle protokoller gĂ„r gjennom tre faser â utvikling, testing og stabilisering. Etter fullfĂžring av utviklingsfasen (kategori «unstable») settes protokollen inn i «staging»-grenen og inkluderes offisielt i settet med wayland-protocols, og etter fullfĂžrt testing flyttes den til stabil kategori. Protokoller i «staging»-kategorien kan allerede brukes i komposittservere og klienter hvor tilhĂžrende funksjonalitet er nĂždvendig. I motsetning til kategorien «unstable» er det i «staging» forbudt Ă„ gjĂžre endringer som bryter med kompatibiliteten, men ved oppdagelse av problemer og mangler under testing kan det bli aktuelt Ă„ bytte ut protokollen med en ny betydelig versjon eller et annet Wayland-utvidelse.
Den nye versjonen ble publisert en uke etter utgivelsen av Wayland-Protocols 1.30, som la til stÞtte for tearing-control-protokollen for Ä slÄ av vertikal synkronisering. I versjon 1.31 er protokollen fractional-scale lagt til i kategorien «staging», som gjÞr at komposittbehandleren kan sende ikke-heltallige verdier for skalering av overflater, noe som lar klienten bestemme en mer nÞyaktig stÞrrelse pÄ buffere for wp_viewport-objekter sammenlignet med Ä sende avrundede skalaopplysninger. Implementasjoner av fractional-scale-protokollen er klare for wlroots, KWin og glfw.
For tiden inneholder wayland-protocols fĂžlgende stabile protokoller, som sikrer bakoverkompatibilitet:
- viewporter» â lar klienten utfĂžre handlinger for skalering og beskjĂŠring av kantene til overflaten pĂ„ siden serveren.
- «presentation-time» â sikrer visning av video.
- «xdg-shell» â et grensesnitt for oppretting og interaksjon med flater som vinduer, som lar dem flyttes pĂ„ skjermen, minimeres, maksimeres, endres i stĂžrrelse osv.
Protokoller som testes i «staging»-grenen:
- drm-lease â gir ressursene som trengs for Ă„ lage et stereobilde med forskjellige buffere for venstre og hĂžyre Ăžye ved utdata pĂ„ virtual reality-headset.
- «ext-session-lock» â definerer midler for Ă„ lĂ„se sesjonen, for eksempel under drift av skjermsparer eller visning av autentiseringsdialog.
- «single-pixel-buffer» â lar deg opprette enkeltpikselbuffere som inkluderer fire 32-bits RGBA-verdier.
- «xdg-activation» â gir muligheten til Ă„ overfĂžre fokus mellom forskjellige toppnivĂ„overflater (for eksempel kan ett program med xdg-activation skifte fokus til et annet).
- content-type â lar klienter sende til komposittserveren server informasjon om den viste innholdet som kan brukes til Ă„ optimalisere oppfĂžrselen med tanke pĂ„ innholdet, for eksempel ved Ă„ angi spesifikke DRM-egenskaper, som «content type». Det er bekreftet stĂžtte for fĂžlgende innholdstyper: none (ingen informasjon om datatypen), photo (utgang av digitale bilder, som krever minimal behandling), video (video eller animasjon, som krever mer presis synkronisering for Ă„ unngĂ„ hakking) og game (start av spill, som krever utgang med minimal forsinkelse).
- ext-idle-notify â gir komposittservere muligheten til Ă„ sende varsler til klienter om brukerens inaktivitet, som kan brukes til Ă„ aktivere ekstra strĂžmsparingsmoduser etter en viss tid med inaktivitet.
- tearing-control â lar deg deaktivere vertikal synkronisering (VSync) med frame-dropping-puls i fullskjermsprogrammer, brukt for Ă„ hindre tearing ved visning. I multimediaapplikasjoner er dannelsen av artefakter som fĂžlge av tearing en uĂžnsket effekt, men i spillprogrammer kan det aksepteres hvis kampen mot dem fĂžrer til ekstra forsinkelser.
Protokoller utviklet i 'unstable'-grenen:
- 'fullscreen-shell' â styring av fullskjermsmodus.
- 'input-method' â hĂ„ndtering av inndatametoder.
- 'idle-inhibit' â blokkering av oppstart av skjermsparer.
- 'input-timestamps' â tidsstempler for inndatahendelser.
- 'keyboard-shortcuts-inhibit' â styring av vedheft av tastatursnarveier og hurtigtaster.
- «linux-dmabuf» - deling av flere grafikkort ved hjelp av dma-buf-teknologi.
- 'linux-explicit-synchronization' â Linux-spesifikk mekanisme for synkronisering av buffere relatert til flaten.
- 'pointer-gestures' â styring fra berĂžringsskjermer.
- 'pointer constraints' â begrensninger for pekeenheter (blokkering).
- 'primary-selection' â pĂ„ samme mĂ„te som X11, gir det mulighet for Ă„ arbeide med primĂŠr utklippstavle (primary selection), hvor innsending av informasjon vanligvis skjer med midterste museknapp.
- 'relative pointer events' â relative pekeevent.
- «tablet» â stĂžtte for inndata fra nettbrett.
- 'text-input' â organisering av tekstinngang.
- 'xdg-foreign' â grensesnitt for interaksjon med 'nabo' klientens flater.
- 'xdg-decoration' â rending av vindusdekorasjoner pĂ„ serversiden.
- 'xdg-output' â tilleggsinformasjon om videoutgang (brukes for brĂžk stĂžrrelse).
- 'xwayland-keyboard-grab' â fangst av inndata i XWayland-applikasjoner.
Kilde: opennet.ru
