Ticket #602 (Open)Tue Jun 06 21:11:16 UTC 2023
Disabled items aren't displayed in black and white screen modes
Reported by: | Cameron Cawley (3514) | Severity: | Normal |
Part: | RISC OS: Module | Release: | |
Milestone: | Status | Open |
Details by Cameron Cawley (3514):
If a 1bpp black and white screen mode is selected, disabled buttons and menu entries will be rendered as white text on a white background, making it impossible to see. Older versions of RISC OS would dither the text so that it would still appear greyed out.
Changelog:
Modified by Cameron Cawley (3514) Tue, June 06 2023 - 21:43:55 GMT
Actually, it looks like dithered text does work in certain scenarios, so it looks like more investigation is needed regarding what causes it to not work properly.
Modified by Sprow (202) Sun, January 12 2025 - 08:54:27 GMT
- Part changed from Unspecified to RISC OS: Module
- Attachment added: Colours0_7,aff
As far as I can see the dithering can only ever work if the desktop is using the System font, because the that’s plotted using the sprite handling code and hence can use an ECF pattern (ColourTrans_SetGCOL flag bit 8).
For fancy fonts done using the Font Manager I can’t see any flags to cause dithering, and a quick search of the FM sources for “dither” and “ECF” yields no hits. Looking at the Font_Paint code it’s just putting pixels straight into memory.
The behaviour has changed though: Wimp 3.68 (RISC OS 3.71) showed the disabled menu entries in black, but they were unselectable, Wimp 4.15 (RISC OS 4.02) shows them in white and also unselectable. Most likely the change to icon highlighting for Ursula or the true colour (‘C’ validation) has resulted in the disabled menu entries being rendered in colours 1/2/3 while before they used darker 4/5/6.
Attached is a Draw file – it has some Homerton text in colours 0-7. If you swap to 1bpp mode you’ll see 4 end up black and 4 end up white. This backs up my belief Font Manager doesn’t dither at 1bpp. I also tried with/without background blending but the result is the same.
I don’t think doing what Wimp 3.68 did is particularly “better”, as this results in black menu entries which would imply they can be selected, and yet they can’t. At least white text is clearly not there! So I think your options are either to special case 1bpp plots in Font Manager to apply some dither, or special case 1bpp icons in the Wimp and plot the text black then go back and post process with some dither.