In computing, a window is a graphical control element. It consists of a visual area containing some of the graphical user interface of the program it belongs to and is framed by a window decoration. It usually has a rectangular shape [1] that can overlap with the area of other windows. It displays the output of and may allow input to one or more processes.
Windows are primarily associated with graphical displays, where they can be manipulated with a pointer by employing some kind of pointing device. Text-only displays can also support windowing, as a way to maintain multiple independent display areas, such as multiple buffers in Emacs. Text windows are usually controlled by keyboard, though some also respond to the mouse.
A graphical user interface (GUI) using windows as one of its main "metaphors" is called a windowing system, whose main components are the display server and the window manager.
The idea was developed at the Stanford Research Institute (led by Douglas Engelbart). [2] Their earliest systems supported multiple windows, but there was no obvious way to indicate boundaries between them (such as window borders, title bars, etc.). [3]
Research continued at Xerox Corporation's Palo Alto Research Center / PARC (led by Alan Kay). They used overlapping windows. [4]
During the 1980s the term "WIMP", which stands for window, icon, menu, pointer, was coined at PARC.[ citation needed ]
Apple had worked with PARC briefly at that time. Apple developed an interface based on PARC's interface. It was first used on Apple's Lisa and later Macintosh computers. [5] Microsoft was developing Office applications for the Mac at that time. Some speculate that this gave them access to Apple's OS before it was released and thus influenced the design of the windowing system in what would eventually be called Microsoft Windows. [6]
Windows are two dimensional objects arranged on a plane called the desktop metaphor. In a modern full-featured windowing system they can be resized, moved, hidden, restored or closed.
Windows usually include other graphical objects, possibly including a menu-bar, toolbars, controls, icons and often a working area. In the working area, the document, image, folder contents or other main object is displayed. Around the working area, within the bounding window, there may be other smaller window areas, sometimes called panes or panels, showing relevant information or options. The working area of a single document interface holds only one main object. "Child windows" in multiple document interfaces, and tabs for example in many web browsers, can make several similar documents or main objects available within a single main application window. Some windows in macOS have a feature called a drawer, which is a pane that slides out the side of the window and to show extra options.
Applications that can run either under a graphical user interface or in a text user interface may use different terminology. GNU Emacs uses the term "window" to refer to an area within its display while a traditional window, such as controlled by an X11 window manager, is called a "frame".
Any window can be split into the window decoration and the window's content, although some systems purposely eschew window decoration as a form of minimalism.
The window decoration is a part of a window in most windowing systems.
Window decoration typically consists of a title bar, usually along the top of each window and a minimal border around the other three sides. [7] On Microsoft Windows this is called "non-client area". [8]
In the predominant layout for modern window decorations, the top bar contains the title of that window and buttons which perform windowing-related actions such as:
The border exists primarily to allow the user to resize the window, but also to create a visual separation between the window's contents and the rest of the desktop environment.
Window decorations are considered important for the design of the look and feel of an operating system and some systems allow for customization of the colors, styles and animation effects used.
Window border is a window decoration component provided by some window managers, that appears around the active window. Some window managers may also display a border around background windows. Typically window borders enable the window to be resized or moved by dragging the border. Some window managers provide useless borders which are purely for decorative purposes and offer no window motion facility. These window managers do not allow windows to be resized by using a drag action on the border.
The title bar is a graphical control element and part of the window decoration provided by some window managers. As a convention, it is located at the top of the window as a horizontal bar. The title bar is typically used to display the name of the application or the name of the open document, and may provide title bar buttons for minimizing, maximizing, closing or rolling up of application windows. These functions are typically placed in the top-right of the screen to allow fast and inaccurate inputs through barrier pointing. Typically title bars can be used to provide window motion enabling the window to be moved around the screen by grabbing the title bar and dragging it. Some window managers[ which? ] provide title bars which are purely for decorative purposes and offer no window motion facility. These window managers do not allow windows to be moved around the screen by using a drag action on the title bar.
Default title-bar text often incorporates the name of the application and/or of its developer. The name of the host running the application also appears frequently. Various methods (menu-selections, escape sequences, setup parameters, command-line options – depending on the computing environment) may exist to give the end-user some control of title-bar text. Document-oriented applications like a text editor may display the filename or path of the document being edited. Most web browsers will render the contents of the HTML element title
in their title bar, sometimes pre- or postfixed by the application name. Google Chrome and some versions of Mozilla Firefox place their tabs in the title bar. This makes it unnecessary to use the main window for the tabs, but usually results in the title becoming truncated. An asterisk at its beginning may be used to signify unsaved changes.
The title bar often contains widgets for system commands relating to the window, such as a maximize, minimize, rollup and close buttons; and may include other content such as an application icon, a clock, etc.
Some window managers provide title bar buttons which provide the facility to minimize, maximize, roll-up or close application windows. Some window managers may display the title bar buttons in the task bar or task panel, rather than in the title bars.
The following buttons may appear in the title bar:
Note that a context menu may be available from some title bar buttons or by right-clicking.
Some window managers display a small icon in the title bar that may vary according to the application on which it appears. The title bar icon may behave like a menu button, or may provide a context menu facility. macOS applications commonly have a proxy icon next to the window title that functions the same as the document's icon in the file manager.
Some window managers display an icon or symbol to indicate that the contents of the window have not been saved or confirmed in some way: macOS displays a dot in the center of its close button; RISC OS appends an asterisk to the title.
Some tiling window managers provide title bars which are purely for informative purposes and offer no controls or menus. These window managers do not allow windows to be moved around the screen by using a drag action on the title bar and may also serve the purpose of a status line from stacking window managers.
OS | Icon | Send to Back | Close | Maximize | Menu bar | Minimize | Pin (Keep on top) | Resize | Roll-up (Window shade) | Status | Context menu | Notes |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Unix-like with X11 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Many X window managers for Unix-like systems allow customization of the type and placement of buttons shown in the title bar. |
macOS | Yes | Yes | Yes | Yes | Yes | Yes | Buttons are on the left side of the title bar. Icon is a proxy for the document's filesystem representation. | |||||
RISC OS | Yes | Yes | Yes | Yes | Yes | Yes | ||||||
Windows | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Icon is menu of window actions |
A file manager or file browser is a computer program that provides a user interface to manage files and folders. The most common operations performed on files or groups of files include creating, opening, renaming, copying, moving, deleting and searching for files, as well as modifying file attributes, properties and file permissions. Folders and files may be displayed in a hierarchical tree based on their directory structure.
A graphical user interface, or GUI, is a form of user interface that allows users to interact with electronic devices through graphical icons and visual indicators such as secondary notation. In many applications, GUIs are used instead of text-based UIs, which are based on typed command labels or text navigation. GUIs were introduced in reaction to the perceived steep learning curve of command-line interfaces (CLIs), which require commands to be typed on a computer keyboard.
The history of the graphical user interface, understood as the use of graphic icons and a pointing device to control a computer, covers a five-decade span of incremental refinements, built on some constant core principles. Several vendors have created their own windowing systems based on independent code, but with basic elements in common that define the WIMP "window, icon, menu and pointing device" paradigm.
A multiple-document interface (MDI) is a graphical user interface in which multiple windows reside under a single parent window. Such systems often allow child windows to embed other windows inside them as well, creating complex nested hierarchies. This contrasts with single-document interfaces (SDI) where all windows are independent of each other.
The Finder is the default file manager and graphical user interface shell used on all Macintosh operating systems. Described in its "About" window as "The Macintosh Desktop Experience", it is responsible for the launching of other applications, and for the overall user management of files, disks, and network volumes. It was introduced with the Macintosh 128K—the first Macintosh computer—and also exists as part of GS/OS on the Apple IIGS. It was rewritten completely with the release of Mac OS X in 2001.
The Dock is a prominent feature of the graphical user interface of macOS. It is used to launch applications and to switch between running applications. The Dock is also a prominent feature of macOS's predecessor NeXTSTEP and OPENSTEP operating systems. The earliest known implementations of a dock are found in operating systems such as RISC OS and NeXTSTEP. iOS has its own version of the Dock for the iPhone and iPod Touch, as does iPadOS for the iPad.
In computing, the desktop metaphor is an interface metaphor which is a set of unifying concepts used by graphical user interfaces to help users interact more easily with the computer. The desktop metaphor treats the computer monitor as if it is the top of the user's desk, upon which objects such as documents and folders of documents can be placed. A document can be opened into a window, which represents a paper copy of the document placed on the desktop. Small applications called desk accessories are also available, such as a desk calculator or notepad, etc.
The taskbar is a graphical user interface element that has been part of Microsoft Windows since Windows 95, displaying and facilitating switching between running programs. The taskbar and the associated Start Menu were created and named in 1993 by Daniel Oran, a program manager at Microsoft who had previously collaborated on great ape language research with the behavioral psychologist B.F. Skinner at Harvard.
Aqua is the graphical user interface, design language and visual theme of Apple's macOS and iOS operating systems. It was originally based on the theme of water, with droplet-like components and a liberal use of reflection effects and translucency. Its goal is to "incorporate color, depth, translucence, and complex textures into a visually appealing interface" in macOS applications. At its introduction, Steve Jobs noted that "... it's liquid, one of the design goals was when you saw it you wanted to lick it".
A graphical widget in a graphical user interface is an element of interaction, such as a button or a scroll bar. Controls are software components that a computer user interacts with through direct manipulation to read or edit information about an application. User interface libraries such as Windows Presentation Foundation, Qt, GTK, and Cocoa, contain a collection of controls and the logic to render these.
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 conjunction with the underlying graphical system that provides required functionality—support for graphics hardware, pointing devices, and a keyboard—and are often written and created using a widget toolkit.
In computing, a button is a graphical control element that provides the user a simple way to trigger an event, like searching for a query at a search engine, or to interact with dialog boxes, like confirming an action.
In computing, a theme is a preset package containing graphical appearance and functionality details. A theme usually comprises a set of shapes and colors for the graphical control elements, the window decoration and the window. Themes are used to customize the look and feel of a piece of computer software or of an operating system.
A menu bar is a graphical control element which contains drop-down menus.
Windows Aero is the design language introduced in the Microsoft Windows Vista operating system. The changes introduced by Windows Aero encompassed many elements of the Windows interface, with the introduction of a new visual style with an emphasis on animation, glass, and translucency; interface guidelines for phrasing and tone of instructions and other text in applications were available. New cursors and sounds based on Windows Aero design principles were also introduced.
In user interface design, an interface metaphor is a set of user interface visuals, actions and procedures that exploit specific knowledge that users already have of other domains. The purpose of the interface metaphor is to give the user instantaneous knowledge about how to interact with the user interface. They are designed to be similar to physical entities but also have their own properties. They can be based on an activity, an object (skeuomorph), or a combination of both and work with users' familiar knowledge to help them understand 'the unfamiliar', and placed in the terms so the user may better understand.
In computer interface design, a ribbon is a graphical control element in the form of a set of toolbars placed on several tabs. The typical structure of a ribbon includes large, tabbed toolbars, filled with graphical buttons and other graphical control elements, grouped by functionality. Such ribbons use tabs to expose different sets of controls, eliminating the need for numerous parallel toolbars. Contextual tabs are tabs that appear only when the user needs them. For instance, in a word processor, an image-related tab may appear when the user selects an image in a document, allowing the user to interact with that image.
In computing, the icon bar is the name of the dock in Acorn's RISC OS operating system, and is fundamental to the OS. Its introduction in 1987 was a new concept in GUIs. It displays icons through which access is provided to all parts of the computer that a typical user will require, from physical devices and system utilities to running applications, and will usually be their starting point for interacting with the system once it has finished booting.
Client-side decoration (CSD) is the concept of allowing a graphical application software to be responsible for drawing its own window decorations, historically the responsibility of the window manager.
Xerox PARC debuts the first GUI, which uses icons, pop-up menus, and overlapping windows that can be controlled easily using a point-and-click technique.