Wayland-Protocols 1.39 izlaiŔana ar eksperimentālo protokolu atbalstu

Ir izlaista pakete wayland-protocols 1.39, kas satur protokolu un paplaÅ”inājumu kopu, kas papildina Wayland bāzes protokolu un nodroÅ”ina kompozÄ«tu serveru un lietotāju vides veidoÅ”anai nepiecieÅ”amās iespējas.

Visi protokoli secÄ«gi iziet izstrādes, testēŔanas un stabilizācijas fāzes. Pēc izstrādes posma pabeigÅ”anas (kategorija "nestabila") protokols tiek ievietots "inscenēŔanas" zarā un oficiāli iekļauts wayland-protocols komplektā, un pēc testēŔanas pabeigÅ”anas tas tiek pārvietots uz stabilo kategoriju. Protokolus no kategorijas ā€œInscenējumsā€ jau var izmantot saliktos serveros un klientos, kur nepiecieÅ”ama saistÄ«ta funkcionalitāte. AtŔķirÄ«bā no kategorijas ā€œnestabilsā€, ā€œinscenējumsā€ aizliedz veikt izmaiņas, kas pārkāpj saderÄ«bu, taču, ja testēŔanas laikā tiek konstatētas problēmas un nepilnÄ«bas, nav izslēgta aizstāŔana ar jaunu nozÄ«mÄ«gu protokola versiju vai citu Wayland paplaÅ”inājumu.

Jaunā versija pievieno papildu protokolu veicināŔanas fāzi - ā€œeksperimentāloā€, kuras mērÄ·is ir samazināt ŔķērŔļus protokolu iekļauÅ”anai Wayland-Protocols komplektā, paātrināt protokolu piegādi izstrādātājiem un stimulēt agrÄ«nu ievieÅ”anu esoÅ”ajos projektos. Jaunais posms atbrÄ«vos protokolu izstrādātājus no garām diskusijām un birokrātijas, pirms tie tiks pieņemti Veilendas protokolos.

Ja, lai protokols nonāktu ā€œinscenēŔanasā€ fāzē, ir nepiecieÅ”ams izveidot atbalsta komandu un saņemt noteiktu skaitu apstiprinājumu (ACK) no pārskatīŔanas dalÄ«bniekiem, tad, lai ieietu ā€œeksperimentālajÄā€ fāzē, iebildumu neesamÄ«ba. (NACK) divu nedēļu pārskata periodā ir pietiekami. ā€œEksperimentālajÄā€ fāzē ir atļauts veikt izmaiņas, kas pārkāpj saderÄ«bu, un pievienot ā€œneapstrādātusā€ protokolus, kurus var pakāpeniski novest lÄ«dz pareizajam lÄ«menim.

Kategorijai ā€œiestudējumsā€ ir pievienoti Ŕādi protokoli:

  • ext-data-control — ļauj priviliģētiem klientiem kontrolēt datu apstrādi, piemēram, lai ieviestu starpliktuves pārvaldniekus.
  • ext-workspace — Ä«steno koncepciju virtuālie darbvirsmas un piedāvā notikumus ar informāciju par darbvirsmu stāvokli, kā arÄ« iespēju aktivizēt un deaktivizēt darbvirsmas. Protokolu var izmantot, lai izveidotu informācijas paneļus un indikatorus, kas parāda pieejamo virtuālo darbvirsmu sarakstu un ļauj pārslēgties starp tiem.

PaŔlaik wayland-protocols ietver Ŕādus stabilus protokolus, kas nodroŔina atpakaļejoŔu saderību:

  • "viewporter" - ļauj klientam veikt mērogoÅ”anas un virsmas malu apgrieÅ”anas darbÄ«bas servera pusē.
  • "prezentācijas laiks" - nodroÅ”ina video displeju.
  • ā€œxdg-shellā€ ir saskarne virsmu kā logu izveidei un mijiedarbÄ«bai ar tām, kas ļauj tās pārvietot pa ekrānu, minimizēt, paplaÅ”ināt, mainÄ«t izmērus utt.
  • ā€œlinux-dmabufā€ - nodroÅ”ina vairāku video karÅ”u koplietoÅ”anu, izmantojot DMA-BUF tehnoloÄ£iju (ļauj izveidot wl_buffer, pamatojoties uz DMA-BUF).
  • "planÅ”etdators" - ievades organizēŔana no grafiskām planÅ”etdatoriem.

