Avaldatud Wayland-protokollide paketi 1.35 vÀljaanne, mis sisaldab protokollide ja laienduste komplekti, mis tÀiendab Waylandi pÔh protokolli funktsioone ja pakub vÔimalusi, mis on vajalikud komposiitserverite ja kasutajakogemuste loomiseks.
KĂ”ik protokollid lĂ€bivad jĂ€rjestikku kolm etappi â arendamine, testimine ja stabiliseerimine. PĂ€rast arendusetapi lĂ”petamist (kategooria âunstableâ) kantakse protokoll âstagingâ harusse ja lisatakse ametlikult wayland-protocols komplekti, ning pĂ€rast testimise lĂ”ppu liigutatakse see stabiilsete kategooriasse. âStagingâ kategooriast juba saab kasutada komposiitserverites ja klientides, kus on vajalik seotud funktsionaalsus. Erinevalt âunstableâ kategooriast ei tohi âstagingâ kategoorias teha muudatusi, mis rikuvad ĂŒhilduvust, kuid testimise kĂ€igus tuvastatud probleemide ja puuduste korral ei ole vĂ€listatud olulise uue versiooni protokoll vĂ”i muu Waylandi laienduse asendamine.
Uues versioonis:
- Stabiilsetesse versioonidesse on viidud protokoll tablet-v2, mis pakub vahendeid graafikaplaatide sisendi korraldamiseks.
- Uus protokoll alpha-modifier on lisatud 'staging' kategooriasse, vÔimaldades klientidel muuta pinna lÀbipaistvuse taset ning viia lÀbipaistvuse tagamise operatsioonid komposiitserveri poole, mis omakorda saab need operatsioonid KMS-ile edasi saata.
- Protokollis xdg-shell on lisatud soovitus mitte kuvada dekoratiivseid elemente vÀljaspool akna geomeetrilisi piire, kui kasutatakse akende mosaiikkompositsiooni.
Praegu sisaldab wayland-protocols jĂ€rgmisi stabiilseid protokolle, mis tagavad tagasipöördumise ĂŒhilduvuse:
- âviewporterâ â vĂ”imaldab kliendil teostada mÔÔtkava ja pindade servade lĂ”ikamise toiminguid serveri poolel.
- âpresentation-timeâ â tagab video kuvamise.
- âxdg-shellâ â liidese loomise ja pinnatasanditega nagu akendega suhtlemine, mis vĂ”imaldab nende liigutamise, minimiseerimise, maksimeerimise, suuruse muutmise jne.
- âlinux-dmabufâ â vĂ”imaldab mitme graafikakaardi jagamist DMA-BUF tehnoloogia abil (lubab luua wl_bufferi DMA-BUF-i pĂ”hjal).
- tablet - sisendi korraldamine graafikaplaatidega.
Protokollid, mis on testimisel âstagingâ harus:
- drm-lease â pakub ressursse, mis on vajalikud stereopildi loomisel, kasutades erinevaid puhvireid vasaku ja parema silma jaoks virtuaalsete prillide kuvamiseks.
- «ext-session-lock» â mÀÀrab seansilist lukustamise mehhanismi, nĂ€iteks ekraanilooja töö ajal vĂ”i autentimisdialooge avades.
- «single-pixel-buffer» â lubab luua ĂŒhe piksliga puhver, mis sisaldab nelja 32-bitist RGBA vÀÀrtust.
- «xdg-activation» â vĂ”imaldab fookuse edastamist erinevate esmaklassiliste pindade vahel (nĂ€iteks xdg-activation abil saab ĂŒks rakendus suunata tĂ€helepanu teisele).
- content-type â lubab klientidel edastada koostisosade serveri teavet kuvatava sisu kohta, mida saab kasutada sisu jĂ€rgi kĂ€itumise optimeerimiseks, nĂ€iteks spetsiifiliste DRM-omaduste, nagu «content type», vĂ€ljaselgitamiseks. Toetatud sisu tĂŒĂŒbid: none (puudub teave andme tĂŒĂŒbi kohta), photo (digitaalse foto vĂ€ljund, mis vajab minimaalset töötlemist), video (video vĂ”i animatsioon, mis vajab tĂ€iendavat tĂ€pset sĂŒnkroonimist, et vĂ€ltida viivist) ja game (mĂ€ngude kĂ€ivitamine, mis vajab minimaalset viivitust).
- ext-idle-notify â vĂ”imaldab komposiitserveritel edastada klientidele teateid kasutaja mitteaktiivsuse kohta, mida saab kasutada tĂ€iendavate energiasÀÀstureĆŸiimide aktiveerimiseks pĂ€rast teatavat aega mitteaktiivsust.
- tearing-control â lubab tĂ€ielikult ekraanil rakendustes keelata vertikaalse sĂŒnkroonimise (VSync) kaadri hÀÀldavate impulssidega, mida kasutatakse rebendite (tearing) vĂ€ltimiseks kuvamisel. Multimeedia rakendustes rebendite tĂ”ttu tekkivad artefaktid on soovimatu efekt, kuid mĂ€ngurakendustes on artefaktidega vĂ”imalik leppida, kui nende vastu vĂ”itlemine toob kaasa lisaviivitusi.
- ext-foreign-toplevel-list â vĂ”imaldab saada teavet ĂŒlalmise (toplevel) pindade kohta, mis vĂ”imaldavad korraldada akende kinnitamist muu sisu kohal, nĂ€iteks oma paneelide ja akna lĂŒlitite ĂŒhendamiseks.
- security-context â vĂ”imaldab tuvastada kliente, kes kasutavad sandbox-isoleerimist. Klient saab registreerida uue ĂŒhenduse Waylandi pĂ”hisel komposiitserveriga ja kinnitada sellele turvakonteksti, mille jĂ€rel komposiitmanager piirdub turvakonteksti alusel seatud piirangutega loodud ĂŒhenduse jaoks.
- cursor-shape â alternatiivne meetod kursori vĂ€limuse kohandamiseks, mis pĂ”hineb sarja kursori piltide edastamisel, mitte pinna (wl_surface) sidumisel.
- «ext-transient-seat» â mĂ”eldud ajutiste sĂ”ltumatute seansside (seat) loomiseks, mis on ette nĂ€htud koos virtuaalsete sisendseadmetega kasutamiseks. NĂ€iteks, kui on vĂ”imalik ĂŒhendada kauglaud protokoll vĂ”imaldab igale kasutajale eraldi seansi loomist koos virtuaalse klaviatuuri ja hiirega.
- «xdg-toplevel-drag» â laiendab «drag & drop» mehhanismi vĂ”imalusega kinnitada ĂŒlemise taseme aknaid liikumisoperatsioonile, mida saab kasutada nĂ€iteks tööriistaribade vĂ”i brauseri vahekaartide lohistamiseks. Uus protokoll vĂ”imaldab luua lahti ĂŒhendatavaid aknaosi, mis lohistamise korral muutuvad uuteks aken ja vĂ”ivad liikuda olemasoleva akna kohal enne uuesti kinnitamist.
- «xdg-dialog» â vĂ”imaldab mÀÀrata ĂŒlemise taseme pindadele dialoogide jaoks spetsiifilisi omadusi, nĂ€iteks saab luua modaalsete dialooge, mis blokeerivad kasutaja interaktsiooni ĂŒlejÀÀnud liidesega.
- «linux-drm-syncobj» â annab tööriistu sĂŒnkroonimiseks ja puhverdamiseks DRM (Direct Rendering Manager) sĂŒnkroonimisobjektide abil. Arvatakse, et sĂŒnkroonimise kontekstis puhvri joonistamisel vĂ”imaldab pakutud protokoll parandada koostööd Vulkan- ja OpenGL-pĂ”histe graafika API-de draiveritega (rakendus pĂ”hineb draiverites olevatel töötlejatel). Uus protokoll vĂ”imaldab veenduda, et puhvri joonistamise operatsioon on lĂ”petatud enne, kui koostamise haldur kuvab selle puhvri.
Protokollid, mis arendatakse «unstable» haru raames:
- «fullscreen-shell» â tĂ€ieliku ekraani reĆŸiimi haldamine.
- «input-method» â sisestusmeetodite töötlemine.
- «idle-inhibit» â ekraanilooja (screensaver) kĂ€ivitamise blokeerimine.
- «input-timestamps» â ajatempli tĂ€histamine sisendi sĂŒndmustele.
- «keyboard-shortcuts-inhibit» â klaviatuuri kombinatsioonide ja otsetee haldamine.
- «linux-explicit-synchronization» â Linuxile spetsiifiline puhverdamise sĂŒnkroonimise mehhanism pinnaga sidumisel.
- «pointer-gestures» â juhtimine puutetundlikelt ekraanidelt.
- «pointer constraints» â nĂ€idikute piirangud (blokkeerimine).
- «primary-selection» â sarnaselt X11-le vĂ”imaldab see primaarse lĂ”ikepuhvri (primary selection) töötlust, mille sisu sisestamine toimub tavaliselt keskklahvi abil.
- «relative pointer events» â suhtelised nĂ€idiku sĂŒndmused.
- «text-input» â teksti sisestamise korraldamine.
- «xdg-foreign» â liidese interaktsioon kĂ”rvalise kliendi pinnaga.
- «xdg-decoration» â akna dekoratsioonide joonistamine serveripoolsel poolel.
- «xdg-output» â tĂ€iendavad andmed videovĂ€ljundi kohta (kasutatakse murdosa suurenduseks).
- «xwayland-keyboard-grab» â sisendi haaramine XWaylandi rakendustes.
Allikas: opennet.ru
