Trying out the Window Manager with extensions to support 'dark' themes
----------------------------------------------------------------------
What is a dark desktop?
~~~~~~~~~~~~~~~~~~~~~~~
To date, the RISC OS desktop has been a relatively light shade of grey, with
a coloured title bar to denote the window with the input focus, and black
text.

If you use a computer for a long period of time these brighter colours can
lead to eye strain, so a dark theme swaps it around so that the desktop is
a much darker colour, with the sparse areas of text being much closer to white.

Internally some of these colour choices are hard wired into the Wimp, meaning
for example that even though the sprites which make up the window border
could be replaced with darker ones, the text is still black, and therefore
almost invisible on a dark background.

This prototype Window Manager removes the hard wired colour choices and allows
a theme designer to set them to any arbitrary colour.

What you will need
~~~~~~~~~~~~~~~~~~
* A spare Raspberry Pi
  => To replace the OS ROM with one which contains the prototype Wimp 5.89
* An updated Theme plug-in for Configure
  => This is provided in the !Boot update in this archive
* A sample theme which is dark
  A test one which is dark purple is provided. Please note that this only
  attempts to replace the minimum number of design elements to test the
  code changes work, so may look a little rough round the edges!
  => This is also provided in the !Boot update in this archive

Installing
~~~~~~~~~~
1. Open up !Boot.Loader and replace the riscos/img with the one provided here.
   You may wish to rename the previous one out of the way for later, or keep
   a backup of the SD card.
2. Run Configure, and open the Theme plug-in.
3. Select 'Install themes...'.
4. Drag the !Boot update into the merge window, click 'Merge'.
5. Use 'Cancel' to close the plug-in.
6. Reboot the computer.

The new ROM is fully backwards compatible, so after rebooting everything will
look much the same.

To enable the dark test:
1. Re-open the Theme plug-in and now there will be one called "DarkPurple"
   in the themes menu.
2. Select that and click 'Set'.
3. Reboot the computer.

Note: some of the settings will have taken effect before rebooting so you might
      not be able to read the menu text any more if your background was very
      light!

Uninstalling
~~~~~~~~~~~~
1. Open the Theme plug-in.
2. Select a theme other than the "DarkPurple" one, for example the Sovereign
   theme is a more conventional light grey RISC OS 5 theme.
3. Reboot the computer.

You may choose to revert the riscos/img to an earlier backup, and you can do so
now. Note that this *must* be done after having selected a non-dark theme,
because the extra command line switches aren't recognised by the previous
version of the Window Manager so would otherwise cause an error.

Other than using a bit of disc space, it's harmless to have the theme data
itself sitting in the theme definitions. If the space is needed back you can
delete

  !Boot.Resources.!ThemeDefs.Themes.DarkPurple

Sources
~~~~~~~
The changes to the source code are available

  https://gitlab.riscosopen.org/rsprowson/Wimp/-/tree/dark-mode
  https://gitlab.riscosopen.org/rsprowson/Filer/-/tree/dark-mode
  https://gitlab.riscosopen.org/rsprowson/RISC_OSLib/-/tree/dark-mode

should you wish to produce an OS ROM for a platform other than those provided
in this archive, and the Theme plug-in changes are

  https://gitlab.riscosopen.org/rsprowson/ThemeSetup/-/tree/dark-mode

for reference.