Protokoli, kas pārbaudÄ«ti ā€œiestudēŔanasā€ nozarē:

  • drm-lease - nodroÅ”ina resursus, kas nepiecieÅ”ami stereo attēla Ä£enerēŔanai ar dažādiem buferiem kreisajai un labajai acij, izvadot uz virtuālās realitātes austiņām.
  • "ext-session-lock" — definē sesijas bloķēŔanas lÄ«dzekli, piemēram, kamēr darbojas ekrānsaudzētājs vai tiek parādÄ«ts autentifikācijas dialoglodziņŔ.
  • "Single-pixel-buffer" - ļauj izveidot viena pikseļa buferus, kas ietver četras 32 bitu RGBA vērtÄ«bas.
  • ā€œxdg-activationā€ - ļauj pārsÅ«tÄ«t fokusu starp dažādām pirmā lÄ«meņa virsmām (piemēram, izmantojot xdg aktivizāciju, viena lietojumprogramma var pārslēgt fokusu uz citu).
  • content-type — ļauj klientiem nodot salikto serveris Informācija par attēloto saturu, ko var izmantot, lai optimizētu satura uztveres uzvedÄ«bu, piemēram, iestatot noteiktas DRM Ä«paŔības, piemēram, "satura tipu". Ir deklarēts atbalsts Ŕādiem satura tipiem: neviens (nav datu tipa informācijas), fotoattēls (digitālā fotoattēla izvade, kurai nepiecieÅ”ama minimāla apstrāde), video (video vai animācija, kam nepiecieÅ”ama precÄ«zāka sinhronizācija, lai izvairÄ«tos no raustīŔanās) un spēle (spēles palaiÅ”ana, kurai nepiecieÅ”ama izvade ar minimālu latentumu).
  • ext-idle-notify — ļauj saliktajiem serveriem nosÅ«tÄ«t paziņojumus klientiem par lietotāja neaktivitāti, ko var izmantot, lai aktivizētu papildu enerÄ£ijas taupīŔanas režīmus pēc noteikta neaktivitātes laika.
  • plÄ«suma kontrole - ļauj atspējot vertikālo sinhronizāciju (VSync) ar vertikālu slāpēŔanas impulsu pilnekrāna lietojumprogrammās, ko izmanto, lai aizsargātu pret izvades plÄ«sumiem. Multivides lietojumprogrammās artefakti plÄ«suma dēļ ir nevēlama parādÄ«ba, bet spēļu programmās artefakti var tikt pieļauti, ja to darbÄ«ba rada papildu aizkavi.
  • ext-foreign-toplevel-list — izgÅ«st informāciju par virsmām, kas novietotas augŔējā lÄ«menÄ«, kas ļauj sakārtot logus, lai tie piestiprinātu pie cita satura, piemēram, lai pievienotu savus paneļus un logu slēdžus.
  • droŔības konteksts — ļauj identificēt klientus, izmantojot smilÅ”kastes izolāciju. Klients var reÄ£istrēt jaunu savienojumu ar Wayland bāzes salikto serveri un pievienot tam droŔības kontekstu, pēc kura saliktais pārvaldnieks ierobežos izveidotajam savienojumam pieejamās iespējas, pamatojoties uz norādÄ«to droŔības kontekstu.
  • kursora forma ir alternatÄ«vs veids, kā pielāgot kursora izskatu, balstoties uz kursora attēlu sērijas nodoÅ”anu, nevis pieÄ·erÅ”anos virsmai (wl_surface).
  • ā€œExt-transient-seatā€ — paredzēts pagaidu neatkarÄ«gu sesiju (sēdvietu) izveidei, kas paredzētas lietoÅ”anai ar virtuālajām ievades ierÄ«cēm. Piemēram, ievieÅ”ot iespēju izveidot savienojumu ar attālo darbvirsmu, protokols ļauj katram lietotājam izveidot atseviŔķu sesiju ar virtuālo tastatÅ«ru un peli.
  • "xdg-toplevel-drag" - paplaÅ”ina "vilkÅ”anas un nomeÅ”anas" mehānismu ar iespēju vilkÅ”anas darbÄ«bai pievienot augstākā lÄ«meņa logus, ko var izmantot, piemēram, lai organizētu rÄ«kjoslu vai pārlÅ«kprogrammas cilņu vilkÅ”anu ar peli. Jaunais protokols ļauj izveidot noņemamas loga daļas, kuras, izvelkot no Ŕī loga, kļūst par jauniem logiem un var tikt pārvietotas uz esoŔā loga augÅ”pusi pirms atkārtotas pievienoÅ”anas.
  • "xdg-dialog" - ļauj augstākā lÄ«meņa virsmām pieŔķirt dialogam raksturÄ«gus atribÅ«tus, piemēram, varat izveidot modālus dialogus, kas bloķē lietotāja mijiedarbÄ«bu ar pārējo saskarni.
  • "linux-drm-syncobj" — nodroÅ”ina rÄ«kus, lai tieÅ”i sinhronizētu buferus, izmantojot DRM (Direct Rendering Manager) sinhronizācijas objektus. Tiek pieņemts, ka sinhronizācijas kontekstā, zÄ«mējot buferÄ«, piedāvātais protokols uzlabos darbu ar draiveriem, kuru pamatā ir Vulkan un OpenGL grafikas API (ievieÅ”ana ir balstÄ«ta uz apstrādātājiem draiveros). Jaunais protokols ļauj nodroÅ”ināt, ka tiek pabeigta renderēŔanas darbÄ«ba buferÄ«, pirms saliktais pārvaldnieks renderē buferi.
  • alfa modifikators, kas ļauj klientiem mainÄ«t virsmas caurspÄ«dÄ«guma lÄ«meni un pārsÅ«tÄ«t operācijas, lai nodroÅ”inātu caurspÄ«dÄ«gumu uz saliktā servera pusi, kas savukārt var novirzÄ«t Ŕīs darbÄ«bas uz KMS.
  • xdg-toplevel-icon - saista ikonu ar augŔējā lÄ«meņa logu.
  • ext-image-capture-source un ext-image-copy-capture - ekrānā redzamā satura uztverÅ”anas organizēŔana.
  • xdg-system-bell - ļauj izvadÄ«t sistēmas signālu, ko var izmantot, piemēram, kā brÄ«dinājumu termināļa emulatorā. Signāla izvades formu nosaka pēc kompozÄ«ta pārvaldnieka ieskatiem, tā var bÅ«t ne tikai skaņa, bet arÄ« vizuāla atbilde.
  • fifo - ievieÅ” FIFO (first in, first out) mehānismu attēlotās virsmas satura atjaunināŔanas rindas apstrādei. No praktiskā viedokļa protokols ļauj izvadei gaidÄ«t, lÄ«dz tiek pabeigta vertikālā skenēŔana (vtukÅ”a), nevis izmantot atzvanīŔanas zvanus katru reizi, kad tas ir gatavs parādÄ«t jaunu kadru, kas atrisina lielas GPU slodzes problēmu, izmantojot VSync.
  • commit-timing — ļauj saistÄ«t laika ierobežojumu virsmas saturam (saliktajam serverim ir jāatspoguļo satura izmaiņas, ja iespējams pēc noteiktā laika, bet ne agrāk).

