
EinWidget [ˈwɪʤət] ist eine Komponente einesgrafischen Fenstersystems. Das Widget besteht aus einemFenster, dasMaus-,Touchscreen- und/oderTastaturereignisse empfängt, und aus demObjekt, das den Zustand der Komponente speichert. Widgets sind immer in ein Fenstersystem eingebunden und nutzen dieses zur Interaktion mit dem Anwender oder anderen Widgets.
Die englische Bezeichnungwidget ist einKofferwort, gebildet auswindow, für „Fenster“, undgadget, für „Zubehörgerät“. Eine mögliche deutsche Übersetzung ist z. B.Miniprogramm, wie vonKDE Plasma 6 verwendet.[1]
Applets sind zwar ebenfalls in eineUmgebung eingebunden, verwenden jedoch im Gegensatz zum Widget nicht zwingend die vom Fenstersystem bereitgestellten Dienste und Fenster. Applets werden meist über eine – im Vergleich zur Schnittstelle des Fenstersystems – relativ grobePlug-in-Schnittstelle in dasWirtssystem eingebunden und haben meist ihre eigene Fenster- und Ereignisverwaltung.
Widgets und zum Teil auch Applets können nicht als eigenständigeAnwendungsprogramme im Rahmen einesBetriebssystems betrieben werden. Sie benötigen eine Umgebung, die über eineProgrammierschnittstelle Grundfunktionen und Ressourcen bereitstellt und somit die Möglichkeiten beschränkt. Programme für den Betrieb von Widgets werden alsWidget-Engines bezeichnet.
Widgets stammen ursprünglich aus demProjekt Athena und bezeichneten ein mit einem Fenster assoziiertes Objekt, daraus resultiert dasSilbenkurzwort ausWi(ndow) und(Ga)dget. Ein solches Windowobjekt konnte eigenständig auf Ereignisse der Tastatur und/oder Maus reagieren und sein Aussehen entsprechend anpassen.[2] Mit den ersten „worldwideweb-Browsern“ unterX11, einem Nachfolger von MIT Athena, gelangte dieser Begriff insInternet und wird nunmehr für unterschiedliche Technologien verwendet.
Widgets werden mittlerweile von nahezu allengrafischen Benutzeroberflächen unterstützt und sogar benötigt, damit der volle Funktionsumfang der Umgebung zugänglich ist. So sind „gOS“ oderGoogle ChromeOS darauf angewiesen. UnterMac OS X seit 2005 und seit 2007 beiWindows sind Widgets verbreitet, aber nahezu „funktionsirrelevant“. MitSuperKaramba ist auch fürKDE bereits seit 2003 ein Widget-Framework verfügbar. Der BegriffWidget erlangte 2003 durch das ProgrammKonfabulator eine weite Verbreitung.
Parallel zu den Widgets für einzelne Betriebssysteme entwickelten sich Widgets in Form von besonderenWebanwendungen. Viele solcher Anwendungen sind recht simpel und zeigen lediglich Information aus anderen Quellen an („Syndikation“). Inhalte vonPortalen wieYouTube oderSevenload werden mitAdobe Flash eingebunden oder Fotos eines Benutzers über die AnwendungFlickr. Diese Nutzung hat mit zur Verbreitung vonUser-generated content undWeb-2.0-Anwendungen beigetragen. Widgets zur Einbindung in Webseiten werden im Gegensatz zu anderen Widgets häufig nur als kleine Fragmente vonHTML- undJavaScript-Code angeboten, die automatisch installiert werden können. Inzwischen verschwinden die Grenzen zwischen Widgets für den Desktop und Widgets im Web immer mehr, da mit entsprechenden Widget-Engines auch Web-Widgets auf dem Desktop eingesetzt werden können. DasW3C arbeitet derzeit an einem Standard für Widgets.[3]

