Pärast 8 kuud arendust on välja antud liitmenedžiatori Sway 1.10 versioon, mis on loodud Waylandi protokolli abil ja on ühilduv mosaiikakna halduriga i3 ja paneeliga i3bar. Projekti kood on kirjutatud C keeles ja levitatakse MIT litsentsi alusel. Projekt on suunatud Linuxi ja FreeBSD kasutusele.
Sway võimaldab aknaid ekraanil paigutada mitte ruumiliselt, vaid loogiliselt. Aknaid paigutatakse, moodustades võrgu, mis optimaalselt kasutab ekraanipinda ja võimaldab akende kiiret juhtimist ainult klaviatuuri abil. Ühilduvus i3-ga on tagatud käskude, konfiguratsioonifailide ja IPC tasemel, mis võimaldab kasutada Sway-d nagu läbipaistvat asendajat i3-le, kasutades Waylandi asemel X11.
Täieliku kasutajakogemuse loomiseks pakuvad järgmised komponentid: swayidle (taustaprotsess ooterežiimi rakendamiseks), swaylock (ekraani hoidja), mako (teavituste haldur), grim (ekraaninäidise loomine), slurp (valiku loomine ekraanil), wf-recorder (video salvestamine), waybar (rakenduste paneel), virtboard (ekraanipaneel), wl-clipboard (vahemälu haldamine), wallutils (töölaua taustapiltide haldamine).
Sway areneb modulaarse projektina, mis on ehitatud wlroots teegi peale, kuhu on koondatud kõik põhilised primitiivid komposiitmenedžeri töö korraldamiseks. Wlroots sisaldab tagasiviimiseid ekraanide, sisendseadmete juurde, renderdamiseks ilma otsese OpenGL-i kasutamiseta, interaktsiooniks KMS/DRM, libinput, Waylandi ja X11-iga (pakub kihti X11 rakenduste käitamiseks Xwaylandi baasil). Lisaks Sway’le kasutatakse wlroots teeki aktiivselt ka teistes projektides. Lisaks C/C++ keelte toetusele on saadaval positiivsed raamistikud ka Scheme, Common Lisp, Go, Haskell, OCaml, Zig, Python ja Rust keelte jaoks.
Uues väljaandes:
- Kasutusele on võetud uued wlroots 0.18 teegi võimalused, nagu Waylandi protokollide linux-drm-syncobj-v1, alpha-modifier-v1, ext-foreign-toplevel-list-v1 ja ext-transient-seat-v1 tugi, ICC värviprofiiide kasutamise võimalus Vulkan graafilises API-s, GPU lähtestamise operatsiooni tugi ning uus riistvara sõltumatu (stateless) joonistamis-API, mis võimaldab saada teavet GPU pikslipuhvridest.
- Joonistuskood on kirjutatud ümber, kasutades wlrootsi uusimat scene graph API-d. Täheldatakse, et ümbertöötamine on võimaldanud saavutada paremat jõudlust.
- Tagatud on oleku taastamine GPU lähtestamise korral.
- Lisatud on käsk ICC-profiilide kasutamiseks väljundseadmete jaoks.
- Parandatud on väljundseadmete seadistamise algoritmi.
- Lisatud on võimalus kasutada protokolli laiendust «tearing-control-v1», et väljalülitada täisekraanirakendustes vertikaalne sünkroniseerimine (VSync) raamiga, mida rakendatakse kildude (tearing) tekkimise vältimiseks. Multimeedia rakendustes on kildude tõttu tekkivad artefaktid soovimatu effekt, kuid mängurakendustes võib artefakte taluda, kui nende vastu võitlemine toob kaasa lisaviivitusi.
- Lisatud on toetus protokolli laiendusele «ext-transient-seat-v1», et luua ajutisi sõltumatuid seansse (seat), mis on mõeldud kasutamiseks koos virtuaalsete sisendi seadmetega. Näiteks VNC-klient wayvn rakendustes on võimalik igale kasutajale luua eraldi seanss virtuaalsete klaviatuuri ja hiirega. eemaldatud töölauale, nagu VNC-kliendi wayvn puhul, on võimalik igale kasutajale luua eraldi seanss virtuaalsete klaviatuuri ja hiirega.
- Lisatud on toetus protokolli laiendusele «ext-foreign-toplevel-list-v1», et saada teavet kõige ülemisel tasemel (toplevel) asuvate pindade kohta. Protokoll võimaldab korraldada akende kinnitamist muu sisu peale, näiteks paneelide ja akende vahetuslülitite elluviimiseks.
- Viies versioon protokollist „xdg-shell” lisab toetuse, mis võimaldab muuta hüpikakende asukohta ning rakendada akende minimiseerimise ja suurendamise nuppe kliendi poolel (CSD).
- dmenu_run paket, mis võimaldab kasutada dmenu rakenduste käivitamise liidesena, on eemaldatud vaikimisi konfiguratsiooni sõltuvustest.
- Vaikimisi konfiguratsioonifaili on lisatud pactl kasutamine, et seadistada kuumklahve helitugevuse ja heleduse muutmiseks, samuti grim utiliidi käivitamine ekraanipiltide loomise jaoks.
- Vaikimisi on keelatud vananenud Waylandi protokolli wl_drm tugi, mille asemel on kasutusele võetud linux-dmabuf-v1 protokoll.
- Xwaylandi toe lubamise ehituse valik on eemaldatud (Xwaylandi lubamine sõltub nüüd wlrootsi ehitusseadetest).

Allikas: opennet.ru
