PĂ€rast 13 kuu arendust on esitatud stabiilne versioon protokollist, protsessidevahelise suhtlemise mehhanismist ja Wayland 1.24 raamatukogudest. 1.24 haru on API ja ABI tasemel tagasikĂ€idav, arvestades 1.x versioone, ning see sisaldab peamiselt veaparandusi ja vĂ€ikseid protokolli vĂ€rskendusi. Projekti tulemusi jagatakse MIT litsentsi alusel. Viidatud koosoleku server Weston, mis pakub koodi ja töönĂ€iteid Waylandi kasutamiseks lauaarvutite keskkondades ja sisseehitatud lahendustes, areneb eraldi arendustsĂŒklis.
Protokolli peamised muudatused:
- On rakendatud wl_fixes liides, mis vĂ”imaldab lahendada probleeme teiste pĂ”hivĂ”imetega liideste vahel, mida nende endi omadustega ei saa lahendada. NĂ€iteks pĂ€ring "wl_fixes::destroy_registry" vĂ”imaldab kĂ”rvaldada objekti wl_registry, mille jĂ€rel klient ei saa seda enam kasutada ja koosoleku server lĂ”petab sĂŒndmuste edastamise selle kaudu.
- wl_keyboard::key liideses on rakendatud pseudoseisund "repeated", mis tĂ€hendab, et nupp on all. Nupp vĂ”ib minna "repeated" olekusse ainult pĂ€rast "pressed" olekusse minemist, kuid enne "released" olekusse jĂ”udmist. Kuni nupp on all, vĂ”ivad uue olekuga seotud sĂŒndmused genereerida mitu korda. Muudatus vĂ”imaldab koosoleku serveritel töödelda korduvaid vajutusi, kui nupp on all eraldi olekuteena, mitte lihtsalt vajutussĂŒndmuste voona ("pressed"), mis vĂ”ib olla kasulik. kauglaud.
- Lisatud funktsioonid wl_display_dispatch_queue_timeout() ja wl_display_dispatch_timeout() sĂŒndmuste jaotamiseks jĂ€rjekorda ajapiirangut arvestades (funktsioonid wl_display_dispatch ja wl_display_dispatch_queue tagastavad 0 ainult siis, kui sĂŒndmusi ei ole, ja *_timeout variandid ka siis, kui ajapiirang on möödunud).
- Lisatud funktsioonid wl_shm_buffer_ref() ja wl_shm_buffer_unref() jagatud mĂ€lu juurdepÀÀsuks, mis on seotud wl_shm_bufferiga pĂ€rast selle kĂ”rvaldamist (nĂ€iteks kui klient lĂ”petab töö). Need funktsioonid vĂ”imaldavad kĂ”rvaldada wl_shm_bufferi peamise ressursi wl_buffer elueast, kui koosoleku server peab uude olekusse liikumist edasi lĂŒkkama.
- Lisa wl_proxy_get_interface() ja wl_resource_get_interface() funktsioonid, mis tagastavad wl_interface antud ressursi jaoks, mis on nĂ”utud dĂŒnaamilise tĂŒĂŒbiga keelte mĂ€histe jaoks.
- Lisa funktsioon wl_resource_post_error_vargs(), mis on alternatiiv wl_resource_post_error() funktsioonile, vÔimaldades edastada argumendi nimekirja stringi vormindamiseks (va_list).
MĂ”ned tĂ€helepanuvÀÀrsemad sĂŒndmused, mis on seotud Waylandiga ja juhtusid pĂ€rast eelmist vĂ€ljaannet:
- Parandatud Waylandi toe kvaliteet NVIDIA omaduslike draiverite jaoks.
- KDE kavatseb sÀilitada ainult Waylandi toe. Koodide eraldamine kwin_x11 ja kwin_wayland vahel.
- Ubuntu ja Kubuntu jÀtavad GNOME ja KDE toetuseks ainult Waylandi sessiooni.
- GDM-is on vaikimisi sÀilitatud ainult Waylandi toetus.
- GTK on X11 tagurpidi suunanud aegunud olekusse.
- Fedora 43 otsustas eemaldada repos pakid, mida GNOME kasutab X-serveri kohal töötamiseks. KĂ”ik GNOME'i X11 kasutajad sunnitakse ĂŒle minema Waylandi sessioonile.
- Budgie töölauakeskkonnas jÀÀb alles ainult Waylandi toetus.
- Xfce 4.20-s on osaliselt rakendatud Waylandi tugi.
- MATE 1.28 koos katsetava Waylandi toega.
- Wayback - Waylandi komposiitserver X11 pÔhiste töölauade kÀitamiseks.
- Valve on kÀivitanud Frog projekti, et kiirendada uute Waylandi protokollide edendamist.
- Cosmoe graafiliste kasutajaliideste raamistik, mis kasutab Waylandi ja BeOS stiilis API-d.
- Waylandi draiveri vaikimisi aktiveerimine WINE'is.
- Raspberry Pi OS-ilt ĂŒleminek Waylandi kasutamisele.
- FLTK 1.4.0 graafilise tööriistakasti vÀljaandmine Waylandi toega.
- Wayland-Protocols'i komplekti on lisatud tÀiendusprotokolli faas - 'experimental', mille eesmÀrk on vÀhendada protokollide integreerimise takistusi, kiirendada protokollide arendajatele toimetamist ja soodustada varajast rakendamist olemasolevates projektides.
- AMD arendab oma ACS komposiitserverit, mis kasutab Waylandi.
- Seitsme COSMIC töölauakeskkonna alfa-vÀljaanne.
- Komposiitserverite uuendamine: Weston 14.0, Niri 25.05, Wayland Maker 0.5, miracle-wm 0.5, Hyprland 0.49, labwc 0.8.3, Cage 0.2, Wayfire 0.9, Sway 1.11.
Eelmise aasta jooksul lisatud protokollide laiendused, mis tÀiendavad pÔhiprotokolli Wayland ja on saadaval eraldi Wayland-Protocols komplektis:
- color-management - vĂ€rvide haldamise ja laienenud dĂŒnaamilise vahemiku (HDR, High Dynamic Range) toe vĂ”imalused.
- color-representation-v1 - Waylandi pinna vÀrvi esitlemine.
- xdg-toplevel-tag â vĂ”imaldab Waylandi klientidel kinnitada silte ĂŒlataseme pindadele, mida komposiitserver saab kasutada akende tuvastamiseks rakenduse taaskĂ€ivitamise ajal.
- ext-background-effect â efektide rakendamine PoollĂ€bipaistvate Waylandi pindade, nĂ€iteks tausta, udustamisele.
- pointer-warp â vĂ”imaldab rakendusel kohe suunata kursor mÀÀratud asukohta.
- xx-session-management â akende seisundi taastamine katkestatud seansside jaoks (nĂ€iteks pĂ€rast komposiitmanĂageri juhuslikku sulgemist).
- xx-input-method â uue protokolli arendamine teksti sisestamise meetodite kasutamiseks. ext-data-control â vĂ”imaldab privileegiga klientidel hallata andmete töötlemist, nĂ€iteks lĂ”ikelauamanagerite rakendamiseks.
- ext-workspace â viib ellu kontseptsiooni virtuaalsetele töölauale ja pakub teateid töölaua seisundi kohta, samuti vĂ”imalusi töölaua aktiveerimiseks ja deaktiveerimiseks.
- xdg-system-bell â vĂ”imaldab sĂŒsteemse heli edastamist, mida saab kasutada nĂ€iteks terminaliemulaatorites hoiatuseks.
- xdg-toplevel-icon â ikooni seostamine ĂŒlataseme aknaga.
- ext-image-capture-source ja ext-image-copy-capture â ekraanile vĂ€ljundatud sisu salvestamine.
- fifo â rakendab FIFO-mehhanismi (esimene sisene â esimene vĂ€lju) kuqueue sisu uuendamise töötlemiseks.
- commit-timing â vĂ”imaldab siduda ajapiirangu pinnasisu muutustega (komposiitserver peab kuvama sisu muutuse vĂ”imalikult kiiresti ettenĂ€htud aja jooksul, kuid mitte varem).
Meeldetuletuseks, Wayland on protokoll komposiitserveri ja temaga töötavate rakenduste vahel. Kliendid joonistavad oma aknad eraldi puhvris, edastades vĂ€rskenduste teabe komposiitserverile, mis kombineerib eraldi rakenduste puhvrite sisu lĂ”ppvisandi loomiseks, arvestades vĂ”imalikke nĂŒansse, nagu akende kattumine ja lĂ€bipaistvus. TeisisĂ”nu, komposiitserver ei paku API-d eraldi elementide joonistamiseks, vaid töötab ainult juba moodustatud akendega, mis aitab vabaneda topeltpuhvristamise probleemist, kui kasutatakse kĂ”rgema taseme teeke, nagu GTK ja Qt, mis tegelevad akende sisu paigutamisega.
Wayland lahendab paljusid X11 turvaprobleeme, kuna erinevalt viimatisest isoleerib see iga akna sisendi ja vĂ€ljundi, ei luba kliendil pÀÀseda teiste klientide akende sisu juurde ning ei luba sisendi sĂŒndmuste töötlemist, mis on seotud teiste aknadega. Otse töötamise tugi Waylandiga on rakendatud enamikesse Linuxis kasutatavatesse graafikabibliotekidesse, sealhulgas GTK, Qt, SDL, FLTK, wxWidgets, Clutter ja EFL (Enlightenment Foundation Library).
Seadmete suhtlemine Waylandis/Westonis, nagu initsialiseerimine, videoreĆŸiimide vahetamine (drm modesetting) ja mĂ€luhaldus (GEM i915 jaoks ja TTM radeon ja nouveau jaoks) graafikakaartide puhul, vĂ”ib toimuda otse tuumataseme mooduli kaudu, mis vĂ”imaldab vĂ€ltida superkasutaja Ă”iguste vajadust. X11 rakenduste kĂ€itamiseks Waylandi pĂ”hjalises keskkonnas kasutatakse DDX-komponenti XWayland (Device-Dependent X), mis sarnaneb töökorraldusega nagu Xwin ja Xquartz Win32 ja macOS platvormidel.


Allikas: opennet.ru
