[Bug 42740] Icons with transparency no longer rendering correctly

wine-bugs at winehq.org wine-bugs at winehq.org
Tue Apr 4 03:03:20 CDT 2017


https://bugs.winehq.org/show_bug.cgi?id=42740

--- Comment #5 from Alexandre Julliard <julliard at winehq.org> ---
(In reply to Johannes from comment #4)
> I adjusted the Wine-specific check to be applied to old Wine versions only.

Thanks!

> Windows just ignores the alpha channel (or expects it to be 255), only
> taking the actual pixel value (zero/non-zero) into account. But Wine seems
> to ignore the entire mask no matter if the alpha channel is set to 0 or 255
> for any of the mask pixels. I think Wine needs to use the mask no matter
> which bit depth it has, and probably also ignore the alpha channel of the
> mask.

We are using BitBlt to copy the mask to 1-bpp. The way it works is that pixel
values are matched against the background color, which is 00ffffff by default,
so an alpha of 255 is never going to match, and the mask will be all ones. If
you set alpha to 0 always, it should work as expected.

I believe Windows behaves the same way. I've hacked OpenMPT to make it always
take the Wine code path, and I see the white background on Windows too.

If you have a case where the behavior is different without an explicit Wine
check, I'd be interested to try it.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list