You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: add SmartCollapse, a per-monitor Show desktop for the taskbar
Add the first version (1.1.0) of SmartCollapse. It is a native Win32 tray
app that makes the taskbar's Show desktop button act only on the monitor
it sits on.
- hook: a low-level mouse hook runs on its own high-priority thread. It
swallows left clicks on a Show desktop button and posts the work to
the main window. It also reports when the cursor enters or leaves a
button, for the peek. Shift+click keeps the normal behavior, and a
watchdog reinstalls the hook if Windows drops it.
- taskbar: finds the Show desktop button on each taskbar. Classic,
StartAllBack and ExplorerPatcher taskbars are matched by window class;
the Windows 11 taskbar goes through UI Automation. Also turns Windows'
own all-monitor peek on or off.
- desktop: minimizes a monitor's app windows without activating them,
then restores them with the same Z-order, maximized state and focus.
Calls are async, so a hung app can't block the tool. Handles virtual
desktops, skips windows it can't minimize (elevated apps), and keeps
the collapsed state in HKCU across restarts.
- peek: per-monitor "Peek at desktop" through a click-through overlay
with a live DWM thumbnail of the desktop.
- admin: optional elevated mode through UAC. Autostart moves from the
Run key to a Task Scheduler logon task with highest privileges.
- main/log: tray menu, single instance, --toggle/--exit/--log options,
and optional logging to %TEMP%.
- Resources: manifest (PerMonitorV2 DPI, Common Controls 6), version
info, app and paused icons, plus tools/make-icons.ps1 to rebuild the
icons.
- build.cmd finds MSVC with vswhere and builds a small static exe into
build\.
- README with usage, compatibility and build notes, and an animated
demo SVG. .gitignore is reduced to the build output.