Skip to content

Ivy-Interactive/Ivy-Windows-Wallpaper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ivy-Windows-Wallpaper

A dotnet tool that renders a self-contained Ivy web application as your Windows desktop wallpaper.

How It Works

  1. Launches a self-contained Ivy app (an HTTP server) on a given port
  2. Points a WebView2 instance at http://localhost:{port}
  3. Embeds the WebView2 window behind the desktop icons using the Progman/WorkerW shell technique
  4. Provides a system tray icon for Reload and Exit

Usage

ivy-windows-wallpaper run <path-to-exe> -- --port <port> [other args...]
ivy-windows-wallpaper install <path-to-exe> -- --port <port> [other args...]
ivy-windows-wallpaper uninstall

Commands

run - Launch the Ivy app and display it as desktop wallpaper. The server process is started, WebView2 navigates to http://localhost:{port}, and the window is placed behind desktop icons. Close via the tray icon.

install - Copy the Ivy app directory to %LOCALAPPDATA%\ivy-windows-wallpaper\apps\current\, register for Windows startup via the HKCU\...\Run registry key, and immediately run the wallpaper. Re-installing replaces the previous installation.

uninstall - Remove the installed app files, the Windows startup registry entry, and WebView2 data.

Example

ivy-windows-wallpaper install ./MyDashboard.exe -- --port 5123

Desktop Shell Technique

The tool uses an undocumented Windows message (0x052C) sent to the Progman window to spawn a WorkerW layer behind the desktop icons. The wallpaper form is then parented to this WorkerW via SetParent(), making it render behind icons while remaining invisible to Alt-Tab.

On Windows 11 24H2+, the desktop composition changed. The tool detects this via WS_EX_NOREDIRECTIONBITMAP on Progman and falls back to parenting directly to Progman with explicit Z-ordering behind SHELLDLL_DefView.

Known Limitations

  • Windows only - relies on Win32 shell internals
  • Single monitor - covers Screen.PrimaryScreen only
  • Windows 11 24H2 - basic support via Progman fallback, less tested
  • Audio muted by default, no UI to unmute
  • Non-interactive - WS_EX_TRANSPARENT makes the wallpaper click-through by design

Prerequisites

  • .NET 10.0+
  • WebView2 Evergreen Runtime (ships with Windows 10/11)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages