Recent from talks
Contribute something
Nothing was collected or created yet.
Windows Desktop Gadgets
View on Wikipedia| Windows Desktop Gadgets | |
|---|---|
![]() Screenshot of Windows Sidebar, showing the analog clock, picture slideshow, and current weather of Redmond, WA | |
| Developer | Microsoft |
| Operating system | Windows XP SP2 or later |
| Included with | |
| Predecessor | Active Desktop |
| Successor | Live Tiles in Windows 8 |
| Type | Desktop widget engine |
Windows Desktop Gadgets (called Windows Sidebar in Windows Vista) is a widget engine for Windows Vista and Windows 7, part of the now discontinued Microsoft Gadgets widget platform. Its gadgets can perform various tasks, such as displaying the time and date, gathering RSS feed or Email information, allowing users to use tools such as sticky notes or timers, among other tasks.
Windows Sidebar was introduced with Windows Vista, in which it features a sidebar anchored to the side of the desktop. The gadgets can either be placed on the sidebar or anywhere on the desktop. In Windows 7, the sidebar was removed, but gadgets can still be placed on the desktop.
Windows Desktop Gadgets was discontinued in Windows 8. The Windows 8 Live Tiles can perform a similar function, but they are only visible when the Start menu is visible. They run in a more restrictive environment, making them less risky, but also less useful for some purposes, like system monitoring. Live Tiles too, was discontinued in Windows 11 in favor of the widgets panel.
History
[edit]Windows Sidebar originated in a Microsoft Research project called Sideshow (not to be confused with Windows SideShow). It was developed in the summer of 2000, and was used internally at Microsoft.[1] It included a clock, traffic reports, and IM integration.
Windows Sidebar appeared in build 3683 of Windows Longhorn circa September 2002 and was originally intended to replace the notification area and Quick Launch toolbar in Windows, but these plans were scrapped after the development reset in mid-2004.[2] Windows Sidebar was rebuilt and began to appear in Windows Vista builds in the second half of 2005. Some reviewers and Macintosh enthusiasts have pointed out the Sidebar's similarities in form and function to Konfabulator (later Yahoo! Widget Engine), which appeared several years previously, and the Dashboard widget engine first included with Apple Inc.'s Mac OS X v10.4, which had been released a few months earlier.
In Windows 7, Windows Sidebar was renamed Windows Desktop Gadgets, and the sidebar itself was not included in Windows 7.
Windows Desktop Gadgets was included in all beta releases of Windows 8 but did not make it to the final release. Instead, on 10 July 2012 (which is in the intervening time between the last beta of Windows 8 and its final release), Microsoft issued security advisory to disable Sidebar and Desktop Gadgets on Windows Vista and 7 because of a security vulnerability that could allow remote code execution.[3]
Overview
[edit]Windows Desktop Gadgets is a feature of Windows Vista and Windows 7 (excluding the Windows Server family of the operating system). It hosts mini-applications or "gadgets" which are a combination of HTML, CSS, and JavaScript code. Their use cases include displaying system time or calendar date, downloading and displaying RSS feeds, controlling other software such as Windows Media Player, placing useful tools like Sticky Notes, and more.
In Windows Vista, gadgets can run docked in the sidebar, or float anywhere on the desktop. The sidebar also has multiple pages for lots of gadgets, and pages can be switched using the arrows at the top. It is also possible to run multiple instances of a gadget simultaneously. Windows Sidebar also works on Windows XP.[4]
In Windows 7, the sidebar was not included, but gadgets can still be placed on the desktop, and a desktop context menu was added. In Windows 7, gadgets can snap onto the edges of a display or on other gadgets, and gadgets now have an option to change its size on the desktop from small to large.
Windows Vista is preinstalled with eleven gadgets: Calendar, Clock, Contacts, CPU Meter, Currency Conversion, Feed Headlines, Notes, Picture Puzzle, Slide Show, Stocks, and Weather. Several other gadgets available during the beta such as App Launcher, Feed Viewer, Number Puzzle, Recycle Bin and Egg Timer never made it to the final release. Windows 7 adds a Media Center gadget and removes the Contacts, Notes and Stocks gadgets.
Originally, Microsoft provided a link to a web site called Windows Live Gallery where additional Sidebar gadgets that have been created by third-party developers could be downloaded. The site was officially retired on October 1, 2011.[5][6]
See also
[edit]- Microsoft Gadgets
- Windows SideShow for Device Gadgets
- Widget engine
- Desk accessory
- Yahoo Widgets
- Rainmeter
- Dashboard (macOS)
References
[edit]- ^ "A Brief History of Windows Desktop Gadgets". Microsoft. September 15, 2005. Archived from the original on 2007-06-21. Retrieved 2007-06-03.
- ^ Thurrott, Paul (2002-11-13). ""Longhorn" Alpha Preview". Windows SuperSite. Retrieved 2008-08-18.
- ^ Microsoft Security Advisory (2719662): Vulnerabilities in Gadgets Could Allow Remote Code Execution. Technet.microsoft.com. Retrieved on 2013-07-21.
- ^ "Windows Sidebar". Microsoft Corporation. Retrieved 2008-09-18.
- ^ Looking for gadgets?
- ^ "Desktop Gadgets". Microsoft. Archived from the original on 2013-03-27. Retrieved 2013-04-23.
Further reading
[edit]- Gralla, Preston (2007). "2: Hacking the Interface: by John Moscarillo". Big Book of Windows Hacks. O'Reilly Media. ISBN 978-0-596-55913-7.
- Shaktov, Mickey; Kohlenberg, Toby (14 July 2012). "We have you by the gadgets: A Security Analysis of the Microsoft Windows Sidebar Gadget Platform" (PDF). Black Hat. UBM.
External links
[edit]- Gadget Corner — official Windows Sidebar and Microsoft Gadgets team blog
- Windows Sidebar Reference on MSDN
Windows Desktop Gadgets
View on GrokipediaOverview
Definition and Purpose
Windows Desktop Gadgets refer to a widget engine integrated into Windows Vista and Windows 7, enabling users to run small, interactive mini-applications directly on the desktop. These gadgets function as lightweight programs that deliver information or utilities without requiring the launch of full-scale applications, allowing for seamless integration into the user's workspace.[1][3] The primary purpose of Windows Desktop Gadgets is to provide at-a-glance access to dynamic information and simple tools, thereby boosting productivity and enabling desktop personalization. For instance, they can display real-time data such as news headlines via RSS feeds or offer basic utilities like customizable tickers, all while minimizing disruption to ongoing tasks. By embedding these elements on the desktop, the platform aims to create a more informative and efficient user environment, reducing the need to switch between windows or applications.[3][1] Technically, gadgets are constructed using XML for their manifests, which define configuration, presentation, and resource details, alongside HTML for the core interface, CSS for styling, and JavaScript for interactivity and logic. These components leverage the Windows Gadget Platform APIs to interact with system resources, ensuring gadgets operate within the desktop context. The Sidebar.exe process serves as the host, managing gadget execution, docking states, and overall presentation to maintain a streamlined experience.[1][3][6]Compatibility and Availability
Desktop Gadgets were fully integrated and enabled by default across all editions of Windows Vista, providing native support for the feature as part of the operating system's Sidebar platform.[1] In Windows 7, the feature was similarly available by default in all editions, with enhancements for better performance while maintaining backward compatibility with Vista-era gadgets.[1] Following the release of Service Pack 1 for Windows 7, Microsoft issued security updates that partially supported but effectively disabled the Gadget Platform to mitigate vulnerabilities, recommending users turn off the feature via Windows Features in the Control Panel.[7] The feature was incompatible with Windows XP and all earlier versions of the operating system, lacking any native implementation or required framework for gadgets to function.[8] Starting with Windows 8 in 2012, Desktop Gadgets were completely removed from the operating system and have remained unavailable in all subsequent versions, including Windows 10 and Windows 11, with Microsoft shifting focus to alternative interfaces like Live Tiles.[4] This removal extended to both client and server editions, eliminating runtime support while retaining some API remnants for application compatibility.[4] Users accessed Desktop Gadgets in Windows Vista primarily through the Sidebar interface, which hosted them by default, or via the Gadget Gallery for selection and placement. In Windows 7, access was simplified with a "Gadgets" option in the desktop right-click context menu, opening the Gadget Gallery for installation and management, though the Sidebar could still be enabled for a Vista-like experience.[1] Additional gadgets were available from the official Microsoft Gadget Gallery online, while offline installation involved double-clicking .gadget package files, which automatically extracted and registered the content in the user's Gadgets folder.[9] Support varied by edition and region, with full native functionality in consumer-oriented editions such as Home and Professional across both Vista and Windows 7, enabling seamless use without additional configuration.[1] In enterprise editions, availability was more restricted post-security patches, as organizations often enforced policies to disable the platform entirely for compliance and risk management, though the underlying files remained present unless manually removed.[7] No significant regional differences were noted, with uniform availability tied to edition licensing rather than geographic distribution.[1]Development and Introduction
Origins in Windows Vista
Desktop Gadgets were conceived as a core component of the Windows Vista user interface overhaul, specifically within the Aero visual style that emphasized transparency, animations, and enhanced desktop productivity tools. Announced by Microsoft at the 2005 Professional Developers Conference (PDC) on September 13, 2005, the feature was presented as a way to deliver real-time information directly to the desktop through mini-applications known as gadgets, housed in a new element called the Windows Sidebar.[10] The Sidebar concept originated in early Longhorn prototypes around 2002 but was removed during development before being reintroduced for Vista. This innovation drew inspiration from existing third-party widget systems, including Konfabulator (later Yahoo Widgets) and Apple's Dashboard widgets introduced in Mac OS X Tiger, aiming to bring similar glanceable content access to Windows users.[11] Development of Desktop Gadgets progressed through the Windows Vista beta program, with the Sidebar and initial gadget functionality absent from Beta 1 (released July 2005) but integrated in Beta 2 (build 5384), released on May 23, 2006.[12] The feature achieved full integration in the release-to-manufacturing (RTM) version of Windows Vista (build 6000.16386), finalized on November 8, 2006, ahead of the consumer launch on January 30, 2007.[13] In its initial implementation, Desktop Gadgets were exclusively tied to the Windows Sidebar, a persistent vertical panel docked by default on the right edge of the desktop that could host and manage these lightweight applications.[14] Rendering relied on the Internet Explorer 7 engine for HTML, CSS, and JavaScript support, enabling developers to create gadgets using web technologies while enforcing security restrictions inherent to the browser's zone model.[1] At launch, Windows Vista included 11 built-in gadgets, such as Clock, Calendar, Weather, CPU Meter, and Stocks, providing essential utilities like time display, news feeds, and system monitoring without requiring additional downloads.[15] Upon release, Desktop Gadgets received praise for their innovative approach to desktop customization and at-a-glance information delivery, aligning with the Aero theme's focus on visual appeal and usability enhancements.[16] However, early adoption was tempered by criticisms of high resource consumption—particularly memory and CPU usage from the Sidebar process—and stability problems in Vista's initial builds, which affected gadget performance and contributed to broader perceptions of the operating system's overhead.[17][18]Enhancements in Windows 7
Windows 7, released on October 22, 2009, introduced several key upgrades to Desktop Gadgets, decoupling them from the Sidebar introduced in Windows Vista to allow free-floating placement anywhere on the desktop.[1] This change enabled users to position gadgets without restriction to a fixed sidebar, enhancing flexibility in desktop customization.[19] Additionally, the platform optimized performance through improved memory management, with the sidebar.exe process now launching only when a gadget is added or during a new user session and terminating automatically if no gadgets remain active.[1] These enhancements reduced resource overhead compared to the Vista implementation, addressing reports of higher CPU and memory usage in earlier versions.[20] The overall system benefited from better optimization, allowing gadgets to run more efficiently even on hardware with as little as 1 GB of RAM.[20] User interface refinements included support for drag-and-drop repositioning, enabling seamless movement of gadgets across the desktop.[21] Gadgets also featured snap-to-edge behavior during placement, aligning them to screen borders or other gadgets for organized layouts, along with adjustable opacity controls ranging from fully opaque (100%) to transparent levels for a less cluttered appearance.[22][23] The Windows 7 Gadget Platform expanded access to gadgets via an official online gallery website, where users could download additional content certified by Microsoft, though the site was later discontinued in 2012 due to security concerns.[24][25] Built-in gadgets included a core set of 10 options, such as Clock, Calendar, CPU Meter, and Weather, providing immediate utility without downloads.[26] Development improvements focused on an enhanced API that maintained compatibility with Vista gadgets while introducing better JavaScript integration for scripting and events, such as the new IDesktopGadget interface for programmatic control.[1] These changes supported smoother transitions, like hover-triggered focus effects replacing dock/undock events, and reduced CPU overhead through optimized resource handling.[1] In response to user complaints about the intrusive Sidebar in Vista, Windows 7 made gadgets fully optional and less obtrusive by eliminating the mandatory container, allowing users to enable or disable the feature entirely via system settings.[27] This addressed common feedback on performance impacts and desktop real estate usage, prioritizing user choice in gadget deployment.[28]Features
User Interface Elements
Windows Desktop Gadgets feature a core user interface composed of resizable, semi-transparent windows with rounded corners, enabling flexible placement and visual integration on the desktop. These windows support animations for smooth transitions, such as resizing and flyout displays, along with tooltips for contextual information and context menus accessed via right-click for options like opacity adjustments. Rendering occurs through the Desktop Window Manager (DWM), which leverages DirectX for hardware-accelerated effects, ensuring fluid visuals even on compatible hardware.[29][1][3] Interaction mechanics allow users to engage with gadgets through clickable elements that perform actions, such as launching associated applications or opening detailed views. Gadgets can be dragged to reposition them freely on the desktop, with auto-hide options available to toggle visibility via the desktop context menu's "Show Desktop Gadgets" command. Additionally, the "Show Desktop" button on the taskbar minimizes all windows to reveal and group gadgets on the desktop surface, facilitating quick access without altering their layout.[30][31] Display modes include a locked position option, activated by right-clicking a gadget and selecting "Lock" to prevent accidental movement, maintaining stability during routine use. Gadgets operate with always-on-top priority by default, ensuring they remain visible over other windows unless explicitly undocked or hidden. They integrate seamlessly with the desktop wallpaper, appearing as overlays without disrupting the background aesthetic. In Windows 7, enhancements permitted free-floating placement outside the Sidebar for greater flexibility.[32][1] Accessibility features encompass support for high-contrast modes, where Windows system themes override gadget colors for better visibility, applied via settings or the keyboard shortcut Left Alt + Left Shift + Print Screen. Keyboard navigation is provided for the Gadgets Gallery, allowing selection and management using arrow keys and Enter, in line with broader Windows accessibility standards. These elements ensure gadgets remain usable for diverse user needs without requiring custom modifications.[33][34]Built-in and Third-party Gadgets
Windows Desktop Gadgets featured a core set of built-in gadgets developed by Microsoft, which were included by default in Windows Vista (11 gadgets total) and mostly carried over to Windows 7 with minor updates for improved performance and integration, though Contacts and Notes were removed in Windows 7 (replaced by the Sticky Notes application). The Windows Media Center gadget was available in Windows 7 only if the optional Windows Media Center feature was installed. These gadgets provided quick access to common information and utilities without requiring full application launches. The standard built-in gadgets for Windows Vista included the following:| Gadget | Description |
|---|---|
| Calendar | Offers a monthly calendar view for scheduling and date reference. |
| Clock | Displays the current time with support for customizable time zones, allowing users to monitor multiple locations simultaneously. |
| Contacts | Displays a list of user contacts for quick access and viewing. |
| CPU Meter | Visualizes CPU usage through real-time graphs, helping users monitor system performance. |
| Currency Exchange | Fetches and displays real-time currency exchange rates for selected pairs. |
| Feed Headlines | Acts as an RSS reader, pulling and showing headlines from subscribed news feeds. |
| Notes | Allows creation and display of simple text notes directly on the desktop. |
| Picture Puzzle | Provides a simple jigsaw puzzle game using user-selected images. |
| Slide Show | Rotates through photos from a specified folder, serving as a desktop screensaver alternative. |
| Stocks | Tracks stock market tickers and prices for chosen symbols. |
| Weather | Delivers current conditions and forecasts with weather icons for selected cities. |
Customization
Installation and Management
Windows Desktop Gadgets could be installed through the built-in Gadget Gallery or by using packaged .gadget files. To access the Gallery, users right-clicked an empty area on the desktop and selected "Gadgets," which opened a window displaying available gadgets organized by categories such as clocks, weather, and utilities.[1] From the Gallery, installation involved double-clicking a gadget, which added it directly to the desktop in Windows 7 or to the Sidebar in Windows Vista.[38] For offline installation, a .gadget file—a ZIP archive renamed with a .gadget extension containing all necessary files like gadget.xml—could be double-clicked to prompt the installation wizard, which extracted and registered the gadget for the current user.[14][39] Installed gadgets were stored in the user's local application data directory at %USERPROFILE%\AppData\Local[Microsoft](/page/Microsoft)\Windows Sidebar\Gadgets, where each gadget occupied its own subfolder named after its GUID.[1] Shared or system gadgets resided in %PROGRAMFILES%\Windows Sidebar\SharedGadgets or %PROGRAMFILES%\Windows Sidebar\Gadgets, accessible only by administrators or reserved for Microsoft-provided ones.[1] To manage gadgets on the desktop, users right-clicked an individual gadget to access options including "Close" to remove it, "Move" to reposition it by dragging, and "Opacity" to adjust transparency levels for overlapping arrangements.[40] The Gallery itself supported searching by keyword and browsing categories to locate and add gadgets efficiently. Organization features allowed users to align gadgets manually by dragging them into groups or positions on the desktop, with show/hide functionality toggled via the desktop context menu under View > Show Desktop Gadgets.[1] For backups, users could export gadgets by copying their subfolders from the installation directory to another location, and import by pasting them back or reinstalling via .gadget files.[1] To reset to default gadgets, the Control Panel provided an option under Appearance and Personalization > Desktop Gadgets to "Restore desktop gadgets installed with Windows," which reinstalled the original set without affecting custom ones.[41] Troubleshooting common issues, such as unresponsive gadgets, involved restarting the hosting process through Task Manager by ending sidebar.exe and allowing it to relaunch automatically.[42] This process managed the runtime for all gadgets, ensuring persistence of settings and positions across sessions.[1]Creating Gadgets
Windows Desktop Gadgets are developed using web technologies, primarily HTML for the user interface, CSS for styling, and JavaScript for functionality, allowing developers to create lightweight, interactive widgets that integrate with the Windows environment.[3] The core programming model relies on the proprietarySystem.Gadget object, which provides access to system APIs for features such as settings management, docking state detection, and flyout panels, while embedding HTML elements to render the UI within a constrained viewport (typically 130 pixels wide when docked).[3] This model enables gadgets to respond to events like onload and onsettingsclosed, ensuring dynamic behavior without requiring native code.[3]
A gadget is packaged as a .gadget file, which is essentially a ZIP archive containing the necessary files.[2] The archive must include a gadget.xml manifest file that defines essential metadata, such as the gadget's <name> (e.g., "SDK Hello World"), <version> (in the format major.minor.revision.build, e.g., "1.0.0.0"), and <author> details including the developer's name and optional URL or logo.[43] Additional files within the ZIP include the primary HTML file (specified in the manifest's <base src> attribute), JavaScript files for logic, CSS files for visual styling, and supporting images or resources.[2]
Development tools include standard text editors like Notepad (with UTF-8 encoding) for editing files, and optionally Visual Studio for debugging via debugger statements in JavaScript.[2] For packaging and signing to establish trust, developers use Cabarc.exe (from the Microsoft Cabinet SDK) to create a signed .cab file, which is then renamed to .gadget using SignTool.exe (from the Windows SDK) with a code signing certificate.[44] Testing occurs by placing the unpacked folder in the local Gadgets directory (%USERPROFILE%\AppData\Local\Microsoft\Windows Sidebar\Gadgets) and using the Gadget Gallery to install and preview it on the desktop.[2]
A simple example is a clock gadget, where the HTML file structures the display, CSS styles it, and JavaScript updates the time periodically. The following code snippet illustrates a basic implementation in the main HTML file:
<!DOCTYPE html>
<html>
<head>
<title>Simple Clock</title>
<style>
#clock { font-size: 20px; text-align: center; }
</style>
</head>
<body onload="updateClock()">
<div id="clock"></div>
<script type="text/jscript">
function updateClock() {
document.getElementById("clock").innerText = new Date().toLocaleTimeString();
setInterval(updateClock, 1000);
}
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<title>Simple Clock</title>
<style>
#clock { font-size: 20px; text-align: center; }
</style>
</head>
<body onload="updateClock()">
<div id="clock"></div>
<script type="text/jscript">
function updateClock() {
document.getElementById("clock").innerText = new Date().toLocaleTimeString();
setInterval(updateClock, 1000);
}
</script>
</body>
</html>
setInterval to refresh the time every second, leveraging standard JavaScript without System.Gadget for core display.[2]
To maintain performance, developers should follow guidelines such as properly detaching event handlers on unload to avoid memory leaks, using pixel-based font sizes for consistent rendering, and cleaning up timers or intervals when the gadget is closed.[3] For instance, in the page unload event, explicitly stop intervals and remove attached events to prevent resource accumulation.[3]

