- Window manager
A window manager is
computer software that controls the placement and appearance of windows within awindowing system in agraphical user interface . [ [http://dictionary.reference.com/browse/window%20manager window manager - Definitions from Dictionary.com ] ] Most window managers are designed to help provide adesktop environment . They work in conjunction with the underlyingwindowing system which provides required functionality such as support for graphics hardware, pointing devices, and a keyboard, and are often written and created using awidget toolkit . [ [http://linux.wikia.com/wiki/X_Window_System_protocols_and_architecture X Window System protocols and architecture - Linux Wiki ] ]Few window managers are designed with clear distinction between the
windowing system and the window manager. Every graphical operating system which uses awindows metaphor has some form of window management, however in practice the elements of this functionality vary greatly. [ [http://www.pcmag.com/encyclopedia_term/0,2542,t=window+manager&i=54598,00.asp window manager Definition ] ] The elements usually associated with window managers are those which allow the user to open, close, minimize, maximize, move, resize, and keep track of running windows, includingwindow decorator s. Many window managers also come with docks,task bar s, program launchers, desktop icons, and wallpaper.X Window Managers
On systems using the
X window system , there is a clear distinction between thewindow manager and thewindowing system . Strictly speaking anX window manager does not directly interact with video hardware, mice, or keyboards, which are the responsibility of theX server to provide.Users of the X Window System have the ability to easily use many different window managers such as those included in
GNOME ,KDE , and many others. Since many window managers are modular, people refer to programs such asCompiz (a 3Dcompositing window manager ), which replaces only parts of the graphical environment, as window managers as well. Components of different window managers can even be mixed and matched, for example thewindow decoration s from KDE'sKWin can be used with thedesktop anddock components of Gnome.X window managers also have the ability to re-parent applications, meaning that while initially all applications are adopted by the root window, an application started within the root window can be adopted by another. Window managers under the X window system adopt applications from the root window and re-parent them to
window decoration s. Re-parenting can also be used to allow the contents of one window to be added to another, for example aflash player application can be re-parented to a browser window, and can appear to the naked eye as supposedly being part of that program.Re-parenting window manager s can therefore arrange one or more programs into the same window, and can easily combine tiling and stacking in various ways.Microsoft Windows XP
Microsoft Windows XP allows the user to change between a limited number of window management options, limited mainly to the classic Windows 95 look, and the newer Luna theme. Alternative shells for Microsoft Windows XP and earlier have also emerged. For example,LiteStep can replace theuser interface on Windows 95, 98, or NT with anAfterstep style. [ [http://lsdocs.shellfront.org/ LiteStep b24.6 ] ] [ [http://www.afterstep.org/ AfterStep - Welcome to the Official AfterStep website ] ]However the level of customization which is even possible in
Windows XP compared toLinux is severely limited due to the tight integration of the various components.Microsoft Windows Vista
Windows Vista has a built in theme-ableCompositing window manager calledDesktop window manager . [ [http://msdn2.microsoft.com/en-us/library/aa969540(VS.85).aspx Desktop Window Manager ] ] This window manager can use multiple various user interfaces with varying levels of sophistication. By defaultWindows Aero 's glass environment, which is a fully 3D accelerated interface can be turned off, replacing it with a simpler and faster interface.It's uncertain if Microsoft has plans to release future updates to add more window management features and plug-ins.
Types of window managers
Window managers are often divided into three classes, which describe how windows are drawn and updated.
Compositing Window Managers
Compositing window managers allow all windows to be created and drawn separately and then put together and displayed in various 2D and 3D environments. This allows for a great deal of variety in interface look and feel, and for the presence of advanced 2D and 3D visual effects.
Mac OS X was the first operating system to be packaged with a
Compositing window manager . [http://arstechnica.com/reviews/os/macosx-10-4.ars/13 Mac OS X 10.4 Tiger: Page 13 ] ] [ [http://www.kernelthread.com/mac/osx/history.html A Brief History of Mac OS X ] ]Stacking window managers
All window managers that have overlapping windows and are not
compositing window manager s arestacking window manager s, although it is possible that not all use exactly the same methodologies.Stacking window manager s allow windows to overlap by drawing background windows first, which is referred to aspainter's algorithm . Changes sometimes require all windows to be re-stacked or repainted which usually involves redrawing every window. However to bring a background window to the front usually only requires that one window to be redrawn, since background windows may have bits of other windows painted over them effectively erasing the areas that are covered.Tiling window manager
Tiling window managers paint all windows on-screen by placing them side by side or above and below each other, so that no window ever covers another. Microsoft Windows 1.0 used tiling, and a variety of tiling window managers for Linux/UNIX are available.
Features and Facilities of Window Managers
Mouse Warping This is a facility that centres the mouse pointer on the current application as it is made active.
History
In the 1970s, the
Xerox Alto became the first computer shipped with a workingWIMP GUI . It used a stacking window manager which allowed overlapping windows. [ [http://toastytech.com/guis/alto3.html The Xerox Alto ] ] . While it is unclear ifMicrosoft Windows contains designs copied from Apple'sMac OS , it is clear that neither was the first to produce a GUI using stacking windows. In the early 1980s, theXerox Star , successor to the Alto, used tiling for most main application windows, and used overlapping only for dialogue boxes, removing most of the need for stacking. [ [http://toastytech.com/guis/star.html The Xerox Star ] ]GEM 1.1 was a window manager which supported thedesktop metaphor , and used stacking, allowing all windows to overlap. It was released in the early 80s. [ [http://toastytech.com/guis/gem11.html GEM 1.1 ] ] .GEM is famous for having been included as the mainGUI used on theAtari ST , which randAtari TOS , and was also a popularGUI forMS-DOS prior to the widespread use ofMicrosoft Windows . As a result of a lawsuit by Apple,GEM was forced to remove the stacking capabilities, making it atiling window manager . [ [http://toastytech.com/guis/gem20.html GEM 2.0 ] ]Mac OS was one of the earliest commercially successful examples of aGUI which used a sort of stacking window management viaQuickDraw . CurrentlyMac OS X uses a somewhat more advanced window manager which has supported compositing sinceMac OS X 10.0 , and was updated inMac OS X 10.2 to support hardware accelerated compositing via theQuartz Compositor .During the mid 80s,
Amiga OS contained an early example of a stacking window manager. Instead of using adesktop metaphor , theAmiga instead used aninterface metaphor centred around a workbench, with drawers rather than folders. Therefore its window manager was entitled "Amiga Workbench".In 1988
Presentation Manager became the default shell inOS/2 , which before that point used acommand line interface (CLI).OS/2 shared a common ancestry withMicrosoft Windows , and was a joint project betweenMicrosoft andIBM . After Microsoft and IBM split, OS/2 v3 was renamedWindows NT , and Presentation Manager was later dropped in favour of Microsoft's own windowing system and window manager. [ [http://www.os2bbs.com/OS2News/OS2History.html OS/2 History ] ]See also
*
X window manager
*Desktop environment
*Shell (computing)
*Windowing system
*Interface metaphor References
Wikimedia Foundation. 2010.