All Topics  
Compositing window manager

 

   Email Print
   Bookmark   Link






 

Compositing window manager



 
 
A compositing window manager
Compositing window manager

A compositing window manager is a component of a computer's graphical user interface that draws windows and/or their borders. It also controls how they are displayed and interact with each other, and the rest of the desktop environment....
 is a component of a computer's graphical user interface
Graphical user interface

A graphical user interface is a type of user interface which allows people to human-computer interaction such as computers; hand-held devices such as MP3 Players, Portable Media Players or Gaming devices; household appliances and office equipment....
 that draws windows and/or their borders. It also controls how they are displayed and interact with each other, and the rest of the desktop environment. The main difference between a compositing window manager and a standard window manager
Window manager

A window manager is computer software that controls the placement and appearance of window within a windowing system in a graphical user interface....
 is that instead of outputting to a common screen, programs each output first to a separate and independent buffer, or temporary location inside the computer, where they can be manipulated before they are shown.

The output from these separate buffers is then processed and combined by the window manager, or composited, onto a common desktop.






Discussion
Ask a question about 'Compositing window manager'
Start a new discussion about 'Compositing window manager'
Answer questions from other users
Full Discussion Forum



Encyclopedia


A compositing window manager
Compositing window manager

A compositing window manager is a component of a computer's graphical user interface that draws windows and/or their borders. It also controls how they are displayed and interact with each other, and the rest of the desktop environment....
 is a component of a computer's graphical user interface
Graphical user interface

A graphical user interface is a type of user interface which allows people to human-computer interaction such as computers; hand-held devices such as MP3 Players, Portable Media Players or Gaming devices; household appliances and office equipment....
 that draws windows and/or their borders. It also controls how they are displayed and interact with each other, and the rest of the desktop environment. The main difference between a compositing window manager and a standard window manager
Window manager

A window manager is computer software that controls the placement and appearance of window within a windowing system in a graphical user interface....
 is that instead of outputting to a common screen, programs each output first to a separate and independent buffer, or temporary location inside the computer, where they can be manipulated before they are shown.

The output from these separate buffers is then processed and combined by the window manager, or composited, onto a common desktop. The result is that the programs now behave as independent 2D or 3D objects. Compositing allows for advanced visual effects, such as transparency, fading, scaling, duplicating, bending and contorting, shuffling, and redirecting applications. The addition of a virtual third dimension allows for features such as realistic shadows beneath windows, the appearance of distance and depth, live thumbnail versions of windows, and complex animations, to name just a few.

The most commonly-used compositing window managers are the Desktop Window Manager
Desktop Window Manager

Desktop Window Manager is a compositing window manager, introduced with Windows Vista, that enables the Windows Aero graphical user interface and visual theme....
 in Microsoft Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
, the Quartz Compositor
Quartz Compositor

Quartz Compositor is the windowing system in Mac OS X. It is responsible for presenting and maintaining rasterized, rendered graphics from the rest of the Core Graphics framework and other renderers in the Quartz family....
 in Mac OS X
Mac OS X

Mac OS X is a line of computer operating systems developed, marketed, and sold by Apple Inc., and since 2002 has been included with all new Macintosh computer systems....
, and Compiz
Compiz

Compiz is one of the first compositing window managers for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management....
 and Kwin
KWin

In Unix computing, KWin is a X window manager for the X Window System. It is an integral part of the KDE , although it can be used on its own or with other desktop environments....
 for Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
, FreeBSD
FreeBSD

FreeBSD is a Unix-like free software operating system descended from AT&T Unix via the Berkeley Software Distribution branch through the 386BSD and Berkeley Software Distribution#4.4BSD and descendants operating systems....
 and OpenSolaris
OpenSolaris

File:Opensolaris-screenshot-2008-05.pngOpenSolaris is an open source operating system based on Sun Microsystems' Solaris . It is also the name of the project initiated by Sun to build a developer and user community around it....
 systems.

History


On March 24, 2001, Mac OS X v10.0
Mac OS X v10.0

Mac OS X version 10.0, code named ?Cheetah?, was the first Software version of Mac OS X, Apple Inc. desktop and server operating system. Mac OS X v10.0 was released on March 24, 2001 for a price of US$129....
 was the first mainstream operating system to ship with working compositing and effects, provided by its Quartz
Quartz (graphics layer)

