- X window manager
An X window manager is a
window manager which runs on top of theX Window System , awindowing system mainly used onUnix-like systems.Unlike the
Mac OS (Apple Macintosh ) andMicrosoft Windows platforms, which have historically provided a vendor-controlled, fixed set of ways to control how windows and panes display on a screen, and how the user may interact with them, window management for the X Window System was deliberately kept separate from the software providing the graphical display. The user can choose between various third-party window managers, which differ from one another in several ways, including:* customizability of appearance and functionality:
** textual menus used to start programs and/or change options
** docks and other graphical ways to start programs
** multiple desktops andvirtual desktop s (desktops larger than the physical monitor size), and pagers [http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#id2504750] to switch between them
* consumption of memory and other system resources
* degree of integration with adesktop environment , which provides a more complete interface to the operating system, and provides a range of integrated utilities and applications.How X window managers work
When a window manager is running, some kinds of interaction between the X server and its clients are redirected through the window manager. In particular, whenever an attempt to show a new window is made, this request is redirected to the window manager, which decides the initial position of the window. Additionally, most modern window managers are reparenting, which usually leads to a banner being placed at the top of the window and a decorative frame being drawn around the window. These two elements are controlled by the window manager rather than the program. Therefore, when the user clicks or drags these elements, it is the window manager that takes the appropriate actions (such as moving or resizing the window).
Window managers are also responsible for icons. Indeed, icons do not exist at the
X Window System core protocol level. When the user requests a window to be iconified, the window manager unmaps it (makes it non-visible) and takes the appropriate actions to show an icon in its place. Some window managers do not support icons.While the main aim of a window manager is to manage the windows, many window managers have additional features such as handling mouse clicks in the
root window , presenting panes and other visual elements, handling some keystrokes (e.g., Alt-F4 may close a window), deciding which application to run at start-up, etc.Specialised types of window managers
Several specialised types of window manager exist.
Virtual window managers
A "virtual window manager" is a window manager that uses virtual screens, whose resolution can be higher than the resolution of one's monitor/
display adapter . This environment is very useful when one wishes to have a large number of windows open at the same time. A number of virtual window managers have been made, includingFVWM ,Tvtwm ,HaZe and others.Tiling window managers
A "
tiling window manager " is a window manager with an organization of the screen into mutually non-overlapping frames (hence the name tiling), as opposed to the traditional approach of coordinate-based stacking of objects (windows) that tries to emulate the desk paradigm.The following is a list of tiling window managers.*
Larswm
*Ion
*TrsWM
*Stumpwm
*Subtle [http://unexist.scrapping.cc/subtle HomePage]
*wmii
*dwm
*ratpoison
*XWEM
*Xmonad
*awesomePopular X window managers
*
AfterStep
*Blackbox (minimalist)
*evilwm
*Enlightenment
*Fluxbox (lightweight, based on Blackbox)
*FVWM (avirtual window manager , derived from twm)
*IceWM
*Ion (a tiling tabbed window manager designed with keyboard users in mind)
*KWin (originally called KWM, default forKDE )
*Metacity (the current default for theGNOME desktop environment )
*MWM (Motif Window Manager),Motif Window Manager
*Openbox
*Sawfish (a past default for GNOME, originally called Sawmill)
*twm (default for the X Window System since version X11R4)
*Window Maker
*Xfwm4 (a window manager for theXfce desktop environment)Compositing window managers
*Beryl
*Compiz
*Metacity (default forGNOME and has a compositing option since version 2.20)
*Xfwm (default forXfce )
*KWin (default forKDE and has compositing option since 4.0)Other X window managers
*
4Dwm
*5Dwm (derived from mwm, true SGI look&feel)
*9wm [http://unauthorised.org/dhog/9wm.html] (clone of the original windowing system of Plan 9)
*aewm [http://www.red-bean.com/~decklin/software/aewm/]
*amiwm [http://www.lysator.liu.se/~marcus/amiwm.html]Amiga workbench unix clone.
*CTWM
*cwm [http://monkey.org/~marius/pages/?page=cwm]
* EvilPoison [http://clivecrous.lighthouseapp.com/projects/11269/home] (a fork of evilwm with Ratpoison-like keybindings)
*FVWM95
*hackedbox [http://www.scrudgeware.org/projects/Hackedbox/index.html]
*HaZe
*JWM (Joe's Window Manager)
*Kahakai
*Luminocity (experimentation in compositing)
*LWM [http://www.jfc.org.uk/software/lwm.html]
*Matchbox [http://projects.o-hand.com/matchbox/]
*olwm (and olvwm [http://home.nyc.rr.com/twopks/olvwm/] with virtual desktops,OPEN LOOK window managers)
*Orion A nested (tiled or floating) window manager written in Scheme and scsh [http://orion.antidesktop.net/cgi-bin/wiki]
*Oroborus
*PekWM
*PLWM
*PWM
*Qvwm (Windows 95/98 look-alike) [http://freshmeat.net/projects/qvwm/] (list of forks)
*Ratpoison
*Scwm (the Scheme constraints window manager)
*SithWM evilwm-based, virtual window manager(german page)
*swm (the original virtual desktop implementation)
*Toy'd ( [http://www.toyd.org/ HomePage] [http://code.google.com/p/toyd GoogleProject] a portable window manager for MS-Windows & UNIX / Linux platforms)
*TrsWM
*uwm
*vtwm
*Waimea [http://www.freedesktop.org/Software/waimea]
*WindowLab
*wm2
*XPwm (forXPde , Windows XP Look alike) - now defunct
*xwm See also
*
Re-parenting window manager for a popular implementation technique
*X Window System protocols and architecture for context
*Compositing window manager that combines two roles in one program
*Tiling window manager for a policy of arranging windows on screen
*Windowing system for other platforms than the X Window SystemExternal links
* [http://xwinman.org/ "Window Managers for X"] by Matt Chapman
* [http://uebb.cs.tu-berlin.de/~magr/wm-review.en.html "Window Managers"] - list of window managers with minimal comments (2004)
* [http://www.linuxsoft.cz/en/sw_list.php?id_kategory=5 "Software List:Window Managers"] - list of window managers with summaries
Wikimedia Foundation. 2010.