Issue 112: GUI .png Alpha Mask Blending.

Reported by blackosx, Jul 13, 2011

Chameleon currently uses two screens for the GUI. The first being 
the 'Timeout' screen used for showing the default boot device, along 
with the 'countdown' text and progress bar. The second being the 
'Device Selection' screen where the user can choose which device to 
boot, view the menu and type boot options.

Device graphics are drawn differently on the 'Timeout' screen 
compared against the 'Device Selection' screen, with the 'Timeout' 
screen showing them correctly and shows them as they look in 
Photoshop. However, when the same image is drawn on the device 
selection screen it's 'blended' differently which results in the 
transparent pixels effectively disappearing.

This affects any .png drawn within the 'Devicelist Window ' (taken 
from gui_t struct in /i386/boot2/gui.h) boundary in the 'Device 
Selection' screen. So that includes the device graphics and the font 
.png used for the device names.

To demonstrate this, I have a created a test theme (see attached). 
The lowest resolution to use it with should be 1024x768 and I 
recommend using the timeout boot option set to a high value, say 30 
to give time to read the screen.

Other posted screenshot examples:,1432.msg7883.html#msg

The problem here mainly rears it's head because Chameleon uses both 
the 'Timeout' and 'Device Selection' screen. Maybe if the 'Timeout' 
screen was no longer used then this problem wouldn't be noticed? 
(the graphics would still be drawn incorrectly on the 'Device 
Selection' screen, but there wouldn't be anything to compare them 
against (though it would be preferable if this issue could be fixed 
and the graphics appear as intended.)).

This post,1904.0.html
 might be on the right lines suggesting not using the 'Timeout' 
screen, but instead drawing the progress bar underneath the default 
device icon on the 'Device Selection' screen. Maybe a possible 
option if the GUI were ever to be redesigned / re-thought?

Comment 1 by blackosx, Jul 13, 2011

The theme didn't attach. Here it is.

Comment 2 by Evan Lojewski, Jul 13, 2011

Right now it looks like the order that blend() is called incorrect. 
I'll see if there is a good way to work around that (rather than 
trying to swap the order, which would take a lot of work...)
Status: Accepted

Comment 3 by blackosx, Jul 13, 2011

Thanks for looking Mek. I'll keep my fingers crossed in the hope you 
can solve it. :)

Comment 4 by Cosmosis Jones, Jul 18, 2011

this is probably going to have to suck up w/ the gui rewrite
Labels: Target:2.1
Status: Postponed

Comment 5 by Cosmosis Jones, May 8, 2012

Status: WontFix

Created: 9 years 2 months ago by blackosx

Updated: 8 years 4 months ago

Status: WontFix

Followed by: 2 persons