Menedżer okien

(c) Shmuel Csaba Otto Traian, CC BY-SA 3.0
Menedżer okien (window manager)
(c) Shmuel Csaba Otto Traian, CC BY-SA 3.0
System Okien (opis w j.ang)

Menedżer okienprogram zarządzający rozmieszczeniem, zachowaniem i rysowaniem okien w obrębie systemu okien[1]. Większość menedżerów okien jest elementem kompletnego środowiska graficznego dla danego systemu operacyjnego. Są one przeważnie napisane z wykorzystaniem jednej z istniejących bibliotek widżetów (np. Qt, GTK+).

W niektórych menedżerach okien występuje silne rozróżnienie między operacjami realizowanymi przez system okien oraz sam menedżer. W każdym graficznym systemie okienkowym musi istnieć jakaś forma zarządzania oknami, lecz w praktyce zakres funkcjonalności bywa różny. Do podstawowych operacji powszechnie kojarzonych z menedżerami okien należą: otwieranie, zamykanie, minimalizacja, maksymalizacja, przesuwanie okien oraz ich dekoratorów (paski tytułowe itd.). Wśród opcjonalnych funkcji można wymienić pasek zadań czy pulpit.

Rodzaje menedżerów okien

Menedżery okien dzielone są na kilka kategorii w zależności od tego, jak dzielona jest w nich pomiędzy okna przestrzeń robocza ekranu oraz jak odbywa się zarządzanie oknami.

Menedżer kafelkowy

W menedżerze kafelkowym obszar ekranu dzielony jest na niezachodzące na siebie „kafle”, gdzie w każdym z kafli może znaleźć się dokładnie jedno okno. Z techniki tej korzystał Microsoft Windows 1.0; istnieje także kilka kafelkowych menedżerów okien dla systemu X.

Menedżer stosowy

W menedżerze stosowym okna mogą zachodzić na siebie i przesłaniać wzajemnie, tworząc stos. Do tej kategorii zalicza się wszystkie menedżery okien korzystające z tej techniki, które nie są jednocześnie menedżerami kompozycji. Do rysowania okien we właściwej kolejności używany jest algorytm malarza. Niekiedy czynności wykonywane przez użytkownika wymagają przerysowania wszystkich okien, ale są też operacje, gdzie wystarczy odświeżyć jedynie fragment ekranu (np. przeniesienie przesłoniętego okna na wierzch).

Menedżer kompozycji

W menedżerze kompozycji okna rysowane są niezależnie od siebie do oddzielnych buforów w pamięci, a następnie składane i wyświetlane w środowiskach 2D lub 3D. Najbardziej zaawansowane menedżery udostępniają szeroki wachlarz efektów wizualnych oraz operacji do zarządzania lub przełączania się między oknami.

Menedżer dynamiczny

Menedżer dynamiczny to menedżer korzystający z kombinacji jednej z kilku pozostałych technik (np. kafelkowej i stosowej) umożliwiający swobodne przełączanie się między nimi.

W systemach okienkowych

X Window System

Menedżer okien X11

System okien X Window System sam w sobie nie zawiera żadnego menedżera okien. Istnieje szeroki wybór dostępnych menedżerów dla tego środowiska różniących się zakresem funkcjonalności. Oryginalnie architektura przewidywała pełną separację odpowiedzialności obu tych komponentów, lecz obecnie granica ta zaczęła się zacierać wraz z pojawieniem się menedżerów kompozycji i przenoszeniem części zadań systemu okien do jądra systemu operacyjnego lub do samego menedżera[2].

Microsoft Windows

System Windows posiada zintegrowany stosowy menedżer okien od wersji 2.0. Windows Vista wprowadził alternatywny menedżer kompozycji dwm.exe korzystający z akceleracji sprzętowej. W tej architekturze rola menedżera okien jest ściśle powiązana z podsystemami graficznymi jądra i przez to nie może być w pełni oddzielona. Istnieją jednak niezależne narzędzia, które potrafią zasymulować kafelkowy menedżer okien na bazie dostępnych funkcji.

Eksplorator Windows (explorer.exe) jest domyślnie używany do obsługi menedżera plików i paska zadań, jak również wielu funkcji menedżera okien. Różne aspekty pracy Eksploratora mogą być zmienione przez dostarczone narzędzia konfiguracyjne zmieniające rejestr systemu lub poprzez narzędzia niezależne. Menedżer okien w systemie Windows może także działać jako menedżer X-ów poprzez platformę Cygwin/X.

Przypisy

  1. Definicja menedżera okien
  2. KWin/Wayland w sekcji Why Plasma needs Wayland?

Linki zewnętrzne

Media użyte na tej stronie

Windowmanager ohne.png
Autor: , Licencja: CC BY-SA 3.0
Programs without Windowmanager