Repository navigation
Releases: zalexdev/SmartCollapse
Releases · zalexdev/SmartCollapse
Release list
SmartCollapse 1.3.0
feat(peek): give Windows' peek back when per-monitor peek stops Windows' own "Peek at desktop" used to be switched off once on first start, and the user had to turn it back on by hand. Now SmartCollapse only borrows it while its own per-monitor peek is running: - Switch Windows' peek off when hover peek is active, and back on when SmartCollapse is paused, hover peek is unticked, or the app exits. - Restore it only if SmartCollapse switched it off (tracked with the WindowsPeekBorrowed setting). This replaces the one-time PeekHandled logic. - If the user ticked Windows' peek again in the meantime, leave it on and turn hover peek off. - On WM_ENDSESSION, restore the setting without broadcasting, because the process ends without leaving the message loop. - On normal exit, restore it before the mutex is released, so an instance started with --replace borrows it only after that. - Replace taskbar::TurnOffPeek with SetNativePeek(on, notify), which can switch the setting either way and optionally skip the WM_SETTINGCHANGE broadcast. - Update the README to describe the new behavior.
SmartCollapse 1.2.0
SmartCollapse 1.1.0
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.