Skip to main content

Windows system-tray app to hide/show desktop icons, taskbar, and all windows via hotkeys

Project description

HideDesktopApps

A lightweight Windows system-tray app that hides and shows desktop icons, the taskbar, and all windows — perfect for revealing your Wallpaper Engine wallpaper on demand.

PyPI Python License: MIT


Install from PyPI

pip install hide-desktop-apps
hide-desktop-apps

Config and the tray icon are stored in %APPDATA%\HideDesktopApps\ and created automatically on first run.


Who is this for?

  • Streamers & Presenters — automatically hide sensitive apps (email, Slack, Discord) when you start a screen-share or go live, then restore them when you're done.
  • Wallpaper Engine / desktop art fans — reveal your animated wallpaper on demand with a single hotkey, without closing anything.
  • Kiosk & display terminals — cleanly tuck away standard OS chrome for a dedicated display without terminating background processes.
  • Focus / productivity tools — build Python scripts that hide distracting apps during a focus block and restore them automatically when the block ends.
  • Desktop customisation ("riced" setups) — programmatically control the taskbar and desktop icons to match your current layout or theme.

Features

  • Three configurable hotkeysCtrl+Alt+H toggles icons, Ctrl+Alt+T toggles the taskbar, Ctrl+Alt+W toggles all windows
  • Taskbar toggle — hide/show the taskbar from the tray or via hotkey (supports multi-monitor)
  • Tray left-click — left-click the tray icon to toggle icons
  • Tray right-click menu — toggle icons, taskbar, or all windows; open settings; restart; exit
  • Auto-start — places a launcher in your Windows Startup folder, appears as HideDesktopApps in Task Manager → Startup tab
  • Settings window — change all three hotkeys, startup delay, run-at-startup toggle, and default state — all without editing files
  • Tiny memory footprint — pure Python, no background scanning

Requirements

  • Windows 10 or 11
  • Python 3.7 or newer
  • Packages: pystray, Pillow, pywin32

Installation

Via pip (recommended)

pip install hide-desktop-apps
hide-desktop-apps

From source (clone this repo)

Double-click install_and_run.bat — a menu will appear:

1  FULL INSTALL  ← does everything: installs packages, adds to startup, launches app
2  Install / update Python packages only
3  Run app now
4  Add to Windows startup
5  Remove from Windows startup
6  Check startup status
7  Open this folder in Explorer
8  Run in debug mode  (shows errors in console)
0  Exit

Choose 1 for a first-time install.

Manual install

pip install pystray pillow pywin32
pythonw hide_desktop.py

The app writes its startup entry automatically on first launch.


Controls

Action Effect
Ctrl+Alt+H Toggle desktop icons
Ctrl+Alt+T Toggle taskbar
Ctrl+Alt+W Toggle all open windows
Left-click tray icon Toggle desktop icons
Right-click tray → Toggle Desktop Icons Toggle desktop icons
Right-click tray → Toggle Taskbar Hide / restore the taskbar
Right-click tray → Toggle All Windows Hide / restore all open app windows
Right-click tray → Settings… Open the settings window
Right-click tray → Restart Restart the app (picks up config changes)
Right-click tray → Exit Restore everything and quit

Tray icon guide

Icon Meaning
Four coloured tiles Everything visible
Four coloured tiles + orange dot Taskbar hidden
Four grey tiles + red X Desktop icons hidden
Single large grey tile + red X All windows hidden

Settings window

Right-click the tray icon → Settings… to open a tabbed settings window:

Hotkeys tab — set the modifier keys and letter for all three hotkeys (icons, taskbar, windows). Conflicts are detected automatically. The app restarts to apply hotkey changes.

Startup tab — toggle whether the app runs at Windows startup, and configure the delay (0–120 seconds) before it launches after login.

Defaults tab — choose whether desktop icons start hidden when the app launches.

You can also edit config.ini directly:

[hotkey]
modifiers = ctrl+alt
key = h

[hotkey_taskbar]
modifiers = ctrl+alt
key = t

