v0.2.0
Release v0.2.0
This release significantly expands WinSoftVol with new tray interactions, a persistent config file with hot-reload, volume cap controls, device change notifications, exclusive mode detection, an upgraded About dialog, and automatic update detection.
π Features
- Volume Cap: Add volume cap support β set a ceiling on maximum output (100% / 80% / 60% / 40%) from the tray menu (52288f4)
- Scroll Wheel: Adjust volume Β±2% per notch directly on the tray icon (2ca5a6b)
- Left-click Mute: Toggle mute/unmute with a single left-click on the tray icon (da4a7ed)
- Dynamic Tray Icon: Real-time volume bar overlay on the tray icon; bar turns red when muted (e0338d1)
- Device Change Notification: Toast notification confirms re-initialization after USB plug/unplug (cadd0f9)
- Exclusive Mode Warning: Detects when a game or DAW takes WASAPI exclusive mode and notifies the user (a444ca4)
- Config File: Persistent settings in
%APPDATA%\WinSoftVol\config.tomlwith hot-reload β changes apply without restarting; supports per-device overrides (3e67028) - About Dialog: Upgraded to TaskDialog with clickable links to the project homepage and GitHub Sponsors; shows a download link when a newer version is available (e7c630a)
- Auto-update Check: Background thread checks GitHub for new releases on startup. Fires a clickable toast notification (opens the release page directly) and surfaces a download link inside the About dialog when a newer version is found (5db0ddc)
π Bug Fixes
- Resolve volume cap logic bugs (81d5f2d)
- Volume cap menu items now correctly uncheck the previously selected preset (85e7a35)
- Left-click tray icon now correctly opens the popup menu (82b4361)
- Resolve wrong volume applied when
GetMasterVolumefails (163296e) - Resolve incorrect string length calculation in UTF-16 encoding (c91e7be)
- Clamp
cap_percentto[10, 100]after TOML parse β a value of0previously silenced all audio (83476a5) - Embed comctl32 v6 manifest β fixes "procedure entry point TaskDialogIndirect could not be located" crash on startup (a57248e)
π Documentation
- Update
README.mdto reflect current features (3edc774) - Add
LICENSEfile (d8b9aa8) - Add
CONTRIBUTING.md(6215abc) - Document config file, hot-reload, and About dialog links in README (48bdb85)
- Document auto-update check feature in README (06d7528)
π§ͺ Tests & CI
- Expand test coverage across audio session management, config parsing, and tray presets (4ecdd19)
π Style & Formatting
π§ Build & Maintenance
- Add
make lintcommand to check format and lint errors (0736974) - Add
make fixcommand to quickly apply fmt and lint fixes (271d5b7) - Update funding sources in
FUNDING.yml(ede4c2c)
Full Changelog: v0.1.0...v0.2.0
Full Changelog: v0.1.0...v0.2.0