W(w)indows messages

Fabian Cenedese Cenedese at indel.ch
Tue Oct 8 10:19:14 CDT 2002


Hi all

I still try to solve the problems I have in window handling. There is a 
function
X11_ShowWindow. First comes a big switch/case of all show commands.
Then is the call to SetWindowPos with the new coords. But this newPos
is only filled in few cases. So most of the times I end up with a
SetWindowPos with coords 0. But still it somehow seems to work so I
continued my search.

In SetWindowPos is a call to WIN_SetRectangles with newWindowRect
and newClientRect as parameters. But in the end is a message generated
WM_WINDOWPOSCHANGED where the old winpos with the 0s inside
is given as argument. Shouldn't that be also one of the new rects resp.
shouldn't these new coords be set in newpos? I tried it but wine broke
off with a stack overflow as I somehow generated a recursive calling.
I have a call to ShowWindow in my OnWindowPosChanged handler.
This works fine in Windows but wine seems to generate a new message
WindowPosChanged what Windows doesn't. The use of ShowWindow
in OnWindowPosChanged is maybe questionable but nonetheless it
shows that there is something different in wine. Deleting this call to
ShowWindow makes it run ok. But I noticed also previously that wine
seems to generate more messages than Windows does.

The main reason why I started this exploration is that some of my docked
windows didn't show up. Then I found that I always get coords of 0 in my
OnWindowPosChanged. So we come back to the above mentioned newPos.

I'm quite new to wine and especially this window handling stuff, but this
seems to be the biggest problem to make my app work with wine so I'd
really appreciate some hints. If someone knows a book about Windows
Messages I'm game.

Thanks for reading :)

bye  Fabi





More information about the wine-devel mailing list