TrayBlank 1.13
~~~~~~~~~~~~~~

What it does:
~~~~~~~~~~~~
TrayBlank adds an icon to your system tray that you can use to start your
screen saver by double-clicking on it.  Right-clicking pops up a menu with
the options to start the screen saver, turn off the monitor, display the
"About" window and exit the program.

Version 1.2 add support for global hotkeys - you may assign key combinations
to start the screen saver or turn off the monitor. The default keys are
Control-Alt-S to start the screen saver and Control-Alt-Z to turn the monitor
off. The Hotkeys submenu allows you to turn the hotkeys on and off, and
define your own hotkeys. The currently active hotkeys are shown in the main
menu next to the relevant options. Version 1.7 adds options to turn each of
the hotkeys on and off from inside the setup dialog.

TrayBlank will pop up a warning message if it is unable to assign one or
both of your selected hotkeys. This will usually be because something else
is already using the chosen key combination.

In version 1.4, the icon is updated regularly with a progress bar - this
shows how long it is likely to be until the screen saver automatically starts.
This is an estimate based on the time since the mouse and keyboard (or other
input) was last used, or when media players (or any other processes) tell
Windows that the display is in use.

From version 1.10 TrayBlank checks the monitor power-off timeout as well,
displaying a different progress bar if the monitor will turn off before the
screen saver starts.

Version 1.9 adds options to start the screensaver directly instead of telling
Windows to start it. This means the screensaver runs on the main desktop
instead of on a separate desktop. There is an additional option to start the
screensaver directly after the timeout: use this at your own risk, TrayBlank
cannot detect all the types of process that would normally prevent a
screensaver starting.

Version 1.11 adds a new submenu for users with multiple monitors, which allows
selecting specific monitors to be turned off with the "Turn off monitor"
command. This works by sending a power-off signal directly to the monitor,
though not all monitors support this. If the monitor(s) you have selected do
not support it, TrayBlank will display a full-screen black window over that
monitor instead. In either case, the content of the "off" monitor(s) will be
redisplayed when the mouse cursor enters an "off" monitor.

Why and how:
~~~~~~~~~~~
I wrote this to help me test the JPEG Saver screen saver. You can start a
screen saver in several ways, such as double-clicking its icon, or using
the /s command line option, but these start it as a normal process running
with the same priority as any other programs you have started.

Conversely, when Windows finds that you have been inactive for however many
minutes you have specified in the Display Properties/Screen Saver tab, it
starts the selected screen saver with a lower priority to prevent it from
interfering with any important processes you have running.

TrayBlank works by sending Windows a WM_SYSCOMMAND message with the
SC_SCREENSAVE system command. This makes Windows start the screen saver in
the normal way, with the lower priority.

Bug reports, suggestions, etc:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
I will do my best to fix any bugs that are reported to me, and I welcome
any suggestions for improvements.  Please send as much detail as you can
to me at graham@goat1000.com.

Version history:
~~~~~~~~~~~~~~~
1.0    14/08/2003  First release version.
1.1    ??/??/2009  Private version, unreleased.
1.2    16/02/2010  Added hotkey support.
1.2.1  13/05/2010  Fixed saving of options on system restart.
1.3    13/07/2012  Check screen saver is set up.
1.4    11/09/2013  Added progress bar, improved tooltip.
1.5    02/11/2013  Added screen saver timeout setting, display of current
                   screen saver in tooltip.
1.5.1  05/11/2013  Fixed crash at startup when screen saver not set.
1.6    14/03/2014  Added screen saver start delay.
1.7    10/05/2016  Added configure hotkey, enable option for each hotkey.
1.8    26/05/2017  Now works better when screen saver is disabled.
1.9    02/08/2017  Added direct start options, more accurate progress bar.
1.9.1  27/01/2018  Better about dialog, new 64-bit version.
1.10   28/11/2019  Added check for monitor power-off time, updated progress bar.
1.11   27/04/2021  Added per-monitor power-off menu.
1.12   (Unreleased version)
1.13   03/10/2025  Simpler and faster monitor list setup.

graham@goat1000.com, October 2025

