窗口管理器

窗口管理器

窗口管理器和桌面環境是用戶在 X Window 系統里的主要界面. 窗口管理器只是個程序, 它控制窗口的外表,位置和提供用戶去操作這些窗口程序的方法. 桌面環境為操作系統提供了一個較完整的圖形操作界面, 和提供了一定範圍和用途的實用工具和應用程序.

工作原理


當窗口管理器開始運作時,X伺服器和客戶端之間的互動,會重新導向到窗口管理器。每當要顯示一個新窗口時,這個請求便會被重新導向到窗口管理器,它會決定窗口的初始位置。此外,大部分較新的窗口管理器會改變窗口的親屬關係,通常會在窗口頂部加上標題列,並在窗口周圍加上裝飾性的框架。這兩個部分皆由窗口管理器來控制,而不是其它程式。因此,當使用者點擊或拖曳那些元件時,窗口管理器會進行適當的動作(如移動或改變窗口的大小)。
窗口管理器也負責處理圖示,圖示並不存在於X Window核心協議的層次中。當使用者將窗口圖示化時,窗口管理器會取消窗口的映射(使其不可見),並完成適當的動作,將窗口改顯示成圖示。某些窗口管理器並不支援圖示功能。
窗口管理器主要的目標,就如同其名,是用來管理窗口的。許多窗口管理器提供附加的功能,如處理滑鼠在根窗口上的點擊,呈現出窗格以及其它的視覺化元件,處理按鍵(例如 Alt-F4 可關閉窗口),判定哪一個應用程式在啟動時執行等等。

主流管理器


AfterStep
Blackbox (minimalist)
Compiz (a compositing window manager)
evilwm
Enlightenment (window manager)|Enlightenment
Fluxbox (lightweight, based on Blackbox)
FVWM(a virtual window manager,derived from twm)
IceWMIon (window manager)|Ion tiling tabbed window manager designed with keyboard users in mind
Openbox( LXDE默認的窗口管理器)
KWin(最初叫 KWM, 是 KDE默認的窗口管理器)
Metacity( GNOME 2.2后成為默認的窗口管理器)
MWM (Motif (widget toolkit)|Motif Window Manager), Motif Window Manager
Sawfish (window manager)|Sawfish (a past default for GNOME, originally called Sawmill)
twm (default for the X Window System since version X11R4)
Window Maker
Xfwm, Xfce默認的窗口管理器

特殊管理器


虛擬管理器

虛擬窗口管理器使用了虛擬的屏幕畫面,其解析度可大於顯示器的解析度。當希望有較多的窗口時,這個功能也很有用。虛擬窗口管理器包括有FVWM、Tvtwm、HaZe 等等。

平鋪式管理器

平鋪式窗口管理器是以不重疊畫面的方式組織屏幕畫面(故稱為平鋪式),相對於傳統的方式,它更近似於以坐標為基礎的疊置物件(窗口),其嘗試模仿辦公桌的式樣。
第一個平鋪式窗口管理器是 larswm,隨後是 Ion。以下是平鋪式窗口管理器的列表:
Awesome
Larswm
Ion
TrsWM
Stumpwm
wmii
dwm
ratpoison
XWEM
Xmonad

其它管理器


4dwm
5Dwm (derived from mwm, true SGI look&feel)
9wm (clone of the original windowing system of Plan 9)
aewm
amiwm Amiga workbench unix clone.
CTWM
dwm
EvilPoison (a fork of evilwm with Ratpoison-like keybindings)
FVWM95
HaZeJ
WM (Joe's Window Manager)
Kahakai
larswm
Luminocity (experimentation in compositing)
LWM
Matchbox
OLWM(and OLVWM with virtual desktops, OPEN LOOK window managers)
hackedbox
Oroborus
PekWM
PLWM
PWM
Qvwm (Windows 95/98 look-alike) (list of forks)
Ratpoison
Scwm (the Scheme constraints window manager)
Orion A nested (tiled or floating) window manager written in Scheme and scsh
swm (the original virtual desktop implementation)
Toy'd(HomePage GoogleProject a portable window manager for MS-Windows & UNIX / Linux platforms)
TrsWM
uwm
Waimea
WindowLab
wm2
WMI
wmii
XPwm(for XPde,Windows XP Look alike)