Wayland-Protocols 1.36 release

Wayland-protocols 1.36-paketet har släppts, som innehåller en uppsättning protokoll och tillägg som kompletterar funktionerna i bas-Wayland-protokollet och ger de funktioner som krävs för att bygga sammansatta servrar och användarmiljöer.

Alla protokoll går sekventiellt igenom tre faser - utveckling, testning och stabilisering. Efter att ha slutfört utvecklingsstadiet (den "instabila" kategorin), placeras protokollet i "staging"-grenen och inkluderas officiellt i wayland-protokollen, och efter att testningen är klar, flyttas den till den stabila kategorin. Protokoll från kategorin "staging" kan redan användas i sammansatta servrar och klienter där relaterad funktionalitet krävs. Till skillnad från kategorin "instabil" förbjuder "staging" att göra ändringar som bryter mot kompatibiliteten, men om problem och brister upptäcks under testning utesluts inte ersättning med en ny betydande version av protokollet eller ett annat Wayland-tillägg.

I den nya versionen:

  • xdg-toplevel-icon-protokollet har lagts till i kategorin "staging", utformat för att binda en ikon till ett fönster på översta nivån.
  • Protokollen ext-image-capture-source och ext-image-copy-capture har lagts till i kategorin "staging" för att organisera infångningen av innehåll som visas på skärmen.

För närvarande inkluderar wayland-protokoll följande stabila protokoll, som ger bakåtkompatibilitet:

  • "viewporter" - låter klienten utföra skalnings- och ytkantskärningsåtgärder på serversidan.
  • "presentation-time" - ger videovisning.
  • "xdg-shell" är ett gränssnitt för att skapa och interagera med ytor som fönster, vilket låter dig flytta dem runt på skärmen, minimera, expandera, ändra storlek osv.
  • "linux-dmabuf" - ger delning av flera grafikkort med DMA-BUF-teknik (låter dig skapa en wl_buffer baserad på DMA-BUF).
  • "surfplatta" - organisering av input från grafiska surfplattor.

