HOME

TheInfoList



OR:

A software widget is a relatively simple and easy-to-use
software application Software is a set of computer programs and associated documentation and data. This is in contrast to hardware, from which the system is built and which actually performs the work. At the lowest programming level, executable code consists ...
or component made for one or more different
software platform A computing platform or digital platform is an environment in which a piece of software is executed. It may be the hardware or the operating system (OS), even a web browser and associated application programming interfaces, or other underlying ...
s. A desk accessory or
applet In computing, an applet is any small application that performs one specific task that runs within the scope of a dedicated widget engine or a larger program, often as a plug-in. The term is frequently used to refer to a Java applet, a program ...
is an example of a simple, stand-alone user interface, in contrast with a more complex application such as a spreadsheet or word processor. These widgets are typical examples of transient and auxiliary applications that don't monopolize the user's attention. On the other hand, graphical control elements ( GUI "widgets") are examples of reusable modular components that are used together to build a more complex application, allowing programmers to build user interfaces by combining simple, smaller components.


Classification

Because the term, and the coding practice, has been extant since at least the 1980s, it has been applied in a number of contexts.


Primary types

A Graphical control element (GUI widget) is part of a
graphical user interface The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inst ...
(GUI) that allows a computer user to control and change the appearance of elements for operating a software application. In this context a widget may refer to a generic GUI element such as a
check box A checkbox (check box, tickbox, tick box) is a graphical widget that permits the user (computing), user to make a binary choice, i.e. a choice between one of two possible mutually exclusive options. For example, the user may have to answer 'yes ...
, to an instance of that element, or to a customized collection of such elements used for a specific function or application (such as a
dialog box The dialog box (also called dialogue box (non-U.S. English), message box or simply dialog) is a graphical control element in the form of a small window that communicates information to the user and prompts them for a response. Dialog boxes ar ...
for users to customize their
computer screen A computer monitor is an output device that displays information in pictorial or textual form. A discrete monitor comprises a visual display, support electronics, power supply, housing, electrical connectors, and external user controls. The di ...
appearances). A
Widget toolkit A widget toolkit, widget library, GUI toolkit, or UX library is a library or a collection of libraries containing a set of graphical control elements (called ''widgets'') used to construct the graphical user interface (GUI) of programs. Most widge ...
is a set of programming tools that help developers reuse GUI widgets to build a user interface. A desktop widget is a specialized GUI widget intended to run on a computer desktop for computer users to control simple utility functions such as clocks, messaging services, and calendars. A
mobile widget A software widget is a relatively simple and easy-to-use software application or component made for one or more different software platforms. A desk accessory or applet is an example of a simple, stand-alone user interface, in contrast with a m ...
is the comparable equivalent for mobile devices (i.e.
smart phone A smartphone is a portable computer device that combines mobile telephone and computing functions into one unit. They are distinguished from feature phones by their stronger hardware capabilities and extensive mobile operating systems, which ...
s). A web widget is a portable application installed and executed, typically by non-expert
webmaster A webmaster is a person responsible for maintaining one or more websites. The title may refer to web architects, web developers, site authors, website administrators, website owners, website coordinators, or website publishers. The duties of ...
s on
HTML The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaSc ...
-based web pages, to offer site visitors shopping,
advertisements Advertising is the practice and techniques employed to bring attention to a product or service. Advertising aims to put a product or service in the spotlight in hopes of drawing it attention from consumers. It is typically used to promote a ...
, videos, or other simple functionality from third party widget publishers.


Types of web widgets

*A "widget application" is a third party web widget developed for a social networking service, with the user interface or the entire application hosted by the network service. Social networking services such as
Facebook Facebook is an online social media and social networking service owned by American company Meta Platforms. Founded in 2004 by Mark Zuckerberg with fellow Harvard College students and roommates Eduardo Saverin, Andrew McCollum, Dustin Mosk ...
and Myspace host these applications and provide them underlying platform services (such as display and storage of user-provided photos and other content, profile information about end users and communications features with other users) through special-purpose application programming interfaces. The term is used fairly loosely, in that many such applications are more complex internally and in operation than the simple applets that are called "widgets" in other contexts. The relationship between platform and developer is mutually beneficial, with the social network offering hardware and software infrastructure, and access to the social network's end user base, and with application publishers ranging from amateur developers to organized companies such as
RockYou! RockYou was a company that developed widgets for MySpace and implemented applications for various social networks and Facebook. Since 2014, it has engaged primarily in the purchases of rights to classic video games; it incorporates in-game ads an ...
and slide.com providing content and features that make the social network services more useful for their members. At present, there is no fee or payment between developers and social network platforms, and attempts to realize revenue from widgets (primarily
advertising Advertising is the practice and techniques employed to bring attention to a product or service. Advertising aims to put a product or service in the spotlight in hopes of drawing it attention from consumers. It is typically used to promote a ...
by the widget applications and sale of electronic commerce goods and services within the widgets) have been relatively unsuccessful.


