Paketa wayland-protocols 1.48 është publikuar, e cila përmban një sërë protokollesh dhe zgjerimesh që plotësojnë protokollin bazë Wayland dhe ofrojnë aftësitë e nevojshme për të ndërtuar servera të përbërë dhe mjedise përdoruesish.
NĂ« versionin e ri:
- Protokolli xdg-session-management është shtuar në kategorinë e fazës së instalimit, duke ofruar mundësinë për të rivendosur gjendjen dhe pozicionin e dritareve nga një seancë e ndërprerë në mjedise të bazuara në Wayland, për shembull pas rrëzimit të një serveri ose aplikacioni të përbërë.
- Protokolli i futjes së tekstit është zgjeruar, duke u lejuar serverëve të përbërë të zbatojnë metoda futjeje dhe të dërgojnë tekst në aplikacione. Për shembull, është shtuar flamuri no_emoji për futje pa emoji, është zbatuar mbështetje për veprime shtesë përtej futjes së tekstit, është shtuar flamuri i gjuhës për transmetimin e informacionit gjuhësor, janë shtuar kërkesa për shfaqjen dhe fshehjen e panelit të futjes dhe është shtuar flamuri preedit_hint për personalizimin e stilit të para-redaktimit.
- U shtua protokolli eksperimental xx-prerjesh për të marrë informacion në lidhje me prerjet në ekran (për shembull, zona nën kamerën e përparme në ekranin e telefonit inteligjent).
- Një protokoll eksperimental xx-zones është shtuar për krijimin dhe shtimin e dritareve të nivelit të lartë në "zona" - mjedise me hapësirën e tyre koordinative. Ky protokoll lejon një rregullim logjik të dritareve, me secilën dritare të pozicionuar në raport me çdo dritare tjetër.
- U shtua një protokoll eksperimental, xx-keyboard-filter, për të lejuar klientin të ndërpresë ngjarjet e zgjedhura të tastierës, të modifikojë ngjarjet e hyrjes ose të bllokojë transmetimin e ngjarjeve të caktuara në sipërfaqen e fokusuar të Wayland.
Të gjitha protokollet kalojnë në mënyrë sekuenciale nëpër fazat e zhvillimit, testimit dhe stabilizimit. Pas përfundimit të fazës së zhvillimit (kategoria "e paqëndrueshme"), një protokoll vendoset në degën "staging" dhe përfshihet zyrtarisht në suitën wayland-protocols. Pasi të përfundojë testimi, ai zhvendoset në kategorinë e qëndrueshme. Protokollet në kategorinë "staging" mund të përdoren më pas në kompozite. serverat dhe klientët që kërkojnë funksionalitet të lidhur. Ndryshe nga kategoria "e paqëndrueshme", "staging" ndalon ndryshimet që prishin përputhshmërinë. Megjithatë, nëse zbulohen probleme ose mangësi gjatë testimit, nuk mund të përjashtohet një zëvendësim me një version të ri dhe të rëndësishëm të protokollit ose një zgjerim tjetër të Wayland.
Për të përshpejtuar shpërndarjen e protokolleve te zhvilluesit dhe për të inkurajuar zbatimin e hershëm të protokolleve në projektet ekzistuese, duke filluar me versionin e mëparshëm, u shtua një fazë "eksperimentale", e cila lejon ndryshime që prishin përputhshmërinë dhe shtimin e protokolleve "të papërpunuara" që mund të sillen gradualisht në nivelin e duhur. Ndërsa një protokoll duhet të formojë një ekip mbështetës dhe të marrë një numër të caktuar mirënjohjesh (ACK) nga rishikuesit për të hyrë në fazën e skenës, ai duhet vetëm të mos marrë asnjë kundërshtim (NACK) gjatë periudhës dyjavore të shqyrtimit për të hyrë në fazën eksperimentale.
Paketa wayland-protocols aktualisht përfshin protokollet e mëposhtme të qëndrueshme, të cilat janë të pajtueshme me prapavijën:
- viewporter" - i lejon klientit të kryejë veprime mbi shkallëzimin dhe prerjen e skajeve të sipërfaqes në anë server.
- "koha e prezantimit" - ofron shfaqje video.
- "xdg-shell" është një ndërfaqe për krijimin dhe ndërveprimin me sipërfaqet si dritare, duke ju lejuar t'i lëvizni ato nëpër ekran, të kolapsoni, zgjeroni, ndryshoni madhësinë, etj.
- "linux-dmabuf" - ofron aftësi për krijimin e wl_buffers bazuar në DMA-BUF.
- "Tabletë" - organizimi i të dhënave nga tabletët grafikë.
Protokollet e testuara në degën "instage":
- drm-lease - siguron burimet e nevojshme për të gjeneruar një imazh stereo me buferë të ndryshëm për sytë e majtë dhe të djathtë gjatë daljes në kufje të realitetit virtual.
- "ext-sesion-lock" - përcakton një mjet për mbylljen e një sesioni, për shembull, ndërsa mbrojtësi i ekranit është në punë ose shfaqet dialogu i vërtetimit.
- "Single-pixel-buffer" - ju lejon të krijoni bufera me një pixel që përfshijnë katër vlera RGBA 32-bit.
- "Aktivizimi xdg" - ju lejon të transferoni fokusin midis sipërfaqeve të ndryshme të nivelit të parë (për shembull, duke përdorur aktivizimin xdg, një aplikacion mund të kalojë fokusin në një tjetër).
- lloji i përmbajtjes - u lejon klientëve të kalojnë kompozitin server Informacion rreth përmbajtjes që shfaqet që mund të përdoret për të optimizuar sjelljen e ndërgjegjshme për përmbajtjen, siç është vendosja e vetive specifike DRM, siç është "lloji i përmbajtjes". Deklarata mbështet llojet e mëposhtme të përmbajtjes: asnjë (pa informacion për llojin e të dhënave), foto (dalja e fotos dixhitale që kërkon përpunim minimal), video (video ose animacion, që kërkon sinkronizim më të saktë për të shmangur ngecjet) dhe lojë (nisja e lojës, që kërkon dalje me vonesë minimale).
- ext-idle-notify - Lejon serverët e përbërë t'u dërgojnë klientëve njoftime për mosaktivitetin e përdoruesit, të cilat mund të përdoren për të aktivizuar mënyra shtesë të kursimit të energjisë pas një kohe të caktuar pasiviteti.
- kontrolli i grisjes - ju lejon të çaktivizoni sinkronizimin vertikal (VSync) me një puls vertikal amortizues në aplikacionet me ekran të plotë, i përdorur për të mbrojtur kundër grisjes në dalje. Në aplikacionet multimediale, artefaktet për shkak të grisjes janë një efekt i padëshirueshëm, por në programet e lojërave, artefaktet mund të tolerohen nëse trajtimi me to shkakton vonesa shtesë.
- ext-foreign-toplevel-list - Merr informacion në lidhje me sipërfaqet e vendosura në nivelin më të lartë, të cilat ju lejojnë të organizoni dritaret për t'u vendosur mbi përmbajtje të tjera, për shembull, për të bashkangjitur panelet tuaja dhe çelësat e dritareve.
- konteksti i sigurisë - ju lejon të identifikoni klientët duke përdorur izolimin e sandbox. Një klient mund të regjistrojë një lidhje të re në një server të përbërë të bazuar në Wayland dhe t'i bashkëngjisë atij një kontekst sigurie, pas së cilës menaxheri i përbërë do të kufizojë aftësitë e disponueshme për lidhjen e krijuar bazuar në kontekstin e specifikuar të sigurisë.
- Forma e kursorit është një mënyrë alternative për të personalizuar pamjen e kursorit, bazuar në kalimin e një serie imazhesh të kursorit në vend që të këputet në një sipërfaqe (wl_surface).
- "ext-transient-seat" - projektuar për të krijuar seanca të pavarura të përkohshme (sedilje) të dizajnuara për përdorim me pajisjet e hyrjes virtuale. Për shembull, kur zbatoni aftësinë për t'u lidhur me një desktop në distancë, protokolli ju lejon të krijoni një sesion të veçantë për çdo përdorues me një tastierë dhe miun virtual.
- "xdg-toplevel-drag" - zgjeron mekanizmin "drag & drop" me aftësinë për të bashkangjitur dritaret e nivelit të lartë në një operacion zvarritjeje, i cili mund të përdoret, për shembull, për të organizuar zvarritjen e shiritave të veglave ose skedave të shfletuesit me miun. Protokolli i ri ju lejon të krijoni pjesë të ndashme të një dritareje që, kur tërhiqen nga ajo dritare, bëhen dritare të reja dhe mund të zhvendosen në krye të dritares ekzistuese përpara se të ribashkohen.
- "xdg-dialog" - ju lejon të caktoni atribute specifike të dialogut në sipërfaqet e nivelit të lartë, për shembull, mund të krijoni dialogë modalë që bllokojnë ndërveprimin e përdoruesit me pjesën tjetër të ndërfaqes.
- "linux-drm-syncobj" - ofron mjete për sinkronizimin e qartë të buferit duke përdorur objektet e sinkronizimit DRM (Direct Rendering Manager). Supozohet se në kontekstin e sinkronizimit kur jepet në një buffer, protokolli i propozuar do të përmirësojë punën me drejtuesit bazuar në API-të grafike Vulkan dhe OpenGL (zbatimi bazohet në mbajtësit në drejtues). Protokolli i ri bën të mundur që të sigurohet që një operacion i tërheqjes në një buffer është i plotë përpara se menaxheri i kompozimit të shfaqë atë buffer.
- modifikues alfa, i cili lejon klientët të ndryshojnë nivelin e transparencës së sipërfaqes dhe operacionet e transferimit për të siguruar transparencë në anën e serverit të përbërë, i cili nga ana tjetër mund t'i ridrejtojë këto operacione në KMS.
- xdg-toplevel-icon - lidh ikonën me dritaren e nivelit të lartë.
- ext-image-capture-source dhe ext-image-copy-capture - organizimi i kapjes së përmbajtjes së shfaqur në ekran.
- xdg-system-bell - ju lejon të nxirrni një sinjal të sistemit, i cili mund të përdoret, për shembull, si një paralajmërim në një emulator terminali. Forma e daljes së sinjalit përcaktohet sipas gjykimit të menaxherit të përbërë, mund të jetë jo vetëm një tingull, por një përgjigje vizuale.
- fifo - zbaton një mekanizëm FIFO (first in, first out) për përpunimin e radhës së përditësimit të përmbajtjes së sipërfaqes së shfaqur. Nga ana praktike, protokolli lejon daljen të presë që skanimi vertikal të përfundojë (vblank) në vend që të përdorë thirrjet kthyese sa herë që është gati për të shfaqur një kornizë të re, e cila zgjidh problemin e ngarkesës së lartë të GPU-së kur përdor VSync.
- koha e kryerjes - ju lejon të lidhni një kufi kohor me përmbajtjen sipërfaqësore (serveri i përbërë duhet të pasqyrojë ndryshimin e përmbajtjes nëse është e mundur pas kohës së caktuar, por jo më herët).
- ext-data-control - Lejon klientët e privilegjuar të kontrollojnë përpunimin e të dhënave, për shembull të zbatojnë menaxherët e clipboard.
- ext-workspace â zbaton konceptin desktopĂ«t virtualĂ« dhe ofron ngjarje me informacion rreth gjendjes sĂ« desktopĂ«ve, si dhe mundĂ«sinĂ« pĂ«r tĂ« aktivizuar dhe çaktivizuar desktopĂ«t. Protokolli mund tĂ« pĂ«rdoret pĂ«r tĂ« krijuar panele dhe tregues qĂ« shfaqin njĂ« listĂ« tĂ« desktopĂ«ve virtualĂ« tĂ« disponueshĂ«m dhe lejojnĂ« ndĂ«rrimin midis tyre.
- menaxhimi i ngjyrave â ofron aftĂ«si pĂ«r menaxhimin e ngjyrave dhe mbĂ«shtetje pĂ«r gamĂ«n e lartĂ« dinamike (HDR). Ky zgjerim u lejon aplikacioneve tĂ« klientĂ«ve tĂ« marrin informacion nĂ« lidhje me vetitĂ« e pajisjeve dalĂ«se qĂ« lidhen me ngjyrat dhe tĂ« kalojnĂ« tĂ« dhĂ«na nĂ« lidhje me vetitĂ« e ngjyrave tĂ« pĂ«rmbajtjes sĂ« tyre te serveri i pĂ«rbĂ«rĂ«. NĂ« modalitetin e pĂ«rbĂ«rĂ«, server Ky informacion mund tĂ« pĂ«rdoret pĂ«r menaxhimin automatik tĂ« ngjyrave kur shfaqet pĂ«rmbajtja nĂ« pajisje tĂ« ndryshme dalĂ«se, pĂ«r shembull, pĂ«r tĂ« kthyer pĂ«rmbajtjen nĂ« njĂ« prezantim tĂ« pĂ«rshtatshĂ«m pĂ«r shfaqje nĂ« monitorĂ«t HDR. Profilet ICC pĂ«rdoren pĂ«r tĂ« pĂ«rshkruar hapĂ«sirat e ngjyrave.
- xdg-toplevel-tag â Lejon klientĂ«t e Wayland tĂ« bashkĂ«ngjitin etiketa nĂ« sipĂ«rfaqet e nivelit tĂ« lartĂ« qĂ« serveri i kompozimit mund t'i pĂ«rdorĂ« pĂ«r tĂ« identifikuar dritaret pasi aplikacioni tĂ« rifillojĂ« (pĂ«r shembull, njĂ« aplikacion mund tĂ« vendosĂ« etiketat "dritarja kryesore" dhe "cilĂ«simet" pĂ«r dritaren kryesore dhe dritaren e cilĂ«simeve). NjĂ« identifikim i tillĂ« Ă«shtĂ« i dobishĂ«m pĂ«r rivendosjen e pozicionit, madhĂ«sisĂ« dhe vetive tĂ« dritareve pas njĂ« rinisjeje, si dhe pĂ«r pĂ«rcaktimin e rregullave tĂ« veçanta pĂ«r llojet individuale tĂ« dritareve.
- pĂ«rfaqĂ«simi-i-ngjyrave â pĂ«rcakton pĂ«rfaqĂ«simin me ngjyra tĂ« sipĂ«rfaqes Wayland. KlientĂ«t e Wayland mund tĂ« kalojnĂ« meta tĂ« dhĂ«nat e nevojshme pĂ«r tĂ« pĂ«rcaktuar transparencĂ«n, modelin e ngjyrave, nĂ«n-mostratimin dhe diapazonin e kuantizimit, dhe pĂ«rdoren kur konvertohet njĂ« buffer me tĂ« dhĂ«na qĂ« korrespondojnĂ« me modelin e ngjyrave YCbCr nĂ« njĂ« pĂ«rfaqĂ«sim RGB.
- efekti-i-background-it-ext - zbaton efekte në pjesët gjysmë-transparente të një sipërfaqeje Wayland, siç është turbullimi i sfondit.
- pointer-warp - Lejon një aplikacion të lëvizë menjëherë treguesin në një pozicion të caktuar.
Protokollet që po zhvillohen në degën eksperimentale:
- xx-session-management - rikthen gjendjen e dritareve për seancat e ndërprera (për shembull, pas një rrëzimi të menaxherit të përbërë).
- xx-input-method â lejon aplikacionet tĂ« zbatojnĂ« metoda tĂ« futjes sĂ« tekstit pĂ«r composite serverat dhe gjeneroni tekstin e futur, i cili mund tĂ« pĂ«rdoret, pĂ«r shembull, pĂ«r tĂ« krijuar tastierĂ« virtuale dhe shtresa IME (Input Method Editor) pĂ«r pĂ«rpunimin e tĂ« dhĂ«nave hyrĂ«se.
- xx-text-input â u lejon serverĂ«ve tĂ« pĂ«rbĂ«rĂ« tĂ« zbatojnĂ« metoda hyrĂ«se dhe tĂ« dĂ«rgojnĂ« tekst nĂ« aplikacione. Protokolli standardizon bashkĂ«veprimin midis tĂ« dhĂ«nave tĂ« pĂ«rbĂ«rĂ« server dhe aplikacione, dhe ju lejon tĂ« menaxhoni aftĂ«si tĂ« tilla si transmetimi i tekstit hyrĂ«s, trajtimi i ngjarjeve tĂ« ndryshimit tĂ« fokusit tĂ« tĂ« dhĂ«nave hyrĂ«se dhe marrja nĂ« konsideratĂ« e specifikave tĂ« fushave tĂ« tĂ« dhĂ«nave hyrĂ«se (gjuha, pĂ«rzgjedhja e tekstit, lloji i pĂ«rmbajtjes).
Protokollet që po zhvillohen në degën "të paqëndrueshme":
- "Fullscreen-Shell" - kontrolli i punës në modalitetin e ekranit të plotë.
- "input-metod" - përpunimi i metodave të hyrjes.
- "inhibit boshe" - bllokimi i nisjes së mbrojtësit të ekranit (mbrojtësi i ekranit).
- "input-timestamps" - vula kohore për ngjarjet hyrëse.
- "keyboard-shortcuts-inhibit" - kontrollon bashkëngjitjen e shkurtoreve të tastierës dhe tasteve kryesore.
- "linux-explicit-synchronization" është specifik për Linux mekanizëm për sinkronizimin e tamponëve në lidhje me sipërfaqen.
- "Gestet e treguesit" - kontrolli nga ekranet me prekje.
- "Kufizimet e treguesit" - kufizimet e treguesit (bllokimi).
- "Zgjedhja primare" - për analogji me X11, siguron funksionimin e kujtesës kryesore (zgjedhja primare), informacioni nga i cili zakonisht futet me butonin e mesit të miut.
- "Ngjarje treguese relative" - âângjarje treguese relative.
- "Text-input" - organizimi i futjes së tekstit.
- "xdg-foreign" është një ndërfaqe për ndërveprim me sipërfaqet e klientit "fqinj".
- "xdg-decoration" - paraqitja e dekoratave të dritareve në anën e serverit.
- "xdg-output" - informacion shtesë në lidhje me daljen e videos (përdoret për shkallëzimin e pjesshëm).
- "xwayland-keyboard-grab" - kapni hyrjen në aplikacionet XWayland.
Burimi: opennet.ru
