[Lazarus] usability: please not focus the messages window, only bring to front

zeljko zeljko at holobit.net
Tue May 22 16:25:33 CEST 2012


On Tuesday 22 of May 2012 13:44:48 Martin wrote:
> On 22/05/2012 06:50, zeljko wrote:
> > On Tuesday 22 of May 2012 03:16:42 Bernd wrote:
> > > 2012/5/21 Martin <lazarus at mfriebe.de>:
> > > > Except, this patch will alter behaviour  that currently works.  If
> > > > the
> > > > 
> > > > msg window is buried behind lots of other IDE window, it will
> > 
> > currently
> > 
> > > > end up 2nd (on windows) with only the source editor on top.
> > > > 
> > > > That is useful. And worxs (on w32)
> > > 
> > > Ok, i have another patch (undo the other one and apply this one
> > > 
> > > instead). It puts an Application.ProcessMessages between the two
> > > 
> > > window manipulations. Now it does not change behavior and this also
> > > 
> > > fixes all my bugs.
> 
> ...
> 
> > Then it will be better to find out what's needed to be changed inside
> > widgetset.There's already routine which checks wm name, so eg.
> > 
> > if GetWM = 'xfwm' then do
> > 
> > somethingElse();
> > 
> > Also best would be to create example (if possible) which reproduces
> > problem - then it won't be hard to fix I guess.
> 
> +1
> 
> The problem with a global ProcessMessages is, that it processes all
> messages. Under heav load, that can include the next key-stroke, and the
> method can be re-entered.

That's why I'm against unneeded processMessages inside IDE or LCL.
Problem is inside xfwm4 (XFCE window manager) .... just reproduced it on my 
machine with Bernds example.
just simple code:
SetActiveWin(Form1);
SetActiveWin(Form2);
does not work under xfwm4.
Form1 is activated, but Form2 is never activated in this case.Must be 
processmessages between those ops (or some reasonable delay) to get it work.
SyncX also does not help.

zeljko
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20120522/74d5c0a0/attachment-0003.html>


More information about the Lazarus mailing list