[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] WM_REPOSED implementation



> -----Original Message-----
> From: mint-bounce@lists.fishpool.fi
> [mailto:mint-bounce@lists.fishpool.fi]On Behalf Of Odd Skancke
> Sent: Friday, December 09, 2005 12:30 PM
>
>  WM_SIZED - The window has been resized. Only its W/H coordinates have
> changed. No extra checks to see if window moved because per definition
> it didnt move with this message, (if you need to know) or no extra need
> to check if it changed size, because if it didnt you would not receive
> this message.

I have browsed all docs available to me, and can't find any statements that
backs up your assumptions here. All references to WM_SIZED that I've found
today says something like "Sent when a window resize is requested. msg[4-7]
hold the new window rectangle". The difference between WM_SIZED and WM_MOVED
is that with WM_MOVED the width and height of the window is not changed.
This doesn't mean that WM_SIZED exclusively changes the width and height!

I'd say that the obvious solution is to just send a correct WM_SIZED message
when a window is resized with the top and/or left border, and I suspect that
this will work correctly with most applications. In those cases that it
doesn't work (because the application ignores part of the message sent it by
the AES) the window will still be resized, but not moved. You can still move
and resize these apps the "old" way, and the application will still work as
intended. Nothing is lost - but all applications that interpret WM_SIZED
correctly will work perfectly. No need to send both SIZED and
MOVED-messages, no new mode/message to support.

You can always add the option to tell the AES to send first MOVED and then
SIZED to specific applications, but that will only work if XaAES can be
externally configured on per-application basis (like Geneva can). I don't
know if this is possible, as I can't get XaAES to run on my Milan yet.

Jo Even