wydanie menedżera kompozycji , zbudowanego z wykorzystaniem protokołu Wayland i w pełni kompatybilnego z mozaikowym menedżerem okien i panelem . Kod projektu napisano w języku C i na licencji MIT. Projekt jest skierowany na użycie w systemach Linux i FreeBSD.
Kompatybilność z i3 zapewniona jest na poziomie poleceń, plików konfiguracyjnych oraz IPC, co pozwala na stosowanie Sway jako przezroczystego zamiennika i3, który wykorzystuje Wayland zamiast X11. Sway pozwala na rozmieszczanie okien na ekranie w sposób logiczny, a nie przestrzenny. Okna układane są w siatkę, która optymalnie wykorzystuje przestrzeń ekranu i umożliwia szybkie manipulowanie oknami wyłącznie za pomocą klawiatury.
Do zbudowania pełnego środowiska użytkownika oferowane są towarzyszące komponenty: (proces w tle z wdrożeniem protokołu KDE idle), (ekran blokady), (menedżer powiadomień), (tworzenie zrzutów ekranu), (wybór obszaru na ekranie), (nagrywanie wideo), (panel aplikacji), (klawiatura ekranowa), (praca z schowkiem), (zarządzanie tłem pulpitu).
Sway rozwija się jako projekt modułowy, zbudowany na bazie biblioteki , w której zawarte są wszystkie podstawowe prymitywy do organizacji pracy menedżera kompozycji. Wlroots zawiera backendy do
abstrakcji dostępu do ekranu, urządzeń wejściowych, renderowania bez bezpośredniego dostępu do OpenGL, interakcji z KMS/DRM, libinput, Wayland i X11 (dostępna jest warstwa do uruchamiania aplikacji X11 na bazie Xwayland). Oprócz Sway biblioteka wlroots jest aktywnie wykorzystywana również w , w tym i . Oprócz C/C++ opracowane zostały bindingi do Scheme, Common Lisp, Go, Haskell, OCaml, Python i Rust.
W nowym wydaniu:
- Przeprowadzono prace nad poprawą zgodności z menedżerem okien
. - Dodano opcję uruchamiania aplikacji po restarcie;
- Dodano przełącznik do wybierania domyślnej metody podziału okien na zakładki lub obok siebie (w postaci stosu);
- Dopracowano mechanizm przełączania układów klawiatury, dodano wsparcie dla rozpoznawania typów urządzeń wejściowych oraz zaproponowano nowe polecenie xkb_switch_layout;
- Dodano wsparcie dla motywów kursora, dla których zaproponowano nowe polecenie xcursor_theme;
- W layer-shell dodano wsparcie dla okien wyskakujących;
- Zrealizowano wsparcie dla protokołu Wayland , przeznaczonego do konfigurowania urządzeń wyjściowych;
- Dodano wsparcie dla atomowej zmiany ustawień ekranu przez API wlr_output;
- Dodano ustawienie calibration_matrix do kalibracji ekranów dotykowych;
- Usunięto kilka wycieków pamięci i problemów prowadzących do awarii.
Źródło: opennet.ru
