WineHQ
Bug Tracking Database – Bug 34948

 Bugzilla

 

Last modified: 2013-11-22 12:50:26 UTC  

Chessmaster 10th Edition: title bar covers part of the player login window (Mac OS X only bug)

Bug 34948 - Chessmaster 10th Edition: title bar covers part of the player login window (Mac OS X only bug)
Chessmaster 10th Edition: title bar covers part of the player login window (M...
Status: CLOSED FIXED
AppDB: Show Apps affected by this bug
Product: Wine
Classification: Unclassified
Component: -unknown
1.7.6
x86 MacOS
: P2 minor
: ---
Assigned To: Mr. Bugs
http://www.fileplanet.com/142269/down...
: download
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2013-11-19 09:11 UTC by WineBuG
Modified: 2013-11-22 12:50 UTC (History)
1 user (show)

See Also:
Regression SHA1:
Fixed by SHA1:
Distribution: ---
Staged patchset:


Attachments
Chessmaster 10 Log (183.22 KB, text/plain)
2013-11-19 09:11 UTC, WineBuG
Details
Player Login Window (17.30 KB, image/png)
2013-11-19 09:12 UTC, WineBuG
Details

Note You need to log in before you can comment on or make changes to this bug.
Description WineBuG 2013-11-19 09:11:15 UTC
Created attachment 46571 [details]
Chessmaster 10 Log

See the screenshot.

On Ubuntu it looks fine. The problem can be reproduced in the demo (check out the link).

Mac OS X 10.9, ATI HD 2600 Pro, Mac Driver
Comment 1 WineBuG 2013-11-19 09:12:11 UTC
Created attachment 46572 [details]
Player Login Window
Comment 2 Ken Thomases 2013-11-20 17:14:02 UTC
The issue here is that the app is custom drawing the window's non-client area (its frame).  This is a situation where Wine often has problems.  The app doesn't do anything to "tell" Wine that it's going to do this, so the graphics drivers assume that they should replace the non-client area with platform-specific window decorations.

It is more or less a fluke that this doesn't happen with the X11 driver.  The app sets the WS_EX_TOOLWINDOW extended style on the window and the X11 driver doesn't support that.  (I think because many X11 window managers don't handle tool windows well.)  Because it doesn't support it, the X11 driver simply disables window manager decorations on such windows and lets user32 draw the non-client area.  The app intercedes and user32 never gets the chance.

So, the X11 driver's WS_EX_TOOLWINDOW limitation happens to hide the fact that it doesn't cope well with apps which do custom drawing of the non-client area.

The Mac driver doesn't cope any better with apps which do custom drawing of the non-client area but it does support WS_EX_TOOLWINDOW windows.  So, it doesn't turn off window decorations and that conflicts with the app's custom drawing.

I have submitted a patch <http://source.winehq.org/patches/data/100585> to add support for a new registry setting to the Mac driver.  Once that patch is applied, if you set:

[HKEY_CURRENT_USER\Software\Wine\Mac Driver]
"DisableWindowDecorations"="1"

then the Mac driver won't decorate the window and it will look like it should.  As usual, you can also set that per-app by using the key [HKEY_CURRENT_USER\Software\Wine\AppDefaults\<whatever>.exe\Mac Driver] instead.

This registry setting is similar to the X11-centric "Allow the window manager to decorate the windows" setting in winecfg, but they don't interact.  Some day winecfg needs to be modified so that it has settings for the Mac driver, too.
Comment 3 Ken Thomases 2013-11-21 14:52:16 UTC
The previous patch is being superseded by <http://source.winehq.org/patches/data/100610>.  That changes the registry key from "DisableWindowDecorations" which you would set to "1" to disable decorations to "Decorated" which you would set to "0" to disable decorations.
Comment 4 Alexandre Julliard 2013-11-22 12:50:26 UTC
Closing bugs fixed in 1.7.7.


Privacy Policy
If you have a privacy inquiry regarding this site, please write to [email protected]

Hosted By CodeWeavers