Types of GUI widgets

*
Disclosure widget A disclosure widget, expander, or disclosure triangle is a graphical control element that is used to show or hide a collection of "child" widgets in a specific area of the interface. The widget hides non-essential settings or information and thu ...
s are specific types of GUI widgets that may be hidden or expanded by computer users. *A metawidget is a GUI widget for controlling the operation of other widgets within a GUI.


Widget engine

A widget engine is the
software platform A computing platform or digital platform is an environment in which a piece of software is executed. It may be the hardware or the operating system (OS), even a web browser and associated application programming interfaces, or other underlying ...
on which desktop or web widgets run. The widget model in widget engines is attractive because of ease of development. Most of these widgets can be created with a few images and about 10 to several hundred lines of
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable ...
/
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of websites use JavaScript on the client side for webpage behavior, of ...
/ VBScript
source code In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the w ...
. A single host software system, such as a web browser, runs all the loaded widgets. This allows several desktop widgets to be built sharing resources and code. Widget engines are not to be confused with
widget toolkit A widget toolkit, widget library, GUI toolkit, or UX library is a library or a collection of libraries containing a set of graphical control elements (called ''widgets'') used to construct the graphical user interface (GUI) of programs. Most widge ...
s. Toolkits are used by GUI programmers, who combine several widgets (reusable components) to form a single application. A widget in a toolkit provides a single, low level interaction, and is prepared to communicate with other widgets in the toolkit. On the other hand, widget engines such as desktop widgets and web widgets are intended for end users. Desktop and web widgets are stand-alone, task-oriented applications which can be composed of several related interactions on its own.


Types


GUI widgets

