[Lazarus] Patch win32callback

JoshyFun joshyfun at gmail.com
Thu Jun 12 16:38:25 CEST 2008


Hello Paul,

Thursday, June 12, 2008, 2:02:50 PM, you wrote:

>> When the application is being activated StayOnTop flags are being
>> restored and window application moved to top of ZOrder.
>>   
PI> Correct. Can you attach another patch in more usual format which 
PI> tortoise svn or another svn tool do. I dont understand your format and
PI> my tools too.

I had used the diff.exe present in lazarus bin folder. I can not use
Tortoise because svn.lazarus is not rechable using my DSL, it is a
common problem with some ISPs. One connect works and the next one will
not and wait forever, the behavior is completly random. Since a week
ago everything seens to work but I'll wait a few days to verify that
everything is fine.

To manually apply the patch simply remove lines starting with "<" and
replace them using lines marked with ">". I had attached the same diff
using RCS format. Basically it simply check that
WindowsInfo.StayOnTopList have something, if empty it does not apply
the SetWindowPos.

>> I was unable to see any possible side effect of this patch as when
>> StayOnTop windows are present behaviour changes to work as before the
>> patch.
>>   
PI> This needs to be tested in application with StayOnTop forms.

I had tested it, but please do it too.

PI> This things needs to be rewriteen in more generic way since not only
PI> win32 but other widgetsets should do the same clearing/restoring 
PI> stayontop on activate/deactivate.

To my needs at least (I'm not using stayontop windows) this patch
solves 80% of the problems, but there are other SetWindowPos which
changes the ZOrder that I think that could be prevented (SWP_NOZORDER)
without impact but as I do not know exaclty the purpose of that call I
can not verify that everything works as before (apparently works as
before).

>> PS: Is the remove of StayOnTop flags expected ? StayOnTop flags in
>> windows is desktop wide, so a deactivated application with StayOnTop
>> should keep its StayOnTop windows on top, or maybe I'm wrong ?
>>   
PI> Yes, it is expected. 1) Who needs another application windows when he
PI> doesnot working with it? 2) This is delphi compatible 3) We have many
PI> complains when we did not do so in bug-tracker.

1) In the past I wrote a little application that uses StayOnTop system
wide window as a drop target ;) Of couse it must be visible everytime.
2) Nothing to say :) That's important (never checked against Delphi).
3) he, he, he... sure :)

-- 
Best regards,
 JoshyFun
-------------- next part --------------
A non-text attachment was scrubbed...
Name: win32callback.inc.rcs.diff
Type: application/octet-stream
Size: 925 bytes
Desc: not available
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20080612/c89b9502/attachment-0007.obj>


More information about the Lazarus mailing list