Jump to content

Tiling window manager: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
No edit summary
Line 34: Line 34:
[[Image:Wmii-3 screenshot.png|thumb|right|[[wmii]] with a number of terminals open]]
[[Image:Wmii-3 screenshot.png|thumb|right|[[wmii]] with a number of terminals open]]
[[Image:dwm-screenshot.png|thumb|right|[[dwm]] is the little brother of wmii.]]
[[Image:dwm-screenshot.png|thumb|right|[[dwm]] is the little brother of wmii.]]
[[Image:Scrotwm.png|thumb|right|[[scrotwm]] with three windows.]]
[[Image:Scrotwm.png|thumb|right|[[scrotwm]] with master area on the left.]]


In the [[X Window System]] the window manager is a separate program. X itself enforces no specific window management approach and current X protocol version X11 explicitly mentions the possibility of tiling window managers. The Siemens RTL Tiled Window Manager (released in 1988) was the first to implement automatic placement/sizing strategies. Another tiling window manager from this period was the Cambridge Window Manager developed by [[IBM]]'s Academic Information System group.
In the [[X Window System]] the window manager is a separate program. X itself enforces no specific window management approach and current X protocol version X11 explicitly mentions the possibility of tiling window managers. The Siemens RTL Tiled Window Manager (released in 1988) was the first to implement automatic placement/sizing strategies. Another tiling window manager from this period was the Cambridge Window Manager developed by [[IBM]]'s Academic Information System group.
Line 45: Line 45:


[[Matchbox (window manager)|Matchbox]] may also be considered a tiling window manager, as it does not permit overlapping main windows (although, like many tiling window managers, dialog windows are "special", with stacked management), but it accomplishes this by showing only one window, rather than literally tiling of multiple windows. This can be considered as a single-tile layout.
[[Matchbox (window manager)|Matchbox]] may also be considered a tiling window manager, as it does not permit overlapping main windows (although, like many tiling window managers, dialog windows are "special", with stacked management), but it accomplishes this by showing only one window, rather than literally tiling of multiple windows. This can be considered as a single-tile layout.

[[Scrotwm (window manager)|scrotwm]] has a master area concept which, by default, is the largest window. This can however be changed by adding or removing windows to the master area. Just about any non-overlapping configuration can be created by combining that with the two main tiling algorithms (horizontal & vertical). [[Scrotwm]] tries to integrate misbehaving graphical applications as best as possible by applying some simple heuristics and quirks. [[Scrotwm]] supports multi-screen via the [[Xrandr]] extension.


==== List of tiling window managers for X ====
==== List of tiling window managers for X ====

Revision as of 04:53, 3 February 2009

The Ion window manager with the screen divided into three tiles.

In computing, a tiling window manager is a window manager with an organization of the screen into mutually non-overlapping frames, as opposed to the more popular approach of coordinate-based stacking of overlapping objects (windows) that tries to fully emulate the desktop metaphor.

History

Xerox PARC

The first graphical user interface was created at Xerox PARC. This GUI (Smalltalk) used the desktop metaphor. Later Xerox PARC also developed CEDAR, the first windowing system using a tiled window manager. The first Xerox Star system tiled application windows, but allowed dialogs and property windows to overlap.[1]

Andrew Project

Andrew Project's windowing system, the Andrew Window Manager was tiling only. It was superseded by "X Window System".

Prominent tiling window managers

Microsoft Windows

Microsoft Windows includes a window manager since Windows 95 which, while by default follows the traditional overlapping windows approach, can optionally also act as a tiling window manager. To tile windows, first select them in the taskbar. Multiple windows can be selected while holding the Control key during clicking. Then, right click and from the context menu choose "Tile Vertically" or "Tile Horizontally". However these options are badly worded. Choosing "Tile Vertically" will cause the windows to tile horizontally but take on a vertical shape, while choosing "Tile Horizontally" will cause the windows to tile vertically but take on a horizontal shape. These options were later changed in Windows Vista to a less confusing "Show Windows Stacked" and "Show Windows Side by Side".

History

The first version (Windows 1.0) featured a tiling window manager, partly because of litigation by Apple claiming ownership of the overlapping window desktop metaphor. But due to complaints, the next version (Windows 2.0) followed the desktop metaphor. All later versions of the operation system stuck to this approach as the default beviour.