A graphical control element (often called ''GUI widget'') represents a part of a
graphical user interface The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inst ...
(GUI) which the user can use to interact with the program the GUI belongs to. Graphical control elements are implemented like subroutines.
Widget toolkit A widget toolkit, widget library, GUI toolkit, or UX library is a library or a collection of libraries containing a set of graphical control elements (called ''widgets'') used to construct the graphical user interface (GUI) of programs. Most widge ...
s and software frameworks, like e.g. GTK+ or Qt, contain them in software libraries so that programmers can use them to build GUIs for their programs.
Graphical user interface builder A graphical user interface builder (or GUI builder), also known as GUI designer or sometimes RAD IDE, is a software development tool that simplifies the creation of GUIs by allowing the designer to arrange graphical control elements (often calle ...
s, such as e.g.
Glade Interface Designer Glade Interface Designer is a graphical user interface builder for GTK, with additional components for GNOME. In its third version, Glade is programming language–independent, and does not produce code for events, but rather an XML fil ...
, facilitate the authoring of GUIs.


Desktop widgets

Desktop widgets (commonly just called widgets) are interactive virtual tools that provide single-purpose services such as showing the user the latest news, the current weather, the time, a calendar, a dictionary, a map program, a calculator, desktop notes, photo viewers, or even a language translator, among other things. Widgets can provide or augment the
graphical shell In computing, a shell is a computer program that exposes an operating system's services to a human user or other programs. In general, operating system shells use either a command-line interface (CLI) or graphical user interface (GUI), depending ...
. Examples of widget engines include: *
Dashboard For business applications, see Dashboard (business). A dashboard (also called dash, instrument panel (IP), or fascia) is a control panel set within the central console of a vehicle or small aircraft. Usually located directly ahead of the drive ...
widgets of
Apple Macintosh The Mac (known as Macintosh until 1999) is a family of personal computers designed and marketed by Apple Inc., Apple Inc. Macs are known for their ease of use and minimalist designs, and are popular among students, creative professionals, and ...
*
Microsoft gadgets Microsoft Gadgets are lightweight single-purpose applications, or software widgets, that can sit on a Microsoft Windows user's computer desktop, or are hosted on a web page. According to Microsoft, it will be possible for the different types of g ...
in
Windows Vista Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, which was released five years before, at the time being the longest time span between successive releases of ...
,
Windows 7 Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was released to manufacturing on July 22, 2009, and became generally available on October 22, 2009. It is the successor to Windows Vista, released nearly ...
, and in the
Windows Live Windows Live is a discontinued brand name for a set of web services and software products developed by Microsoft as part of its software-as-a-service platform. Chief components under the brand name included web services (all of which were expose ...
system - No longer supported, use now discouraged by Microsoft. * Various implementations for
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, w ...
, including Plasma widgets (available for KDE since version 4) and the widget engine used by
GNOME Shell GNOME Shell is the graphical shell of the GNOME desktop environment starting with version 3, which was released on April 6, 2011. It provides basic functions like launching applications, switching between windows and is also a widget engine. ...
(available for GNOME since version 3). Both are active and under development. *
Google Desktop Google Desktop was a computer program with desktop search capabilities, created by Google for Linux, Apple Mac OS X, and Microsoft Windows systems. It allowed text searches of a user's email messages, computer files, music, photos, chats, Web pag ...
running Google Gadgets - No longer supported, discontinued, some security issues re: data sharing. * Yahoo! Widgets for
Windows XP Windows XP is a major release of Microsoft's Windows NT operating system. It was released to manufacturing on August 24, 2001, and later to retail on October 25, 2001. It is a direct upgrade to its predecessors, Windows 2000 for high-end and ...
,
Windows Vista Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, which was released five years before, at the time being the longest time span between successive releases of ...
,
Windows 7 Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was released to manufacturing on July 22, 2009, and became generally available on October 22, 2009. It is the successor to Windows Vista, released nearly ...
,
Windows 8 Windows 8 is a major release of the Windows NT operating system developed by Microsoft. It was released to manufacturing on August 1, 2012; it was subsequently made available for download via MSDN and TechNet on August 15, 2012, and later to ...
,
Windows 10 Windows 10 is a major release of Microsoft's Windows NT operating system. It is the direct successor to Windows 8.1, which was released nearly two years earlier. It was released to manufacturing on July 15, 2015, and later to retail on J ...
,
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 ...
- No longer supported by Yahoo. Still functioning on Windows; since OS X 10.11 El Capitan the Yahoo widget dock is non-functioning but the majority of widgets still operate as expected and are accessible instead from the menu. * XWidgets - for
Windows XP Windows XP is a major release of Microsoft's Windows NT operating system. It was released to manufacturing on August 24, 2001, and later to retail on October 25, 2001. It is a direct upgrade to its predecessors, Windows 2000 for high-end and ...
,
Windows Vista Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, which was released five years before, at the time being the longest time span between successive releases of ...
,
Windows 7 Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was released to manufacturing on July 22, 2009, and became generally available on October 22, 2009. It is the successor to Windows Vista, released nearly ...
,
Windows 8 Windows 8 is a major release of the Windows NT operating system developed by Microsoft. It was released to manufacturing on August 1, 2012; it was subsequently made available for download via MSDN and TechNet on August 15, 2012, and later to ...
,
Windows 10 Windows 10 is a major release of Microsoft's Windows NT operating system. It is the direct successor to Windows 8.1, which was released nearly two years earlier. It was released to manufacturing on July 15, 2015, and later to retail on J ...
and Android - Last updated in: 2 March 2015 (
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ser ...
). * Kludgets - for
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ser ...
- Allows Mac dashboard widgets to operate on Windows. Open Source, not actively developed. * Opera Widgets on all platforms (desktop, mobile TVs, gaming consoles) using the Opera browser's rendering engine. Opera Widgets were discontinued since the version 12 of the browser. * Screenlets for
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, w ...
and other
Unix-like A Unix-like (sometimes referred to as UN*X or *nix) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Unix-li ...
operating systems - This engine runs on
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 ...
and is under sporadic development * Homescreen widgets in
Maemo Maemo is a software platform originally developed by Nokia, now developed by the community, for smartphones and Internet tablets. The platform comprises both the Maemo operating system and SDK. Maemo played a key role in Nokia's strategy to c ...
* Homescreen widgets in Android Originally, desk accessories were developed to provide a small degree of multitasking in
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs. Time-sharing operating systems schedule tasks for efficient use of the system and may also i ...
s that could only held one main application at a time, but when real multitasking OSes became available, these were replaced by normal applications.


Widget draft standard

On 9 November 2006, the Web Application Formats Working Group in W3C released the first public working draft of Widgets 1.0. The intention is to standardise some aspects of widgets. The Opera browser is the first client side widget engine to adopt this draft W3C standard. Apache Wookie (Incubating) is the first server side widget engine to adopt this W3C standard. Wookie is a server that manages widget instances and allows them to be embedded in web applications in addition to being provided for client devices such as Opera.


Mobile widgets

Most mobile widgets are like desktop widgets, but for a mobile phone. Mobile widgets can maximize screen space use and may be especially useful in placing live data-rich applications on the device idle-screen/home-screen/"phone-top". Several
Java ME Java Platform, Micro Edition or Java ME is a computing platform for development and deployment of portable code for embedded and mobile devices (micro-controllers, sensors, gateways, mobile phones, personal digital assistants, TV set-top ...
-based mobile widget engines exist, but the lack of standards-based APIs for Java to control the mobile device home-screen makes it harder for these engines to expose widgets on the phone-top. Several
AJAX Ajax may refer to: Greek mythology and tragedy * Ajax the Great, a Greek mythological hero, son of King Telamon and Periboea * Ajax the Lesser, a Greek mythological hero, son of Oileus, the king of Locris * ''Ajax'' (play), by the ancient Gree ...
-based native widget platforms are also available for mobile devices. The growing pervasiveness of mobile widgets is easily understood. While widgets are a convenience in the online world, they can be looked at as near-essential in the mobile world. The reason: the mobile device is small and the interface is often challenging. Wading through large amounts of information in a mobile environment is not just a nuisance; it is a near impossibility. Android, of all mobile operating systems, has supported mobile widgets natively since April 30, 2009. Some of the most popular widgets on the Android operating system include DashClock, Google Keep and HD Widgets.Top 10 Best Android Widgets Ever
Retrieved March 22, 2015.
The
iOS iOS (formerly iPhone OS) is a mobile operating system created and developed by Apple Inc. exclusively for its hardware. It is the operating system that powers many of the company's mobile devices, including the iPhone; the term also include ...
operating system also supports mobile widgets.


Web widgets

Web browsers can also be used as widget engine infrastructures. The web is an environment well suited to distribution of widgets, as it doesn't require explicit interaction from the user to install new code snippets. Web widgets have unleashed some commercial interest, due their perceived potential as a marketing channel, mainly because they provide interactivity and viral distribution through social networks. The first known web widget, Trivia Blitz, was introduced in 1997. It was a game applet offered by Uproar.com (the leading online game company from 2000 - 2001) that appeared on over 35,000 websites ranging from GeoCities personal pages to CNN and Tower Records. When Uproar.com was acquired by Vivendi Universal in 2001, the widget was discontinued.


TV set widgets

Widgets are also available for TVs. Yahoo! Widget Engine is announced as a component of the next generation TV sets.


Information flow of desktop widgets

A desktop widget is a small footprint application, which resides on the user's desktop using little desktop real estate and computer resources, such as HDD and RAM. Its purpose is to provide relevant information to the user in a non-intrusive manner and using few resources. Basically, desktop widgets enable the user to view on demand, encapsulated information from predetermined data sources. Ideally, a desktop widget must present personalized content, based on the user's preferences. It is supposed to provide the most important information that a user requires on a daily basis. Most of the desktop widgets are available as free downloads from the developers’ websites.


References


See also

* Wikipedia Widget - a widget for displaying Wikipedia articles *
Android (operating system) Android is a mobile operating system based on a modified version of the Linux kernel and other open-source software, designed primarily for touchscreen mobile devices such as smartphones and tablets. Android is developed by a consortium of ...
* Chumby * Desk Accessory *
GUI widget A graphical widget (also graphical control element or control) 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 ...
*
Widget toolkit A widget toolkit, widget library, GUI toolkit, or UX library is a library or a collection of libraries containing a set of graphical control elements (called ''widgets'') used to construct the graphical user interface (GUI) of programs. Most widge ...
{{Widget engine Graphical user interfaces Graphical control elements *