Pajama Sam's unmanaged window

Ori Pessach ori_pessach_blah at yahoo.com
Sun Jan 27 00:33:18 CST 2002


Hi,

I spent some time trying to hunt down the window management problems I 
reported a while ago (dialogs displayed by the game Pajama Sam appearing 
behind the main window, and sometimes not getting keyboard focus).

I found that the game's main window simply wasn't managed. The game opens a 
window that covers the entire screen, and doesn't have a caption. 
is_window_managed(), in dlls/x11drv/window.c therefore returns FALSE for that 
window, and (I'm guessing here) since Wine is running in managed mode, it 
manages that window poorly. Switching desktops in KDE doesn't remove the 
window from the screen, it's impossible to get any window to display on top 
of the game window, and in general, several functions in x11drv/winpos.c 
behave badly when Wine has a mix of managed and unmanaged windows.

Changing is_window_managed()'s default return value to TRUE makes the game 
behave much better, but not perfectly. The KDE panel stays on top of the game 
window - it can be hidden away, but Windows handles this differently, letting 
the game window obscure the task bar. I'm inclined to call this a KDE 
problem, rather than a Wine problem. 

Also, I don't know whether the tests in is_window_managed() cover all the 
cases in which a window should stay unmanaged. Right now, is_window_managed() 
tests for child windows and tool windows, and returns FALSE for those 
windows. Are there any other types of windows that shouldn't be managed?

-Ori Pessach

_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com





More information about the wine-devel mailing list