Quartz specifically refers to a pair of Mac OS X technologies, each part of the Core Graphics framework: Quartz 2D and Quartz Compositor. It includes both a 2D renderer in Core Graphics and the composition engine that sends instructions to the graphics card....
 component. However compositing was not accelerated using hardware. On August 13, 2002 with the release of Mac OS X v10.2
Mac OS X v10.2

Mac OS X version 10.2 ?Jaguar? was the third Software version of Mac OS X, Apple Inc. desktop and server operating system. It superseded Mac OS X v10.1 code name Puma and preceded Mac OS X v10.3 ?Panther?....
 and Quartz Extreme, the job of compositing could be moved to the video card (for certain types of card), where it took advantage of the hardware's drawing capabilities.

Compositing under the X Window System
X Window System

The X Window System is a computing software system and network protocol that provides a graphical user interface for networked computers. It implements the X Window System protocols and architecture and provides windowing system on raster graphics Visual display units and manages Keyboard and pointing device control functions....
 required some redesign, which took place gradually, and slowly opened up many new possibilities. Metacity
Metacity

Metacity is a compositing window manager used by default in the GNOME desktop environment. The development of Metacity was started by Havoc Pennington and it is released under the GNU General Public License....
 2.8.4 was one of the first X Window System compositing window managers, which is now included with GNOME
Gnome

A gnome is a mythical creature characterized by its extremely small size and wiktionary:subterranean lifestyle. The word gnome is derived from the New Latin gnomus....
, and was released in August of 2004. The first widely-publicized compositing window manager for X was Xfwm, which is part of the Xfce
Xfce

Xfce is a free software desktop environment for Unix and other Unix-like platforms, such as Linux, Solaris and BSD. It aims to be fast and lightweight, while still being visually appealing and easy to use....
 desktop environment
Desktop environment

In graphical computing, a desktop environment commonly refers to a style of graphical user interface that is based on the desktop metaphor which can be seen on most modern personal computers today....
, and was released in January 2005. KDE
KDE

KDE is a free software project based around its flagship product, a desktop environment for Unix-like systems. The goal of the project is to provide basic desktop functions and applications for daily needs as well as tools and documentation for developers to write stand-alone applications for the system....
's KWin
KWin

In Unix computing, KWin is a X window manager for the X Window System. It is an integral part of the KDE , although it can be used on its own or with other desktop environments....
 now also supports compositing. On January 26, 2005, Compiz
Compiz

Compiz is one of the first compositing window managers for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management....
 was released on Linux and added fully accelerated 3D compositing to the Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
 platform.

A compositing window manager for Microsoft Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
 codename Longhorn, the Desktop Window Manager
Desktop Window Manager

Desktop Window Manager is a compositing window manager, introduced with Windows Vista, that enables the Windows Aero graphical user interface and visual theme....
, was first demonstrated in WinHEC 2003, including "Compiz-style" floppy windows. Windows Vista
Windows Vista

Windows Vista is one member in a family of operating systems developed by Microsoft for use on personal computers, including home and business Desktop computer, laptops, Tablet PCs, and media center PCs....
 was severely delayed
Development of Windows Vista

Development of Windows Vista occurred over the span of five and a half years, starting in earnest in May 2001, prior to the release of Microsoft's Windows XP operating system, and continuing until November 2006....
, however, and so Windows did not gain compositing capabilities until Vista was released in January 2007.

Basic 2D compositing


Windows
Window (computing)

In computing, a window is a visual area, usually rectangular in shape, containing some kind of user interface, displaying the output of and allowing input for one of a number of simultaneously running computer processes....
 are naturally 2D planar objects, and as such, window manager
Window manager

A window manager is computer software that controls the placement and appearance of window within a windowing system in a graphical user interface....
s work mainly in 2D. This presents issues when extending the manager into three dimensions, or when attempting to create 3D-style visual effects.

In Metacity
Metacity

Metacity is a compositing window manager used by default in the GNOME desktop environment. The development of Metacity was started by Havoc Pennington and it is released under the GNU General Public License....
, for example, windows are drawn separately, and then added to the desktop, so even hidden parts of windows have been actively rendered. While still possessing many of the properties of their 3D counterparts, the output from 2D compositing window managers has no depth, meaning that windows still exist in a plane, and shadows, if supported, will be less realistic.

Compositing managers usually depend on the "Composite" extension of the X server; the compositing manager uses hardware acceleration through this extension, if available.

While not noticeably different to the naked eye, 2D compositing creates a more realistic model of the windowing system than traditional stacking window managers, which allows for features like window translucency and eliminates the need for chroma keying or green screening in the X video extension
X video extension

