0.9.0release candidate
Dynamic crosshair switching, a complete product identity, and a distributable build.
Added
- Dynamic crosshair switching: assign your own keys to saved crosshairs and swap the running overlay mid-game
- A passive low-level keyboard observer that never consumes, remaps or replays a key, on its own thread, with auto-repeat suppression and exact modifier matching
- Optional restriction of switching to one foreground application, by process name
- Binding validation: duplicate keys, shortcut conflicts, modifier-only keys and deleted crosshairs are refused or flagged rather than silently accepted
- A complete product identity: one mark, one palette, one type decision, generated from a single geometry definition
- Application icon at seven frames from 16 to 256 pixels, including a corner-only variant for the small frames where the full artwork would turn to mush
- Portable self-contained win-x64 distribution and an Inno Setup installer definition
Changed
- Product renamed from its temporary working name to crshX, user-facing only: executable, assembly, data folder, window title, shortcut and installer
- Data written by the pre-rename build is adopted on first launch, so presets, profiles and settings survive the rename
- Settings schema is now version 2; a version 1 file loads unchanged
- Crosshair centre is snapped to a whole device pixel, so lines stay sharp at 125% and 150% scaling instead of being antialiased into a smear
Fixed
- A cancelled keyboard-listener start could leave a thread that never pumped messages, which could block shutdown
- The small icon frames drew a closed square instead of an open targeting frame
Verified here
- Release build of the whole solution with no warnings
- 201 automated tests passing, 0 failed
- A self-contained win-x64 single-file publish producing crshX.exe, and the same build as an unpacked folder, both published with their SHA-256 on the download page
Not verified
- Everything that needs a Windows desktop: the window itself, the overlay, click-through, hotkeys, display changes and the installer
- Idle CPU and memory, which have not been measured and therefore are not quoted
- Code signing: the build is unsigned, so SmartScreen will warn on first run