Repository navigation
Releases: silviuk/Luminark
Releases · silviuk/Luminark
Release list
Luminark v1.1.16
What's New in Luminark v1.1.16:
• Mouse Responsiveness & Jitter Elimination:
- Isolated Tray Mouse Hook: Moved the system tray scroll hook to a dedicated, high-priority background thread with its own message pump. Mouse hook callbacks now return instantly in nanoseconds, completely eliminating cursor stutter or jitter during normal PC usage.
- Asynchronous Hardware I2C Queries: Offloaded physical monitor enumeration and DDC/CI queries to background tasks so hardware display scans during USB/device changes never block the UI thread.
- Removed Synthetic Mouse Events: Eliminated zero-delta mouse nudge events from the keep-awake service, ensuring smooth, uninterrupted cursor tracking for high-polling-rate mice.
- Tray Scroll Toggle Setting: Added a toggle switch in Settings to enable or disable mouse wheel brightness adjustments over the system tray icon.
Luminark v1.1.15
What's New in Luminark v1.1.15:
• Runtime Memory Reduction & Performance Optimization:
- Working Set Trimming: Resolved an issue where idle background memory could reach ~150-200 MB. Re-implemented an intelligent working set trim combining full Gen2 GC, LOH compaction, and Win32 process working set trimming, bringing idle tray memory down to ~15-30 MB.
- Startup Buffer Cleanup: Automatically sheds temporary XAML compilation, DirectX buffers, and monitor enumeration allocations 3 seconds after launching minimized to the tray.
- Periodic Idle Maintenance: Added background idle memory maintenance every 10 minutes when all windows are closed, ensuring memory remains consistently lean over multi-day runtimes.
- .NET 8 DATAS Enabled: Activated Dynamic Adaptation to Application Sizes (DATAS) garbage collection, tuning heap sizes dynamically to minimize memory footprint.
Luminark v1.1.14
What's New in Luminark v1.1.14:
• Monitor Video Input Switching & Detection Fixes:
- Fixed phantom inputs: Stopped populating unverified standard inputs (e.g. VGA, DVI, extra HDMI ports). The app now accurately respects your monitor's hardware DDC/CI capabilities (VCP 0x60) to show only physical ports.
- Fixed input switch cancellation: Closing or clicking outside the quick controls tray flyout no longer aborts active input switches.
- Added "Switch Now" button: Added an immediate execution button and Enter key shortcut to switch inputs instantly without waiting for the countdown timer.
- Resilient DDC/CI communication: Added automatic handle reacquisition, retries, and high-byte preservation to ensure input switch commands reach the monitor hardware reliably.
- Background live input synchronization: Active input status is refreshed when opening the tray flyout, remaining synchronized even when inputs are changed using the monitor's physical OSD buttons.
- Custom input management: Added custom port code addition and input removal directly from the Main Dashboard settings.
Luminark v1.1.13
What's New in Luminark v1.1.13:
• Memory & Performance Optimization:
- Eliminated artificial working set ballooning and forced Gen2 GC cycles, establishing smooth and stable memory utilization.
- Resolved an unmanaged handle and background thread leak in SettingsService.
- Fixed WMI COM object leaks by deterministically disposing all ManagementObject query instances.
- Cleaned up static SystemEvents event subscriptions in ThemeService to prevent memory leaks on exit.
- Properly released native Win32 GDI icon handles on exit.
• Background Hook & Polling Efficiency:
- Refactored TrayScrollHook: Eliminated global mouse movement processing across Windows, saving millions of marshal operations and reducing background CPU usage to 0%.
- Refactored NightLightService into a purely event-driven model without polling timeouts, preventing unnecessary CPU and thread wakeups.
- Consolidated Keep-Awake timers, pausing high-frequency ticks when sleep prevention is set to Forever.
- Increased schedule evaluation interval to 30s for minimal idle impact.
• Security & Reliability Enhancements:
- Added startup safety recovery for Windows Console Lock Display Timeout (VIDEOCONLOCK) to ensure lock screen timeout is never stuck at 1s after an abnormal termination.
- Added log file rotation capped at 5 MB in App.Log to prevent unbounded disk usage.
Luminark v1.1.12
Full Changelog: v1.1.11...v1.1.12
Luminark v1.1.11
What's New in Luminark v1.1.11:
• Screen Off & Keep-Awake on Lock:
- Added "Lock & Screen Off" action and global hotkey (Win+J).
- Automatically powers down internal laptop and external displays natively without putting the PC to sleep.
- Windows 11 Modern Standby (S0) laptops stay 100% awake with network and background tasks running.
- Touching any key or mouse instantly wakes the screen at full normal brightness to unlock.
• External Monitor Video Input Switching:
- Switch monitor inputs (DisplayPort, HDMI, USB-C) directly from the flyout or Main Window via DDC/CI.
- Assign custom friendly names (e.g. Work PC, Gaming Rig) and filter visible ports.
- Active signal indicators (✔) show connected video feeds.
• Multi-Host Display Retention:
- Retains displays switched to other computers as "Inactive", allowing 1-click switching back.
• Clean Startup & Reliability:
- Starts cleanly minimized to the system tray at Windows boot without popup windows.
- Self-contained package with zero external .NET dependencies required.
- Improved Night Light and theme scheduling synchronization.
Luminark v1.1.10
What's Changed in v1.1.10
Fixed
- Eliminate Modern Standby Sleep Trigger in 'Lock & Screen Off':
- Identified root cause of instant sleep: On Windows 10/11 laptops with S0 Modern Standby, Windows intercepts any \SC_MONITORPOWER (2)\ system command as a manual \SleepButton\ press, forcing the Intel/AMD SoC into S0ix Modern Standby sleep (suspending Wi-Fi to D3 and pausing CPU/apps).
- When Prevent Sleep is active, Luminark now **never sends \SC_MONITORPOWER**.
- Hardware Display Standby: External monitors are powered off directly via VESA DDC/CI hardware standby (\VCP 0xD6 = 4), bypassing Windows OS power messages entirely.
- Internal Display Dimming: Internal laptop displays are dimmed to 0% brightness via WMI when locking, and restored to the previous brightness level upon unlocking.
- Persistent Display Pipeline: Retains \ES_DISPLAY_REQUIRED\ and \PowerRequestDisplayRequired\ in the kernel so Windows never signals the hardware SoC to enter S0ix sleep.
- The laptop remains 100% active, network stays connected, and downloads/tasks continue without interruption while screens are dark and workstation is locked.
Full Changelog: v1.1.9...v1.1.10
Luminark v1.1.9
What's Changed in v1.1.9
Fixed
- Keep Laptop Awake During 'Lock & Screen Off' on S0 Modern Standby:
- Resolved an issue on modern Windows laptops (S0 Low Power Idle / Connected Standby) where pressing 'Lock & Screen Off' or turning off monitors caused Windows to enter Modern Standby sleep despite 'Never sleep when plugged in' and 'Prevent sleep: Forever'.
- Windows Away Mode Integration: Registered \PowerRequestAwayModeRequired\ via Kernel Power Request APIs and \ES_AWAYMODE_REQUIRED\ via \SetThreadExecutionState. Away Mode ensures the system, CPU, disk, network, and desktop applications run at 100% capacity while screens and audio are powered down.
- Independent ThreadPool Heartbeat Timer: Added a dedicated \System.Threading.Timer\ running on the thread pool to reaffirm kernel power requests every 30 seconds, preventing Windows from suspending keep-alive state when the desktop switches to \LogonUI\ (lock screen).
- VESA DDC/CI Hardware Standby: External monitors are explicitly signaled to enter standby (\VCP 0xD6 = 4) and automatically awakened (\VCP 0xD6 = 1) upon session unlock.
- Targeted Monitor Power Commands: Avoided shell-wide \HWND_BROADCAST\ sleep triggers by directing display power-down commands to the application window.
Full Changelog: v1.1.8...v1.1.9
Luminark v1.1.8
What's New in Luminark v1.1.8:
- Prevent Unminimized Startup at Windows Boot: Resolved an issue where secondary or delayed startup triggers caused the main window to unexpectedly restore and pop up on screen at login.
- Guarded Single-Instance Activation: Secondary launches with --minimized (or packaged StartupTask) now exit quietly and never activate the running background tray instance.
- Autostart Consolidation & Cleanup: Standardized autostart strictly to the Windows Run registry key and added automatic cleanup routines for duplicate shortcuts in the Startup folder.
Luminark v1.1.7
What's New in Luminark v1.1.7:
- Video Input Sources Customization: Manage, rename, and filter monitor inputs (HDMI, DP, USB-C) for the quick controls dropdown.
- Active Signal Indicators: Green checkmarks next to inputs reporting active connected signals.
- Inactive Monitor Retention: Retains displays switched to other devices/PCs so you can easily switch them back.
- Configurable Hotkey: Press Win+J to instantly lock workstation and turn off displays while keeping the PC awake.
- Positioning Fix: Multi-monitor and DPI-aware positioning guarantees the quick controls flyout is always fully visible.