The X video extension, often abbreviated as XVideo or Xv, is a video output mechanism for the X Window System. The protocol was designed by David Carver; the specification for version 2 of the protocol was written in July 1991....
.

3D compositing window managers


Recently several 3D accelerated compositing window managers have become mainstream, including Compiz
Compiz

Compiz is one of the first compositing window managers for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management....
, Compiz Fusion
Compiz Fusion

Compiz Fusion is a collection of plugins and a configuration system for the Compiz compositing window manager for the X Window System. Compiz Fusion is the result of a merge between the old Compiz community plugin set "Compiz Extras" and the parts of the Beryl project that are independent of the window manager core....
, and Desktop Window Manager
Desktop Window Manager

Desktop Window Manager is a compositing window manager, introduced with Windows Vista, that enables the Windows Aero graphical user interface and visual theme....
. Mac OS X
Mac OS X

Mac OS X is a line of computer operating systems developed, marketed, and sold by Apple Inc., and since 2002 has been included with all new Macintosh computer systems....
 has been using compositing windowing functions since Mac OS X 10.0 which shipped with the Quartz Compositor
Quartz Compositor

Quartz Compositor is the windowing system in Mac OS X. It is responsible for presenting and maintaining rasterized, rendered graphics from the rest of the Core Graphics framework and other renderers in the Quartz family....
.

OpenGL
OpenGL

OpenGL is a standard specification defining a cross-language cross-platform Application programming interface for writing applications that produce 2D computer graphics and 3D computer graphics....
 or DirectX
DirectX

Microsoft DirectX is a collection of application programming interfaces for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms....
 may be used in some compositing window managers to offload the rendering work to the video card
Video card

A video card, also known as a graphics accelerator card, display adapter, or graphics card, is an expansion card whose function is to generate and output images to a display....
. The first published implementation using this technique under Mac OS X 10.2, and on Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
 it was the Luminocity
Luminocity

Luminocity is a window manager for the X Window System. It was developed by Owen Taylor and is released under the GNU General Public License. It was used to test experimental compositing features for the window manager Metacity....
 prototype. As of 2008, some window managers using OpenGL include Compiz
Compiz

Compiz is one of the first compositing window managers for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management....
, Beryl
Beryl (window manager)

Beryl was a compositing window manager for the X Window System which Fork from Compiz in September 2006 and was re-merged in 2007, under the name of Compiz Fusion....
, and the Quartz Compositor
Quartz Compositor

Quartz Compositor is the windowing system in Mac OS X. It is responsible for presenting and maintaining rasterized, rendered graphics from the rest of the Core Graphics framework and other renderers in the Quartz family....
, while presently Desktop Window Manager
Desktop Window Manager

Desktop Window Manager is a compositing window manager, introduced with Windows Vista, that enables the Windows Aero graphical user interface and visual theme....
 uses DirectX 9. Since some of OpenGL is still not supported in hardware, performance of OpenGL-based compositing should continue to improve as 3D cards improve.

Linux



Under Linux/UNIX, despite the presence of compositing support in X11, the ability to do full 3D accelerated compositing relies on several architectural changes in the implementation to X11. These changes allow parts of the graphical environment to be run directly on the graphics card. Originally, a number of alternate X11 implementations designed around OpenGL
OpenGL

OpenGL is a standard specification defining a cross-language cross-platform Application programming interface for writing applications that produce 2D computer graphics and 3D computer graphics....
 began to appear, including Xgl
Xgl

Xgl is an X Window System architecture designed to take advantage of modern graphics cards via their OpenGL drivers, layered on top of OpenGL via Glitz ....
, which uses OpenGL to provide a fully 3D environment for window managers. Later, AIGLX
AIGLX

Accelerated Indirect GLX is an open source project founded by Red Hat and the Fedora community to allow accelerated indirect GLX rendering capabilities to X.Org and Direct Rendering Infrastructure drivers....
 would eliminate the need to use Xgl, and allow window managers to do 3D accelerated compositing on a standard X server, while still enabling DRI
Direct Rendering Infrastructure

In computing, the Direct Rendering Infrastructure is an interface and a free software implementation used in the X Window System to securely allow user applications to access the video hardware without requiring data to be passed through the X server....
 to reach the graphics card. Currently NVIDIA
NVIDIA

Nvidia is a multinational corporation specializing in the manufacture of graphics processing unit technologies for workstations, desktop computers, and mobile devices....
, Intel and ATI
Ati