3rd party addons

There are third party programs that add more sophisticated tiling functionality:

  • WindowSizer - Tiles windows (shareware)
  • WinSplit - Tiles windows using keyboard shortcuts (freeware)
  • DockBox - Tiling window manager with both manual and automatic tiling (GPL)
  • GridMove - Tiles and arranges windows on sophisticated layouts with hotkeys and multi-monitor support (freeware/donationware)
  • bug.n - Dynamic, tiling window manager, which tries to clone the functionality of dwm (see list of X window managers) (GPL)
  • MaxTo - Tiles windows on user-defined grid by intercepting windows that are maximized or using hotkeys. Supports multi-monitor setups (freeware)

X Window System

wmii with a number of terminals open
dwm is the little brother of wmii.
scrotwm with master area on the left.

In the X Window System the window manager is a separate program. X itself enforces no specific window management approach and current X protocol version X11 explicitly mentions the possibility of tiling window managers. The Siemens RTL Tiled Window Manager (released in 1988) was the first to implement automatic placement/sizing strategies. Another tiling window manager from this period was the Cambridge Window Manager developed by IBM's Academic Information System group.

No new tiling window managers for X were developed for some time. In 2000 both larswm and Ion released a first version. Larswm implements a form of dynamic tiling: The display is vertically split in two regions (tracks). The left track is filled with a single window. The right track contains all other windows stacked on top of each other.

Ion combines tiling with a tabbing interface: The display is manually split in non-overlapping regions (frames). Each frame can contain one or more windows. Only one of these windows is visible and fills the entire frame.

dwm allows for switching tiling layouts by clicking a textual 'icon' in the status bar. The default is a Larswm-like main area + stacking area arrangement, represented by a []= character glyph. There is also a non-tiling floating layout similar to evilwm which permits windows to be moved and resized, represented by a fish-like ><>. Third party patches exist to add a golden section-based Fibonacci layout[1], a grid layout[2], and a horizontal stacking arrangement[3].

Matchbox may also be considered a tiling window manager, as it does not permit overlapping main windows (although, like many tiling window managers, dialog windows are "special", with stacked management), but it accomplishes this by showing only one window, rather than literally tiling of multiple windows. This can be considered as a single-tile layout.

scrotwm has a master area concept which, by default, is the largest window. This can however be changed by adding or removing windows to the master area. Just about any non-overlapping configuration can be created by combining that with the two main tiling algorithms (horizontal & vertical). Scrotwm tries to integrate misbehaving graphical applications as best as possible by applying some simple heuristics and quirks. Scrotwm supports multi-screen via the Xrandr extension.

List of tiling window managers for X

Since then other tiling window managers for X have also appeared:

  • larswm - One main window and a stack of the other windows in a column at the right
  • Ion - Manual tiling with tabbing
  • dwm - dynamic tiling
  • Ratpoison - Keyboard driven, GNU Screen for X
  • StumpWM - Ratpoison in Lisp
  • TrsWM
  • wmii - Developed in parallel to dwm by the same author
  • XMonad - Automatic tiling window manager written and extensible in Haskell
  • awesome - dwm derivative with ability to apply tags to windows
  • tritium[4]
  • Lucca WM [5]
  • Compiz has a Grid plugin which adds keyboard tiling shortcuts
  • plpwm is a configuration of the plwm window manager toolkit that provides tiling.
  • Matchbox tiles system trays and a single window, targeting embedded and mobile environments where multiple tiled windows don't fit well.
  • scrotwm [6] is a minimalistic window manager that tries to stay out of the way so that valuable screen real estate can be used for much more important stuff.

Third party tiling applications on Xorg

  • Tile is a small command allowing tiling windows under a floating window manager

Others

Tiling applications

Although tiling is not the default mode of window managers on any widely used platform, most applications already display multiple functions in a similar manner. Examples include email clients, IDEs, "sidebars" in web browsers, and contextual help in Microsoft Office. In addition, HTML frames can be seen as a markup language-based implementation of tiling. The tiling window manager extends this usefulness beyond multiple functions within an application, to multiple applications within a desktop. The Tabbed Document Interface can be a useful adjunct to tiling, as it avoids having multiple window tiles on screen for the same function.

References

See also

Template:Window Managers