http://bugs.winehq.org/show_bug.cgi?id=4009
------- Additional Comments From madewokherd@gmail.com 2006-02-04 04:15 ------- Created an attachment (id=2188) --> (http://bugs.winehq.org/attachment.cgi?id=2188&action=view) patch for making everything a lot worse
Ok, this patch was created to test a guess at what's happening. Here goes:
<guesswork>The W:A frontend creates two windows. One of the windows is responsible for getting input, and it has normal controls (frames and things, which you really see in wine). As far as the windowing system is concerned, this one is always visible (except when an always-on-top window pops up and ruins everything, a problem known that has plagued this frontend in the past). However, users never really see this window because W:A uses directdraw to hijack the screen and draw something else. Except that in wine, they do. This is because directdraw in wine doesn't hijack the display; it just draws to an existing window, which in this case is not visible.</guesswork>
Screenshot of W:A running with the break-everything patch: http://img222.imageshack.us/my.php?image=screenshotwaborked4pu.png
Now, the idea of this patch is to confirm or disprove that story by forcing the "display" window to be visible. Hopefully, you'll then be able to see some of the frontend being drawn. And that's exactly what happens; the right and bottom parts of the frontend are drawn. I'm assuming you don't see the rest of it because that's where the "input" window is. I was expecting the display window to be on top of the "input" window..I guess this makes more sense in retrospect.
Of course, since I'm not familiar with how ddraw works, I don't know what the best way to fix this is. It seems to me you could create a new unmanaged window, on top of everything else, for drawing things (thus hijacking the display), but that doesn't accept any kind of input (that's possible, right?).