As a word, Ati may refer to:* Ati, Chad, a town in Chad* Ati , a Negrito ethnic group in the Philippines** Ati-Atihan Festival, an annual celebration held in the Philippines...
 cards support AIGLX.

Compiz
Compiz

Compiz is one of the first compositing window managers for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management....
 is probably the most well known on Linux for its cube effect. It includes a wide array of impressive 2D and 3D effects and runs very well even on slightly older video hardware.

Microsoft Windows

The release of Windows Vista
Windows Vista

Windows Vista is one member in a family of operating systems developed by Microsoft for use on personal computers, including home and business Desktop computer, laptops, Tablet PCs, and media center PCs....
 in November 2006 introduced 3D compositing capabilities to Microsoft Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
, with the new Desktop Window Manager
Desktop Window Manager

Desktop Window Manager is a compositing window manager, introduced with Windows Vista, that enables the Windows Aero graphical user interface and visual theme....
.

Of the three most popular mainstream desktop operating system
Operating system

An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
s, (Microsoft Windows, Mac OS X, and Linux), Microsoft Windows was the last to include a working compositing window manager. However, the Desktop Window Manager was among the first to actually be developed: Longhorn's compositor was demonstrated extensively in WinHEC 2003, including "floppy" windows that would be seen in Compiz two years later. The development of Windows Vista
Development of Windows Vista

Development of Windows Vista occurred over the span of five and a half years, starting in earnest in May 2001, prior to the release of Microsoft's Windows XP operating system, and continuing until November 2006....
 extended for years past its initial plans due to other factors, however, and so with it the compositor.

Microsoft Windows has natively supported alpha blending since Windows 2000
Windows 2000

Windows 2000 is a line of operating systems produced by Microsoft for use on business desktops, Laptop, and Server . Released on 17 February, 2000, it was the successor to Windows NT 4.0, and is the final release of Microsoft Windows to display the "Windows NT" designation....
. Few applications took advantage of it, though numerous small freeware
Freeware

Freeware is computer software that is available for use at no cost or for an optional fee. Freeware is different from shareware; the latter obliges the user to pay ....
 utilities sprung up which used the capability to enable the user to set a custom transparency level on any window.

Usability considerations


While compositing window managers have earned a reputation for dazzling visual effects, and faster speed, they also play a role in computer usability. The very purpose of a windows metaphor is to improve computer usability by using familiar concepts. Through the use of compositing and 3D it should be possible to improve the quality of the metaphor, and in doing so improve the usability of the interface as a whole.

Magnifiers

Screen magnifiers can quickly allow a user to zoom in on an area of the screen. This allows text to be clearly read from a distance, or by someone who is visually impaired. Zoom effects such as the magnifier (specifically the fish eye) and zoom desktop effects found in Compiz provide this functionality. These effects can be easily adjusted using keyboard and mouse shortcuts.

While useful for those who are visually impaired, the ability to zero in on a column of text or other application area may have broad application, enabling a user to more easily focus on a specific area of the screen, while larger text may help reduce eye strain.

Window switching

Often users have several applications open with similar names, and icons. Since the full names of windows are generally at least partly obscured, normally one would have to remember where each program is located on the task bar, or use a variety of other memory and visual cues. This problem only gets worse with many windows open, eventually causing users resort to trial and error, clicking on each button until the right window pops up.

Compiz (Linux), Windows Vista, and Mac OS now provide a number of improvements to allow the user to more easily see and choose from running programs. Live previews of windows are available when task bar items are hovered over, allowing users to monitor and more easily identify each program.

Expose on Mac, also known as Scale under Compiz (Linux) scales and tiles all windows on the screen, allowing them all to be seen at once. As a result, a user can quickly identify the desired application by its visual appearance.

Flip switchers are present in both Linux and Windows Vista with very similar look and feel. Both allow the user to use the mouse wheel or keyboard to flip through a stack of running windows in the same way one would shuffle through a deck of cards, providing similar usability to the Expose feature.

Widget layers


Widget layers exist on Linux and Mac OS as well. On Mac OS, specifically designed and frequently used applications such as a clock, note pad, and calculator appear when a certain key is pressed, providing quick access to these commonly used tools. Widget layers speed work by keeping commonly used functionality loaded and quickly accessible while also keeping it out of the way, reducing clutter.

Under Compiz (Linux) the widget layer is blank initially, allowing the user to specifically designate (by clicking on them) which applications belong in the widget layer.

Windows Vista also provides similar functionality through gadgets which can be placed on the Windows Sidebar
Windows Sidebar

