HOME

TheInfoList



OR:

In computing, a tiling window manager is a
window manager A window manager is system software that controls the placement and appearance of windows within a windowing system in a graphical user interface. Most window managers are designed to help provide a desktop environment. They work in conjunctio ...
with an organization of the screen into mutually non-overlapping frames, as opposed to the more common approach (used by
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 ...
s) of coordinate-based stacking of overlapping objects (
window A window is an opening in a wall, door, roof, or vehicle that allows the exchange of light and may also allow the passage of sound and sometimes air. Modern windows are usually glazed or covered in some other transparent or translucent mat ...
s) that tries to fully emulate the desktop metaphor.


History


Xerox PARC

The first
Xerox Star The Xerox Star workstation, officially named Xerox 8010 Information System, is the first commercial personal computer to incorporate technologies that have since become standard in personal computers, including a bitmapped display, a window-based ...
system (released in 1981) tiled application windows, but allowed dialogs and property windows to overlap. Later, Xerox PARC also developed
CEDAR Cedar may refer to: Trees and plants *''Cedrus'', common English name cedar, an Old-World genus of coniferous trees in the plant family Pinaceae *Cedar (plant), a list of trees and plants known as cedar Places United States * Cedar, Arizona * ...
(released in 1982), the first windowing system using a tiled window manager.


Various vendors

