Efter nÀstan ett Är av utveckling har utgÄvan av den kompositiva hanteraren Sway 1.12 publicerats, byggd med hjÀlp av Wayland-protokollet och kompatibel med det lappade fönsterhanteraren i3 och panelen i3bar. Projektets kod Àr skriven i C och distribueras under MIT-licensen. Projektet syftar till att anvÀndas i Linux och FreeBSD.
Sway möjliggör logisk fönsterplacering (fönsterhanteraren vÀljer dynamiskt position och storlek pÄ fönster, med beaktande av andra öppna fönster och förhindrar överlappning av fönster) istÀllet för traditionell rumslig placering (anvÀndaren vÀljer en godtycklig plats och storlek pÄ fönstret med möjlig överlappning av fönster). Fönsterna placeras i ett rutnÀt som optimalt utnyttjar skÀrmutrymmet och gör det möjligt att snabbt manipulera fönster enbart med tangentbordet. Kompatibilitet med i3 sÀkerstÀlls pÄ kommandonivÄ, konfigurationsfiler och IPC, vilket gör det möjligt att anvÀnda Sway som en transparent ersÀttning för i3, som anvÀnder Wayland istÀllet för X11.
För att skapa en fullvÀrdig anvÀndarmiljö erbjuds flera komponenter: swayidle (bakgrundsprocess med implementering av vilolÀge), swaylock (skÀrmslÀckare), mako (notificationshanterare), grim (skÀrmdumpar), slurp (markera omrÄde pÄ skÀrmen), wf-recorder (videoinspelning), waybar (programpanel), virtboard (virtuellt tangentbord), wl-clipboard (hantering av urklipp), wallutils (hantering av skrivbordsbakgrunder).
Sway utvecklas som ett modulÀrt projekt, byggt ovanpÄ wlroots-biblioteket, som rymmer alla grundlÀggande primitiv för att organisera arbetet i en kompositiv hanterare. Wlroots inkluderar backends för
abstraktion av Ätkomst till skÀrmen, inmatningsenheter, rendering utan direkt Ätkomst till OpenGL, interaktion med KMS/DRM, libinput, Wayland och X11 (en mellanliggande lager för att köra X11-appar baserade pÄ Xwayland). Förutom Sway anvÀnds wlroots-biblioteket aktivt i andra projekt. Förutom stöd för C/C++-sprÄk finns det Àven bindningar för sprÄk som Scheme, Common Lisp, Go, Haskell, OCaml, Zig, Python och Rust.
I den nya utgÄvan:
- Möjligheten att fÄnga enskilda fönster har lagts till.
- Stöd för utmatning i ett utökat dynamiskt ljusstyrkeband HDR10 har implementerats vid anvÀndning av rendering baserat pÄ Vulkan-API.
- Stöd för Wayland-protokoll har lagts till:
- color-management-v1 för fÀrghantering och stöd för utökat dynamiskt ljusstyrkeband (HDR, High Dynamic Range).
- color-representation-v1 för att definiera fÀrgrepresentationen av Wayland-yta.
- xdg-toplevel-tag-v1 för att lÄta Wayland-kunder fÀsta taggar till ytor pÄ övre nivÄ, som kompositören server kan anvÀnda för att ÄterstÀlla position, storlek och egenskaper hos fönster efter omstart, samt för att definiera sÀrskilda regler för specifika typer av fönster.
- ext-workspace-v1 för att skapa paneler eller indikatorer som visar en lista över tillgÀngliga virtuella skrivbord och möjliggör vÀxling mellan dem.
- wl_fixes för att lösa problem med andra grÀnssnitt för grundlÀggande protokoll som inte kan ÄtgÀrdas med dessa grÀnssnitts inbyggda funktioner.
- Funktionen «âdevice-primaries» har implementerats, dĂ€r fĂ€rgprofilen skapas baserat pĂ„ data som hĂ€mtas av monitorn via EDID.
- Stöd för att identifiera nÀrvaron av en keypad har lagts till med flaggan LIBINPUT_SWITCH_KEYPAD_SLIDE i libinput.
- Konfigurationsfilen har inkluderat bindningar för speciella multimedia tangenter (paus, fortsÀtt spela, nÀsta lÄt osv.) för att styra uppspelningen av multimediainnehÄll med hjÀlp av verktyget playerctl.
- FÀrgprofilen för utdata srgb har övergÄtt till att anvÀnda en styckvis (piece-wise) överföringsfunktion sRGB istÀllet för gamma 2.2 (för gamma 2.2 bör en separat profil gamma22 anvÀndas, vilket tillÀmpas som standard).
- Start i system med icke-stödda GPU:er (t.ex. vid anvĂ€ndning av proprietĂ€ra NVIDIA-drivrutiner) leder nu till en varning istĂ€llet för att avslutas med ett fel. Varningen kan stĂ€ngas av med flaggan «âunsupported-gpu» eller miljövariabeln SWAY_UNSUPPORTED_GPU.
- Officiellt stöd har lagts till för anvÀndning av displayhanterare för att starta Sway.
- Nya funktioner frÄn biblioteket wlroots 0.20 har aktiverats. Bland förÀndringarna i den nya versionen av wlroots: Stöd för att definiera fÀrgrepresentationen av Wayland-yta, fÀrgkontroll och anvÀndning av HDR med hjÀlp av protokollen color-representation-v1 och color-management-v1. Stöd för Wayland-protokollen cursor-shape-v1 för att anpassa utseendet pÄ markören,
ext-workspace-v1 för att anvÀnda konceptet med virtuella skrivbord och xdg-toplevel-tag-v1 för att identifiera fönster/yta genom att binda taggar.

KĂ€lla: opennet.ru
