Nakon gotovo godinu dana razvoja, objavljena je verzija upravitelja kompozita Sway 1.12, izgrađena koristeći Wayland protokol i kompatibilna sa mozaik upraviteljem prozora i3 te i3bar pločom. Kod projekta napisan je na jeziku C i distribuiran je pod MIT licencom. Projekt je usmjeren na korištenje u Linuxu i FreeBSD-u.
Sway omogućuje logično postavljanje prozora (upravitelj prozora dinamički odabire položaj i veličinu prozora, uzimajući u obzir ostale otvorene prozore i sprječavajući preklapanje prozora), umjesto tradicionalnog prostornog pozicioniranja (korisnik odabire proizvoljno mjesto i veličinu prozora s mogućim preklapanjima prozora). Prozori se postavljaju u mrežu, optimalno koristeći ekran i omogućuju brzo manipuliranje prozorima samo pomoću tipkovnice. Kompatibilnost s i3 osigurana je na razini naredbi, konfiguracijskih datoteka i IPC-a, što omogućuje korištenje Sway-a kao prozirne zamjene za i3, koja koristi Wayland umjesto X11.
Za opremanje potpunog korisničkog okruženja nude se prateće komponente: swayidle (pozadinski proces s implementacijom načina mirovanja), swaylock (zaštitnik ekrana), mako (menadžer obavijesti), grim (izrada snimaka ekrana), slurp (označavanje područja na ekranu), wf-recorder (snimanje videa), waybar (panel aplikacija), virtboard (ekranska tipkovnica), wl-clipboard (rada s međuspremnikom), wallutils (upravljanje pozadinama radne površine).
Sway se razvija kao modularni projekt, izgrađen na bazi wlroots biblioteke, u koju su izdvojeni svi osnovni primitivni za organizaciju rada upravitelja kompozita. Wlroots uključuje pozadinske programe za
apstrahiranje pristupa ekranu, uređajima za unos, crtanje bez izravnog pristupa OpenGL-u, interakciju s KMS/DRM, libinput, Wayland i X11 (nudi sloj za pokretanje X11 aplikacija na bazi Xwayland). Osim Sway-a, wlroots biblioteka aktivno se koristi i u drugim projektima. Uz podršku za jezike C/C++, dostupni su i omotači za jezike Scheme, Common Lisp, Go, Haskell, OCaml, Zig, Python i Rust.
U novom izdanju:
- Dodana je mogućnost hvatanja pojedinih prozora.
- Implementirana je podrška za izlaz u proširenom dinamičkom rasponu osvjetljenja HDR10 pri korištenju crtanja na bazi Vulkan API-ja.
- Dodana je podrška za Wayland protokole:
- color-management-v1 za upravljanje bojom i podršku proširenom dinamičkom rasponu osvjetljenja (HDR, High Dynamic Range).
- color-representation-v1 za definiranje bojnih prikaza Wayland površine.
- xdg-toplevel-tag-v1 za pridruživanje tagova Wayland klijentima na površinama najvišeg nivoa, koje kompozitni server može koristiti za vraćanje položaja, veličine i svojstava prozora nakon ponovnog pokretanja, kao i za određivanje posebnih pravila za pojedine vrste prozora.
- ext-workspace-v1 za stvaranje panela ili indikatora koji prikazuju popis dostupnih virtualnih radnih površina i omogućuju prebacivanje između njih.
- wl_fixes za rješavanje problema s drugim sučeljima osnovnih protokola koja se ne mogu riješiti vlastitim mogućnostima tih sučelja.
- Implementirana je opcija „—device-primaries“, pri čemu se profil boje formira na temelju podataka koje monitor izvlači putem EDID-a.
- Dodana podrška za određivanje prisutnosti tipkovnice pomoću oznake LIBINPUT_SWITCH_KEYPAD_SLIDE u libinput.
- U datoteku s konfiguracijom uključene su veze za posebne multimedijske tipke (pauza, nastavak reprodukcije, sljedeća kompozicija itd.) za upravljanje reprodukcijom multimedijalnog sadržaja putem alata playerctl.
- Profil boje izlaza srgb prebačen je na korištenje komadne (piece-wise) prijenosne funkcije sRGB umjesto gamma 2.2 (za gamma 2.2 potrebno je koristiti zaseban profil gamma22 koji se primjenjuje prema zadanim postavkama).
- Pokretanje na sustavima s nepodržanim GPU-ima (npr. pri korištenju proprietarnih upravljačkih programa NVIDIA) sada rezultira ispisom upozorenja umjesto gašenja s greškom. Upozorenje se može isključiti pomoću oznake „—unsupported-gpu“ ili varijable okruženja SWAY_UNSUPPORTED_GPU.
- Dodana službena podrška za korištenje upravitelja prikaza za pokretanje Sway-a.
- Iskorištene su nove mogućnosti biblioteke wlroots 0.20. Među promjenama u novoj verziji wlroots: Podrška za određivanje prikaza boje Wayland površine, upravljanje bojom i korištenje HDR pomoću protokola color-representation-v1 i color-management-v1. Podrška za Wayland protokole cursor-shape-v1 za prilagodbu izgleda pokazivača,
ext-workspace-v1 za korištenje koncepta virtualnih radnih površina i xdg-toplevel-tag-v1 za identifikaciju prozora/površina putem povezivanja oznaka.

Izvor: opennet.ru
