Megjelent a kompozit kezelő Sway 1.7 kiadása, amely a Wayland protokoll használatával készült, és teljes mértékben kompatibilis az i3 mozaik ablakkezelővel és az i3bar panellel. A projekt kódja C nyelven íródott, és az MIT licenc alatt kerül terjesztésre. A projekt Linuxon és FreeBSD-n való használatra készült.
Az i3-kompatibilitás a parancs, a konfigurációs fájl és az IPC szintjén biztosított, lehetővé téve a Sway-t transzparens i3-csereként, amely a Wayland-et használja X11 helyett. A Sway lehetővé teszi az ablakok elhelyezését a képernyőn nem térben, hanem logikailag. Az ablakok egy rácsba vannak elrendezve, amely optimálisan kihasználja a képernyőterületet, és lehetővé teszi az ablakok gyors kezelését pusztán a billentyűzet használatával.
A teljes értékű felhasználói környezet létrehozásához a következő komponenseket kínáljuk: swayidle (háttérfolyamat, amely a KDE idle protokollját implementálja), swaylock (képernyővédő), mako (értesítéskezelő), grim (képernyőképek készítése), slurp (terület kiválasztása) a képernyőn), wf-recorder (videorögzítés), waybar (alkalmazássáv), virtboard (képernyő-billentyűzet), wl-vágólap (a vágólappal együttműködve), wallutils (asztali háttérkép kezelése).
A Sway a wlroots könyvtár tetejére épülő moduláris projektként készül, amely tartalmazza az összes alapvető primitívet az összetett menedzser munkájának megszervezéséhez. A Wlroots háttérprogramokat tartalmaz a képernyőhöz való absztrakt hozzáféréshez, a beviteli eszközökhöz, az OpenGL közvetlen elérése nélküli rendereléshez, a KMS/DRM-mel való interakcióhoz, a libinputhoz, a Waylandhez és az X11-hez (az Xwayland alapú X11 alkalmazások futtatásához egy réteg biztosított). A Sway mellett a wlroots könyvtárat más projektekben is aktívan használják, beleértve a Librem5-öt és a Cage-et. A C/C++ mellett kötéseket fejlesztettek ki a Scheme, Common Lisp, Go, Haskell, OCaml, Python és Rust számára.
Az új kiadásban:
- Lehetőség van a fülek egérrel történő mozgatására.
- Hozzáadott támogatás a virtuális valóság fejhallgatóinak kimenetéhez.
- Hozzáadott "output render_bit_depth" parancs a nagy bitmélységű kompozit mód kimenetének engedélyezéséhez.
- A teljes képernyős ablakok kimenetének jobb megbízhatósága és teljesítménye (a dmabuf használatával a közvetlen kimenet további pufferelés nélkül biztosított).
- Az xdg-activation-v1 protokollt használják, amely lehetővé teszi a fókusz átvitelét a különböző első szintű felületek között (például az xdg-activation használatával az egyik alkalmazás átkapcsolhat egy másikra).
- A client.focused_tab_title opció hozzáadva az aktív lap színének beállításához.
- Hozzáadtuk az „output modeline” parancsot a saját DRM (Direct Rendering Manager) mód beállításához.
- Hozzáadtuk az "output dpms toggle" parancsot, hogy megkönnyítse a képernyő kiürítését a szkriptekből. Szintén hozzáadva a "gaps" parancsokat kapcsolót ", "smart_gaps inverse_outer" és "split none".
- A "--my-next-gpu-wont-be-nvidia" opciót eltávolítottuk, és a "--unsupported-gpu" módra váltotta. A szabadalmaztatott NVIDIA illesztőprogramok továbbra sem támogatottak.
- Az alapértelmezett beállításokban definiált terminál emulátort lábra cseréltük.
- Lehetővé tette a swaybar és a swaynag párbeszédpanelek letiltását az összeállítás során.
- Tilos az ablakcím magasságának dinamikus változtatása a címszöveg karaktereitől függően, a cím ezentúl mindig fix magasságú.
Forrás: opennet.ru