Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 How X window managers work  





2 Types of window managers  



2.1  Stacking window managers  





2.2  Tiling window managers  





2.3  Compositing window managers  





2.4  Virtual window managers  





2.5  Extensible window managers  







3 See also  





4 References  





5 External links  














X window manager






فارسی

Magyar

Norsk bokmål
Русский
Українська

 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


The windowing system based on the X11 protocol keeps display server and window manager as separate components.

AnX window manager is a window manager that runs on top of the X Window System, a windowing system mainly used on Unix-like systems.

Unlike MacOS Classic, macOS, and Microsoft Windows platforms (excepting Microsoft Windows explorer.exe shell replacements), 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:

How X window managers work[edit]

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. Most modern window managers do not literally show icons to represent iconified windows anymore. Often, an auxiliary toolbar program will allow access to iconified windows.

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.

Standardized protocols exist to allow normal clients to communicate with the window manager. The original one is Inter-Client Communication Conventions Manual (ICCCM) but this has been superseded by the Extended Window Manager Hints (EWMH). These protocols allow clients to request titles for windows and icons, check if a window is iconified which might be docked or minimized, and possibly customize windows decorations, what virtual desktop the window occupies.[1] Additional information from the window manager is available through the core protocol including the visibility of windows such as if a window is hidden on a different Virtual desktop, and figuring out the adjustments for the window manager frames.[citation needed]

Types of window managers[edit]

Stacking window managers[edit]

Astacking window manager renders the windows one-by-one onto the screen at specific co-ordinates. If one window's area overlaps another, then the window "on top" overwrites part of the other's visible appearance. This results in the appearance familiar to many users in which windows act a little bit like pieces of paper on a desktop, which can be moved around and allowed to overlap.

In contrast to compositing window managers (see below), the lack of separate off-screen buffers can mean increased efficiency, but effects such as translucency are not possible.

Stacking window managers include Amiwm, Blackbox, CTWM, Enlightenment, Fluxbox, FLWM, FVWM, IceWM, MWM, Openbox, TWM and Window Maker.

Tiling window managers[edit]

Atiling 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.

Tiling window managers include awesome, dwm, ion, larswm, ratpoison, Stumpwm, wmii, i3, xmonad, and XWEM.

Compositing window managers[edit]

Acompositing window manager may appear to the user similar to a stacking window manager. However, the individual windows are first rendered in individual buffers, and then their images are composited onto the screen buffer; this two-step process means that visual effects (such as shadows, translucency) can be applied. It also means that compositing window managers are inherently more resource-hungry than an equivalently-powerful stacking window manager. For this reason, some window managers for X do not support compositing by default, such as Openbox.Compositing in Lubuntu

Historically, the Amiga in 1985, OSX in 2001, Java Looking Glass in 2003, and the Windows Longhorn demo in 2003 (delayed until Vista in 2007) preceded compositing efforts under X11. Compositing window managers for X include:

Compositing support can be added to non-compositing window managers, through the use of compositors such as compton.

Virtual window managers[edit]

Avirtual window manager is a window manager that uses virtual screens, whose resolution can be higher than the resolution of one's monitor/display adapter thus resembling a two dimensional virtual desktop with its viewport. 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, including FVWM, Tvtwm, HaZe and others.

Extensible window managers[edit]

Some window managers are extensible, or programmable, by user scripts.

In these window managers, users can define new actions or override the default, or reactions to various events, like window size and position changes, window creation and deletion, key and mouse input, timer, etc. They often provide on-the-fly code execution, too.

Some examples of such window managers and the used languages are:

See also[edit]

References[edit]

  1. ^ a b "Extended Window Manager Hints". standards.freedesktop.org. Retrieved 2018-09-16.
  • ^ "home". awesome window manager.
  • External links[edit]


    Retrieved from "https://en.wikipedia.org/w/index.php?title=X_window_manager&oldid=1222676008"

    Categories: 
    X window managers
    X Window System
    Graphical user interfaces
    Hidden categories: 
    Articles with short description
    Short description is different from Wikidata
    Articles needing additional references from November 2011
    All articles needing additional references
    All articles with unsourced statements
    Articles with unsourced statements from September 2018
    Articles with unsourced statements from September 2013
     



    This page was last edited on 7 May 2024, at 08:40 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki