Stacking window manager



A stacking window manager (also called floating window manager) is a window manager that draws and allows windows to overlap, without using a compositing algorithm. All window managers that allow the overlapping of windows but are not compositing window managers are considered stacking window managers, although it is possible that not all use exactly the same methods. Other window managers that are not considered stacking window managers are those that do not allow the overlapping of windows, which are called tiling window managers.

Stacking window managers allow windows to overlap using clipping to allow applications to write only to the visible parts of the windows they present.

The order in which windows are to be stacked is called their z-order.

Hybrid window managers
Some window managers may be able to treat the foreground window in an entirely different way, by rendering it indirectly, and sending its output to the video card to be added to the outgoing raster. While this technique may be possible to accomplish within some stacking window managers, it is technically compositing, with the foreground window and the screen raster being treated the same way two windows would be in a compositing window manager.

Interacting with objects outside the original area of the foreground window might also be impossible, since the window manager would not be able to determine what the user is seeing, and would pass such mouse clicks to whatever programs occupied those areas of the screen during the last stacking event.

X Window System
Many windows managers under the X Window System provide stacking window functionality:


 * 2bwm
 * 4Dwm
 * AfterStep
 * amiwm
 * awesome
 * berry
 * Blackbox
 * ctwm
 * cwm
 * dwm
 * qpwm
 * eggwm
 * Enlightenment
 * Fluxbox
 * FLWM
 * FrankenWM
 * FVWM
 * FVWM95
 * Goomwwm
 * Hackedbox
 * IceWM
 * Iwm
 * jbwm
 * JWM
 * Karmen
 * KWin (with compositing turned off)
 * MLVWM
 * MWM
 * Mutter
 * Muffin
 * olwm
 * Openbox
 * pawm
 * PLWM
 * Sawfish
 * Scwm
 * swm
 * TinyWM
 * tvtwm
 * twm
 * vwm
 * vtwm
 * Window Maker
 * WindowLab
 * wm2
 * wmx

Microsoft Windows
Microsoft Windows 1.0 displayed windows using a tiling window manager. In Windows 2.0, it was replaced with a stacking window manager, which allowed windows to overlap. Microsoft kept the stacking window manager up through Windows XP, which presented severe limitations to its ability to display 3D-accelerated content inside normal windows. Although it was technically possible to produce some visual effects using third-party software. From Windows Vista onward, a new compositing window manager is the default on compatible systems.

History

 * 1970s: The Xerox Alto which contained the first working commercial GUI used a stacking window manager.
 * Early 1980s: The Xerox Star, successor to the Alto, used tiling for most main application windows, and used overlapping only for dialogue windows removing the need for full stacking.
 * The Classic Mac OS was one of the earliest commercially successful examples of a GUI which used stacking windows.
 * GEM predated Microsoft Windows and used stacking, allowing all windows to overlap.
 * Amiga OS contains an early example of a highly advanced stacking window manager.