v1.16.0
New in v1.16.0
New features & improvements:
- Rewrote DDC/CI code to (hopefully) improve hardware compatibility. If you encounter issues with monitors being detected after this update, try enabling "Legacy DDC/CI detection method" in the "Troubleshooting" settings.
- Implemented additional customizations to DDC/CI features (contrast, volume, and custom). You can now set min/max values, and link the feature to the brightness slider. As an example, you could link contrast with brightness, so you can reach lower perceived brightness levels on your monitor than with brightness adjustments alone.
- Twinkle Tray will now attempt to read supported VCP codes, which are displayed in the "DDC/CI Features" tab.
- Overhauled the hotkeys system. You can now assign multiple monitors per hotkey, set/adjust brightness to any value, and send arbitrary VCP codes (contrast, volume, power state, etc). Multiple actions can be assigned to hotkeys.
- Implemented per-app brightness profiles. When a specific app is the focused window, a user-defined brightness profile can apply to all displays. The original brightness will be restored when switching back from the app. This should be especially useful for games. Please note that Twinkle Tray does not track which display the app is on. There are no plans for that functionality at this time.
- Additionally, these profiles can be saved to the system tray right-click menu to quickly switch the brightness of multiple monitors to the user-defined profiles.
- Added the option to trigger brightness changes according to the sun's position. You can provide your coordinates yourself, or they can be estimated with the "Get coordinates" button. This uses Cloudflare to estimate your coordinates based on your IP.
- Changing the power state of a monitor via DDC/CI will now attempt to toggle the display back on, if applicable. You may need to adjust the new "Power State Signal" setting in order for it to work for your monitor(s). Please keep in mind that not all displays correctly support this DDC/CI command and can cause your display to become unresponsive. There is nothing Twinkle Tray can do to further improve compatibility for this DDC/CI command.
- Added support for Apple Studio Displays (thanks @jridgewell). These displays may not be compatible with all Twinkle Tray features.
- Implemented an option to block idle detection while a fullscreen app is focused.
Fixes & updates:
- Fixed scheduled brightness changes ("Time of Day Adjustments") activating at the wrong time, or not at all.
- Redesigned the settings window to better match Windows 11 and account for the new v1.16.0 features.
- Improved accuracy and details for CLI commands.
- Improved tray icon and flyout handling after hardware changes and waking from sleep.
- Refactored the Mica blur effect to use fewer resources and apply quicker at startup.
- Improved error handling in the Settings window to hopefully make reporting any issues easier and not end up with a completely useless window.
- The "Get Current Brightness" toggle now also applies to active non-brightness DDC/CI features. The setting has been renamed to match the new functionality.
- The amount of brightness changed when using the tray scroll shortcut is now adjustable.
- Hidden displays will no longer be affected by brightness updates.
- Updated "Troubleshooting" section with new tools to help with issues.
- Several dependencies have been removed or replaced.
- Fixed dozens of bugs that I can't recall individually.
- Introduced new bugs.
- Updated localizations.
Other information:
- It's strongly recommended that you use another DDC/CI app, such as ControlMyMonitor, to understand the capabilities of your display prior to setting up VCP code hotkeys. Twinkly Tray's UI is not designed for quick and arbitrary DDC/CI adjustments outside of brightness control. Twinkle Tray cannot help you if you send a VCP code that makes your display unusable.
There will be a delay before this is rolled out to Microsoft Store users. A lot has changed, so I'm taking it slow in case any new issues come up. Microsoft Store users may not see a new update until v1.16.1 or v1.16.2. If you want to use this update now, uninstall the Microsoft Store version before installing the v1.16.0 EXE.
Thank you to everyone who has helped test v1.16.0, provided localization for the new strings, or donated during this long journey. ❤️