Next in 1983 came
Andrew Andrew is the English form of a given name common in many countries. In the 1990s, it was among the top ten most popular names given to boys in English-speaking countries. "Andrew" is frequently shortened to "Andy" or "Drew". The word is derive ...
WM, a complete tiled windowing system later replaced by
X11 The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems. X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wi ...
.
Microsoft Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washi ...
's Windows 1.0 (released in 1985) also used tiling (see sections below). In 1986 came
Digital Research Digital Research, Inc. (DR or DRI) was a company created by Gary Kildall to market and develop his CP/M operating system and related 8-bit, 16-bit and 32-bit systems like MP/M, Concurrent DOS, FlexOS, Multiuser DOS, DOS Plus, DR DOS and ...
's
GEM A gemstone (also called a fine gem, jewel, precious stone, or semiprecious stone) is a piece of mineral crystal which, in cut and polished form, is used to make jewelry or other adornments. However, certain rocks (such as lapis lazuli, opal, an ...
2.0, a windowing system for the
CP/M CP/M, originally standing for Control Program/Monitor and later Control Program for Microcomputers, is a mass-market operating system created in 1974 for Intel 8080/ 85-based microcomputers by Gary Kildall of Digital Research, Inc. Initi ...
which used tiling by default. One of the early (created in 1988) tiling WMs was
Siemens Siemens AG ( ) is a German multinational conglomerate corporation and the largest industrial manufacturing company in Europe headquartered in Munich with branch offices abroad. The principal divisions of the corporation are ''Industry'', ''E ...
' RTL, up to today a textbook example because of its algorithms of automated window scaling, placement and arrangement, and (de)iconification. RTL ran on X11R2 and R3, mainly on the "native" Siemens systems, e.g.,
SINIX Sinix may refer to: * SINIX, computer operating system * Şınıx, Azerbaijan {{dab and sometimes also with other "light-weight" software like Openbox and
uzbl Uzbl is a discontinued free and open-source minimalist web browser designed for simplicity and adherence to the Unix philosophy. Development began in early 2009 and is still considered in alpha software by the developers. The core component of Uz ...
. * herbstluftwm – a manual tiling window manager (similar to i3 or Sway) that uses the concept of monitor independent tags as workspaces. Exactly one tag can be viewed on a monitor, with each tag containing its own layout. Like i3 and Sway, herbstluftwm is configured at runtime via IPC calls from herbstclient. * i3 – a built-from-scratch window manager, based on wmii. It has vi-like keybindings, and treats extra monitors as extra workspaces, meaning that windows can be moved between monitors easily. Allows vertical and horizontal splits, tabbed and stacked layouts, and parent containers. It can be controlled entirely from the keyboard, but a mouse can also be used. * i3-gaps – a fork of i3 that permits customizable gaps between windows. *
Ion An ion () is an atom or molecule with a net electrical charge. The charge of an electron is considered to be negative by convention and this charge is equal and opposite to the charge of a proton, which is considered to be positive by conve ...
– 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. *
Larswm larswm is a window manager for the X window system that follows the tiling window manager paradigm. Using ideas from the older 9wm window manager, it features automatic tiling and virtual desktops. It also borrows other ideas, for example a limi ...
– 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. * LeftWM – a tiling window manager based on theming and supporting large monitors such as ultrawides. *
Qtile 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 common approach (used by stacking window managers) of coordinate-based stacking of overlap ...
– a tiling window manager written, configurable and extensible in
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
. *
Ratpoison ratpoison is a tiling window manager for the X Window System primarily developed by Shawn Betts. ratpoison is written in C; Betts' StumpWM re-implements a similar window manager in Common Lisp. The user interface and much of their functionality ...
— A keyboard-driven
GNU Screen GNU Screen is a terminal multiplexer, a software application that can be used to multiplex several virtual consoles, allowing a user to access multiple separate login sessions inside a single terminal window, or detach and reattach sessions fro ...
for X. * spectrwm — a dynamic tiling and reparenting window manager for X11. It tries to stay out of the way so that valuable screen real estate can be used for more important content. It strives to be small, compact and fast. Formerly called "scrotwm" (a pun based on the word "scrotum"). *
StumpWM StumpWM is a tiling window manager that was created when developer Shawn Betts found ratpoison growing increasingly large and " lispy". Intended as a successor to ratpoison, StumpWM is released under the terms of the GPL-2.0-or-later license. ...
– a keyboard driven offshoot of ratpoison supporting multiple displays (e.g. xrandr) that can be customized on the fly in Common Lisp. It uses Emacs-compatible keybindings by default. * wmii (window manager improved 2) supports tiling and stacking window management with extended
keyboard Keyboard may refer to: Text input * Keyboard, part of a typewriter * Computer keyboard ** Keyboard layout, the software control of computer keyboards and their mapping ** Keyboard technology, computer keyboard hardware and firmware Music * Musi ...
,
mouse A mouse ( : mice) is a small rodent. Characteristically, mice are known to have a pointed snout, small rounded ears, a body-length scaly tail, and a high breeding rate. The best known mouse species is the common house mouse (''Mus musculus' ...
, and filesystem based remote control, replacing the workspace paradigm with a new tagging approach. The default configuration uses keystrokes derived from those of the vi text editor. The window manager offers extensive configuration through a virtual filesystem using the 9P filesystem protocol similar to that offered by
Plan 9 from Bell Labs Plan 9 from Bell Labs is a distributed operating system which originated from the Computing Science Research Center (CSRC) at Bell Labs in the mid-1980s and built on UNIX concepts first developed there in the late 1960s. Since 2000, Plan 9 has be ...
. Every window, tag, and column is represented in the virtual filesystem, and windows are controlled by manipulating their file objects (in fact, the configuration file is just a script interfacing the virtual files). This RPC system allows many different configuration styles, including those provided in the base distribution in
plan9port Plan 9 from User Space (also plan9port or p9p) is a port of many Plan 9 from Bell Labs libraries and applications to Unix-like operating systems. Currently it has been tested on a variety of operating systems including: Linux, macOS, FreeBSD, Net ...
and Bourne shell. The latest release 3.9 also includes configurations in
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
and
Ruby A ruby is a pinkish red to blood-red colored gemstone, a variety of the mineral corundum ( aluminium oxide). Ruby is one of the most popular traditional jewelry gems and is very durable. Other varieties of gem-quality corundum are called sa ...
. The latest release supports
Xinerama Xinerama is an extension to the X Window System that enables X applications and window managers to use two or more physical displays as one large virtual display. Developed under the name ''PanoramiX'' by Madeline T. Asmus of the Digital Equipme ...
, shipping with its own keyboard-based menu program called wimenu, featuring history and programmable completion. *
xmonad xmonad is a dynamic window manager (tiling) for the X Window System, noted for being written in the functional programming language Haskell. Window manager Begun in March 2007, version 0.1 was announced in April 2007 as 500 lines of Haskell ...
– an extensible WM written in
Haskell Haskell () is a general-purpose, statically-typed, purely functional programming language with type inference and lazy evaluation. Designed for teaching, research and industrial applications, Haskell has pioneered a number of programming lan ...
, which was both influenced by and has since influenced dwm.


Wayland

Wayland is a new windowing system with the aim of replacing the
X Window System The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems. X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wit ...
. There are only a few tiling managers that support Wayland natively.


List of tiling window managers for Wayland

* Sway — Sway is "a drop-in replacement for the i3 window manager, but for Wayland instead of
X11 The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems. X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wi ...
. It works with your existing i3 configuration and supports most of i3's features, and a few extras".
Way Cooler
— Way Cooler is an unmaintained Wayland compositor for the Awesome window manager. It is written in C and, like Awesome, configurable using Lua, and extendable with
D-Bus In computing, D-Bus (short for "Desktop Bus") is a message-oriented middleware mechanism that allows communication between multiple processes running concurrently on the same machine. D-Bus was developed as part of the freedesktop.org project, ...
.
River
- River is a dynamic tiling Wayland compositor with flexible runtime configuration, it is maintained and under regular updates.
Newm
Wayland compositor written with laptops and touchpads in mind.
CageBreak
is a tiling compositor for wayland, based on cage and inspired by
Ratpoison
, which is easily controlled through the keyboard and a unix domain socket.
dwl
- dwl is a wayland compositor, that was intended to fill the same space in the Wayland world that
dwm dwm is a minimalist dynamic window manager for the X Window System developed by Suckless that has influenced the development of several other X window managers, including xmonad and awesome. It is externally similar to wmii, but internally mu ...
does in
X11 The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems. X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wi ...
. Like dwm, it is written in C, has a small codebase and lacks any configuration interface besides editing the source code.


Others

*The
Oberon Oberon () is a king of the fairies in medieval and Renaissance literature. He is best known as a character in William Shakespeare's play ''A Midsummer Night's Dream'', in which he is King of the Fairies and spouse of Titania, Queen of the Fairi ...
operating and programming system, from
ETH Zurich (colloquially) , former_name = eidgenössische polytechnische Schule , image = ETHZ.JPG , image_size = , established = , type = Public , budget = CHF 1.896 billion (2021) , rector = Günther Dissertori , president = Joël Mesot , ac ...
includes a tiling window manager. *The Acme programmer's editor / windowing system / shell program in Plan 9 is a tiling window manager. *The
Samsung Galaxy S3 The Samsung Galaxy S III (or Galaxy S3) is an Android smartphone designed, developed, and marketed by Samsung Electronics. Launched in 2012, it had sold more than 80 million units overall, making it the most sold phone in the S series. I ...
, S4, Note II and
Note 3 The Samsung Galaxy Note 3 is an Android phablet smartphone produced by Samsung Electronics as part of the Samsung Galaxy Note series. The Galaxy Note 3 was unveiled on September 4, 2013, with its worldwide release beginning later in the month. S ...
smartphones, running a custom variant of Android 4, have a multi-window feature that allows the user to tile two apps on the device's screen. This feature was integrated into stock Android as of version 7.0 "Nougat". *The Pop Shell extension, from
Pop!_OS Pop!_OS is a free and open-source Linux distribution, based upon Ubuntu, and featuring a customized GNOME desktop environment known as COSMIC. The distribution is developed by American Linux computer manufacturer System76. Pop!_OS is prim ...
can add tiling windows manager functionalities to GNOME. *The Amethyst window manager by ianyh, which provides window tiling for
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lapt ...
and was inspired by xmonad.


Tiling applications

Although tiling is not the default mode of window managers on any widely used platform, most applications already display multiple functions internally in a similar manner. Examples include email clients, IDEs, web browsers, and contextual help in Microsoft Office. The main windows of these applications are divided into " panes" for the various displays. The panes are usually separated by a draggable divider to allow resizing. Paned windows are a common way to implement a master–detail interface. Developed since the 1970s, the Emacs text editor contains one of the earliest implementations of tiling. In addition, HTML frames can be seen as a
markup language Markup language refers to a text-encoding system consisting of a set of symbols inserted in a text document to control its structure, formatting, or the relationship between its parts. Markup is often used to control the display of the document ...
-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 In interface design, a tab is a graphical user interface object that allows multiple documents or panels to be contained within a single window, using tabs as a navigational widget for switching between sets of documents. It is an interface s ...
can be a useful adjunct to tiling, as it avoids having multiple window tiles on screen for the same function.


See also

*
Split screen (computer graphics) Split screen is a display technique in computer graphics that consists of dividing graphics and/or text into adjacent (and possibly overlapping) parts, typically as two or four rectangular areas. This is done to allow the simultaneous presentati ...
*
Integrated development environment An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools a ...
style interface


References


External links


Comparison of Tiling Window Managers
Arch Linux Arch Linux () is an independently developed, x86-64 general-purpose Linux distribution that strives to provide the latest stable versions of most software by following a rolling-release model. The default installation is a minimal base system, ...
Wiki {{Commons category, wmii User interface techniques Window managers