Widget-Engines sind grundsätzlich Software-Module. Sie stellen die Voraussetzung für die Nutzung von Widgets dar und geben die Schnittstellen für deren Einbindung. Widgetumgebungen können heute sehr vielfältig sein. Verfügbare Widget-Engines fürDesktop-Umgebungen sind:
| Name | Hersteller | Beschreibung | Technische Informationen |
|---|---|---|---|
| adesklets | Sylvain Fourmanoit | eine leichtgewichtige Engine fürX11 | 0.6.1 (Eingestellt) unixoide GPL |
| AveDesk | Andreas Verhoeven | eine kostenlose Widget-Engine für Windows | 1.4 Windows Donationware |
| Dashboard | Apple Inc. | die in Mac OS X integrierte Widget-Engine | 1.7 macOS Proprietär |
| DesktopX | Stardock Corporation | eine bekannte Engine der Firma Stardock | 1.7 Windows Shareware |
| gDesklets | Martin Grimme und Christian Meyer | erste funktionsfähige Engine fürGnome | 0.36.3 unixoide GPL |
| Google Desktop Gadgets | Google Inc. | Widgets (dort alsGadgets bezeichnet) können unter Windows, Mac OS X und Linux auf den Desktop gebracht werden. | 5.9.X GNU/Linux, Mac OS X, Windows Proprietär |
| Google Gadgets for Linux | Google Inc. | Enthält, anders als Google Desktop, nur eine freie Widget-Engine. | 0.11.2 GNU/Linux Apache-Lizenz |
| Microsoft Gadget | Microsoft Corporation | Können als Minianwendungen abWindows Vista in dieWindows Sidebar integriert werden. Das Konzept wurde durch Einführung von Apps und einen kachelbasierten Startbildschirm in Windows 8 verworfen. | ? Windows Proprietär |
| Opera Widgets | Opera Software ASA | Der Webbrowser stellt ab der Version 9 eine eigene Widget-Engine zur Verfügung. | 10.50 GNU/Linux, Mac OS X, Windows, uvm. Proprietär |
| Plasmoids | Das KDE-Projekt | Die Standard Widget-Engine für KDE kann neben den nativen Widgets (genannt Plasmoids) auch eine Vielzahl anderer Widgets verschiedener Widget-Engines darstellen. | 4.4.X unixoide GPL |
| Screenlets | Rico Pfaus (RYX), Helder Fraga (Whise), Natan Yellin (Aantn) | eineDashbord-ähnliche Engine für GNOME | 0.1.2 unixoide GPL |
| Serious Samurize | Adam Coulthard & Lee Wilson | ein System-Beobachtungs-Programm | 1.64.3 Windows teilweise frei |
| SuperKaramba | Das KDE-Projekt | die erste offizielle Widget-Engine des KDE-Projektes, derzeit in Form eines Plasmoids für Plasma in KDE4 unterstützt | 4.4.X unixoxide GPL |
| Yahoo! Widgets | Yahoo/als Konfabulator von Arlo Rose und Ed Voas entwickelt. | Früher Konfabulator – wurde ursprünglich für Mac OS X entwickelt und danach auf Windows portiert. | 4.5 (Eingestellt) Mac OS X, Windows GPL |
MittelsDHTML,Ajax,Adobe Flash,Silverlight oderJava-Applets können derartige Anwendungen auch inWebseiten eingebunden werden. Verschiedene Anbieter bieten Plattformen zur Zusammenstellung von personalisierten Widgets an, etwaNetvibes, Googles personalisierbare StartseiteiGoogle, pageflakes, ContentSieve, allyve, Sportbrett oderFacebook.
Auf mobilen Geräten wiePDAs undSmartphones werden Widgets häufig verwendet.
Mobilgeräte, die auf dem BetriebssystemAndroid basieren, unterstützen Widgets auf dem Startbildschirm (Launcher) und unter Android 4.2 bis 4.4 auch auf dem Anmeldebildschirm in Form sogenannterLock Screen Notification Widgets. Widgets stellen dabei meist einen Teil einer Anwendung (App) dar, der zur Anzeige wichtiger Informationen dient oder den schnellen Start von Funktionen der App ermöglicht.
Einen ähnlichen Ansatz verfolgt Microsoft mit den mit Windows Phone eingeführten Live-Kacheln. Diese stellen Informationen in einem farbigen Kachelraster dar und aktualisieren sich in einem definierten Intervall. Das Konzept wurde auch für das Betriebssystem Windows 8 für klassischeArbeitsplatzrechner übernommen und löst die bis dahin unterstützten Widgets und dasStartmenü des Windows-Betriebssystems ab.
AuchApple bietet ab Version 8 Widgets an. Sie teilen sich im Benachrichtigungszentrum (Drop Down Hub) voniOS den Platz mit vorhandenen Benachrichtigungen (Notifications).[4]
Die meisten Hersteller stellen Dokumentationen für das Erstellen eigener, meist proprietärer Widgets bereit.