Skip to content

1.2

Choose a tag to compare

@fernandoenzo fernandoenzo released this 28 Mar 00:31
· 36 commits to master since this release
d4cddb2

Complete C rewrite with instant hotkeys and stable monitor ordering

Major Changes

Complete native Win32 C implementation

  • Replaced AutoHotkey with pure C — Single implementation using Win32 CCD APIs
  • Zero dependencies — No AutoHotkey runtime required
  • Faster startup and lower memory footprint
  • Cross-compilation support from Linux via MinGW-w64

Instant monitor switching hotkeys

  • Ctrl+Alt+1..9 — Switch directly to monitor N without confirmation dialog
  • Dynamic registration — Hotkeys automatically adjust when monitors are connected/disconnected
  • Improved synchronization — Hotkeys update correctly during physical monitor changes

Unified hotkey scheme

  • All hotkeys now use Ctrl+Alt for consistency:
    • Ctrl+Alt+M — Show tray menu
    • Ctrl+Alt+R — Restore original configuration
    • Ctrl+Alt+H — Toggle HDR on primary monitor
    • Ctrl+Alt+1..9 — Switch directly to monitor N

Stable monitor ordering

  • Port-centric sorting — Monitor order now matches Windows Settings exactly
  • Predictable numbering — Same port always gets same hotkey (1, 2, 3...) regardless of activation order
  • Based on Adapter LUID + Target ID — Hardware-level stable identifiers

Enhanced topology detection

  • Smart restore behavior — "Restore original config" now works regardless of who changed the display topology (program vs Windows Settings)
  • Real-time detection — Menu instantly reflects current topology state
  • Improved debouncing — 2-second delay prevents race conditions during monitor enumeration

Technical Improvements

  • Three-attempt display configuration — Fallback strategy prevents 60Hz downgrades
  • Registry-based HDR state reading — More reliable than CCD API on some devices
  • Balloon notifications — Integration with Windows 11 notification center
  • Error feedback — Clear error messages for common failure scenarios