Protokoli, kas tiek izstrādāti ā€œnestabilaā€ nozarē:

  • ā€œPilnekrāna apvalksā€ - darba kontrole pilnekrāna režīmā.
  • "input-method" - apstrādes ievades metodes.
  • ā€œdÄ«kstāves inhibēŔanaā€ - ekrānsaudzētāja (ekrānsaudzētāja) palaiÅ”anas bloķēŔana.
  • "input-timestamps" - ievades notikumu laikspiedoli.
  • "keyboard-shortcuts-inhibit" - kontrolē Ä«sinājumtaustiņu un karsto taustiņu pievienoÅ”anu.
  • "Linux-explicit-synchronization" ir Linux specifisks mehānisms ar virsmu saistÄ«to buferu sinhronizēŔanai.
  • ā€œrādÄ«tāja žestiā€ - vadÄ«ba no skārienekrāniem.
  • ā€œrādÄ«tāja ierobežojumiā€ - rādÄ«tāja ierobežojumi (bloķēŔana).
  • ā€œprimārā atlaseā€ - pēc analoÄ£ijas ar X11, tas nodroÅ”ina primārās starpliktuves darbÄ«bu (primārā atlase), no kuras informācija parasti tiek ievietota ar peles vidējo pogu.
  • ā€œrelatÄ«vais rādÄ«tāja notikumiā€ — relatÄ«vie rādÄ«tāja notikumi.
  • ā€œteksta ievadeā€ - teksta ievades organizēŔana.
  • ā€œxdg-foreignā€ ir saskarne mijiedarbÄ«bai ar ā€œkaimiņuā€ klienta virsmām.
  • "xdg-decoration" - logu dekorāciju renderēŔana servera pusē.
  • "xdg-output" - papildu informācija par video izvadi (izmanto daļējai mērogoÅ”anai).
  • "xwayland-keyboard-grab" — uztverÅ”anas ievade XWayland lietojumprogrammās.
  • Avots: opennet.ru

Pievieno komentāru