The Windows Sidebar is a widget engine for Microsoft Gadgets, which is anchored to the side of the desktop . The Sidebar is included with Windows Vista and is available on Windows Server 2008 as an optional component....
.

Transitions and other effects


In the real world, papers generally don't suddenly disappear from one's desktop, and drawers don't instantly pop out of a desk. For many users, jerky movement of windows and their tendency to suddenly appear and disappear on the screen can be confusing or even intimidating.

Some effects can be useful in giving the user a visual heads-up as to what is going on. Instead of just disappearing, windows may fade away, or visibly shrink to the task bar, helping to avoid the visual confusion often associated with things suddenly appearing and disappearing. Pull down menus may glide down from the menu bar, making it clearer where they originate.

While generally improving usability, these effects may be especially helpful for the elderly or visually impaired who notice changes to the screen more slowly and with less clarity. Gradual and more intuitive changes such as smooth movements may help. For example a menu suddenly appearing under the mouse when accidentally activated with the keyboard may cause some users to accidentally click on menu commands before they notice it's there, causing them to lose work. A short transition may catch the user's eye in time to avoid making this mistake.

List of compositing window managers

  • Compiz
    Compiz

    Compiz is one of the first compositing window managers for the X Window System that uses 3D graphics hardware to create fast compositing desktop effects for window management....
  • xcompmgr
  • Microsoft Windows' Desktop Window Manager
    Desktop Window Manager

    Desktop Window Manager is a compositing window manager, introduced with Windows Vista, that enables the Windows Aero graphical user interface and visual theme....
     and the Windows Aero
    Windows Aero

    Windows Aero is the graphical user interface and the default theme in most editions of Windows Vista, an operating system released by Microsoft on 31 January 2007....
     user interface.
  • KDE
    KDE

    KDE is a free software project based around its flagship product, a desktop environment for Unix-like systems. The goal of the project is to provide basic desktop functions and applications for daily needs as well as tools and documentation for developers to write stand-alone applications for the system....
    's KWin
    KWin

    In Unix computing, KWin is a X window manager for the X Window System. It is an integral part of the KDE , although it can be used on its own or with other desktop environments....
     (since version 4.0)
  • GNOME
    Gnome

    A gnome is a mythical creature characterized by its extremely small size and wiktionary:subterranean lifestyle. The word gnome is derived from the New Latin gnomus....
    's Metacity
    Metacity

    Metacity is a compositing window manager used by default in the GNOME desktop environment. The development of Metacity was started by Havoc Pennington and it is released under the GNU General Public License....
     (since version 2.14)
  • Xfce
    Xfce

    Xfce is a free software desktop environment for Unix and other Unix-like platforms, such as Linux, Solaris and BSD. It aims to be fast and lightweight, while still being visually appealing and easy to use....
    's Xfwm (since version 4.2)
  • Cairo Composite Manager


Operating systems with compositing window managers

  • AmigaOS 4.1
  • Linux
    Linux

    Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
     - under XOrg/AIGLX
    AIGLX

    Accelerated Indirect GLX is an open source project founded by Red Hat and the Fedora community to allow accelerated indirect GLX rendering capabilities to X.Org and Direct Rendering Infrastructure drivers....
     or Xgl
    Xgl

    Xgl is an X Window System architecture designed to take advantage of modern graphics cards via their OpenGL drivers, layered on top of OpenGL via Glitz ....
    .
  • OpenSolaris
    OpenSolaris

    File:Opensolaris-screenshot-2008-05.pngOpenSolaris is an open source operating system based on Sun Microsystems' Solaris . It is also the name of the project initiated by Sun to build a developer and user community around it....
  • Mac OS X
    Mac OS X

    Mac OS X is a line of computer operating systems developed, marketed, and sold by Apple Inc., and since 2002 has been included with all new Macintosh computer systems....
     10.2 and later.
  • MorphOS
    MorphOS

    MorphOS is a computer operating system . It is a mixed proprietary software and open source OS produced for the Pegasos PowerPC -processor-based computer, most models of PPC-accelerator-equipped Amiga computers, and a series of Freescale development boards that use the Genesi Firmware, including the EFIKA and mobileGT....
     2.0 and later
  • Windows Vista
    Windows Vista

    Windows Vista is one member in a family of operating systems developed by Microsoft for use on personal computers, including home and business Desktop computer, laptops, Tablet PCs, and media center PCs....
    , Windows Server 2008 (installable as an optional component)


External links