[hotkey_windows]
modifiers = ctrl+alt
key = w

[startup]
run_at_startup = true
delay = 30

[defaults]
icons_hidden = false

Startup management

On first launch the app drops a small VBS launcher into your Windows Startup folder. This shows up in Task Manager → Startup tab as HideDesktopApps and can be enabled/disabled there like any other startup entry.

To remove auto-start:

  • Settings window → Startup tab → uncheck "Run HideDesktopApps when Windows starts"
  • Installer TUI → option 5 — Remove from Windows startup
  • Task Manager → Startup tab → right-click HideDesktopApps → Disable / Delete

Recovery tips

Taskbar is hidden and you can't find the tray icon

If you hid the taskbar and the tray icon is out of reach, the quickest way to get everything back is to open a Run dialog (Win+R) or any command prompt and paste:

python -c "import win32gui, win32con; win32gui.ShowWindow(win32gui.FindWindow('Shell_TrayWnd', None), win32con.SW_SHOW)"

This is a totally normal thing to need — Ctrl+Alt+T is easy to hit by accident, and the taskbar disappearing without an obvious way back is just part of learning the app. Once you're back up, consider binding the taskbar hotkey to something you're less likely to hit unintentionally, or leaving the taskbar toggle to the tray menu only.

All windows are hidden

Press Ctrl+Alt+W again to restore them, or right-click the tray icon → Toggle All Windows.

App isn't appearing in the tray

Run option 8 — Debug mode in install_and_run.bat. This runs the app in a visible console window so any errors are shown instead of swallowed silently.


Caveats & known issues

Ghost windows after a crash

If the app is killed unexpectedly (unhandled exception, Ctrl+C, etc.), it registers an atexit handler that restores all hidden state before the process exits. However, atexit does not fire if the process is hard-killed — for example via Task Manager → End Process, or a system power loss. In that case, hidden windows remain invisible until you restore them manually (see Recovery tips above) or reboot.

For a clean shutdown always use Right-click tray → Exit, which explicitly restores everything before quitting.

Antivirus false positives

This app uses Windows APIs (RegisterHotKey, EnumWindows, ShowWindow) that overlap with the behaviour of certain malware. Running it as a Python script is generally fine, but if you package it into a standalone .exe with PyInstaller, Windows Defender or other AV tools may flag it as suspicious.

This is a false positive. The source code is fully open and auditable in this repo. If your AV flags it, you can submit a false-positive report to your vendor or add a folder exclusion. Signing the executable with a code-signing certificate also eliminates most AV warnings, but is out of scope for a personal tool.


File layout

HideDesktopApps/
├── hide_desktop.py      — main app
├── install_and_run.bat  — setup TUI
├── config.ini           — configuration (auto-created on first run)
├── requirements.txt     — pip dependencies
├── CHANGELOG.md         — version history
└── README.md            — this file

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hide_desktop_apps-0.4.0.tar.gz (18.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hide_desktop_apps-0.4.0-py3-none-any.whl (15.2 kB view details)

Uploaded Python 3

File details

Details for the file hide_desktop_apps-0.4.0.tar.gz.

File metadata

  • Download URL: hide_desktop_apps-0.4.0.tar.gz
  • Upload date:
  • Size: 18.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for hide_desktop_apps-0.4.0.tar.gz
Algorithm Hash digest
SHA256 5b8e667c300f530adbcc95416b9ca2fdb6463032dd2ad9e9f91fd0707045e506
MD5 cc361e8cc44f72327a6255b4717e1f32
BLAKE2b-256 45f4731ea739ea9e52ccd5f67e4719501d8c9d2f1108cdb47689c5073133d720

See more details on using hashes here.

File details

Details for the file hide_desktop_apps-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for hide_desktop_apps-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1f6e204e5b11fe2399f02839e3eb334b90d3f9fed78d30b00d9adf60ad49beae
MD5 d9e9e6b6a1d4192d533d00c4b1983650
BLAKE2b-256 c8b9ebf6c713caff1bef13be05f16bfb2c2d075052197976c438ea9bdd9670f9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page