Pavel Roskin proski@gnu.org writes:
I've retested paintbrush on the 8-but display and I see no difference.
The reasons are:
- I invested time into testing XOR operations on Windows 2000 and found
no magic interpretation for the black pen. It's invisible in Windows.
Well yes, that's the point, it's invisible so apps are not going to use it. On Windows black is always pixel 0, so xoring with black never does anything; if you want to invert an area you have to use white. On X, sometimes white is pixel 0, so you'd have to use black to invert; but of course Windows apps don't do that, which is why we have that hack.
- DrawFocusRect() is Wine uses this hack accidentally. COLOR_WINDOWTEXT
is black, so it becomes white. It's confusing. Not only window text is irrelevant, but Wine also gets it as black but uses as white.
That's a bug, but the bug is not that XOR changes black to white, the bug is using black with XOR in the first place (which is what your other change is correctly fixing).
- Black pen, white background, pattern, opaque mode. The background
would still be changing the image. If we consider the pen white, the pattern would be lost. I actually didn't test it, but I expect it to be broken.
I don't see how a XOR with 0 would ever change anything.