Protokoll testade i "staging"-grenen:

  • drm-lease - tillhandahåller de resurser som krävs för att generera en stereobild med olika buffertar för vänster och höger öga vid utmatning till virtual reality-headset.
  • "ext-session-lock" - definierar ett sätt att låsa en session, till exempel när skärmsläckaren körs eller autentiseringsdialogrutan visas.
  • "single-pixel-buffer" - låter dig skapa enpixelbuffertar som inkluderar fyra 32-bitars RGBA-värden.
  • "xdg-activation" - låter dig överföra fokus mellan olika ytor på första nivån (till exempel, med hjälp av xdg-activation kan en applikation byta fokus till en annan).
  • innehållstyp - låter klienter skicka sammansatta server Information om innehållet som visas som kan användas för att optimera innehållsmedvetet beteende, till exempel att ställa in specifika DRM-egenskaper som "innehållstyp". Stöd för följande innehållstyper deklareras: ingen (ingen datatypsinformation), foto (digital fotoutdata som kräver minimal bearbetning), video (video eller animering, kräver mer exakt synkronisering för att undvika hackning) och spel (spelstart, kräver utdata med minimal latens).
  • ext-idle-notify - Tillåter sammansatta servrar att skicka meddelanden till klienter om användarinaktivitet, vilket kan användas för att aktivera ytterligare energisparlägen efter en viss tids inaktivitet.
  • rivkontroll - låter dig inaktivera vertikal synkronisering (VSync) med en vertikal dämpningspuls i helskärmsapplikationer, som används för att skydda mot rivning i utdata. I multimediaapplikationer är artefakter på grund av rivning en oönskad effekt, men i spelprogram kan artefakter tolereras om hanteringen av dem orsakar ytterligare förseningar.
  • ext-foreign-toplevel-list - Hämtar information om ytor placerade på översta nivån, vilket gör att du kan organisera fönster för att docka ovanpå annat innehåll, till exempel för att fästa dina egna paneler och fönsteromkopplare.
  • security-context - låter dig identifiera klienter med hjälp av sandlådeisolering. En klient kan registrera en ny anslutning till en Wayland-baserad sammansatt server och bifoga en säkerhetskontext till den, varefter den sammansatta hanteraren kommer att begränsa de möjligheter som är tillgängliga för den etablerade anslutningen baserat på det angivna säkerhetskontexten.
  • cursor-shape är ett alternativt sätt att anpassa markörens utseende, baserat på att skicka en serie av markörbilder istället för att knäppa till en yta (wl_surface).
  • "ext-transient-seat" är utformat för att skapa tillfälliga oberoende sessioner (platser) avsedda för användning med virtuella inmatningsenheter. Till exempel, när man implementerar möjligheten att ansluta till fjärrskrivbord Protokollet gör det möjligt att skapa en separat session med ett virtuellt tangentbord och en mus för varje användare.
  • "xdg-toplevel-drag" - utökar "dra & släpp"-mekanismen med möjligheten att fästa fönster på toppnivå till en dragoperation, som till exempel kan användas för att organisera dragning av verktygsfält eller webbläsarflikar med musen. Det nya protokollet låter dig skapa löstagbara delar av ett fönster som, när de dras från det fönstret, blir nya fönster och kan flyttas ovanpå det befintliga fönstret innan de sätts fast igen.
  • "xdg-dialog" - låter dig tilldela dialogspecifika attribut till ytor på toppnivå, till exempel kan du skapa modala dialoger som blockerar användarinteraktion med resten av gränssnittet.
  • "linux-drm-syncobj" - Tillhandahåller verktyg för att explicit synkronisera buffertar med DRM (Direct Rendering Manager) synkroniseringsobjekt. Det antas att i samband med synkronisering när man drar till en buffert, kommer det föreslagna protokollet att förbättra arbetet med drivrutiner baserade på Vulkan- och OpenGL-grafik-API:erna (implementeringen är baserad på hanterare i drivrutinerna). Det nya protokollet gör det möjligt att säkerställa att en återgivningsoperation till en buffert är klar innan den sammansatta hanteraren återger bufferten.
  • alpha-modifier, som tillåter klienter att ändra nivån av transparens på ytan och överföra operationer för att säkerställa transparens till sidan av den sammansatta servern, vilket i sin tur kan omdirigera dessa operationer till KMS.

Protokoll som utvecklas i den "instabila" grenen:

  • "fullscreen-shell" - kontroll över arbetet i helskärmsläge.
  • "input-metod" - bearbetning av inmatningsmetoder.
  • "idle-inhibit" - blockerar start av skärmsläckaren (skärmsläckare).
  • "input-timestamps" - tidsstämplar för ingångshändelser.
  • "tangentbord-shortcuts-inhibit" - styr bifogningen av kortkommandon och snabbtangenter.
  • "linux-explicit-synchronization" är en Linux-specifik mekanism för synkronisering av ytbundna buffertar.
  • "pekargester" - styrning från pekskärmar.
  • "pekare begränsningar" - pekare begränsningar (blockering).
  • "primärt urval" - i analogi med X11 säkerställer det driften av det primära urklippet (primärt urval), från vilken information vanligtvis infogas med den mellersta musknappen.
  • "relativa pekarhändelser" - relativa pekarhändelser.
  • "textinmatning" - organisation av textinmatning.
  • "xdg-foreign" är ett gränssnitt för att interagera med ytorna på "grannklienten".
  • "xdg-decoration" - rendering av fönsterdekorationer på serversidan.
  • "xdg-output" - ytterligare information om videoutgången (används för fraktionerad skalning).
  • "xwayland-keyboard-grab" - fånga indata i XWayland-applikationer.
  • Källa: opennet.ru

Lägg en kommentar