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

Mattias Gaertner nc-gaertnma at netcologne.de
Mon May 21 20:00:58 CEST 2012


On Mon, 21 May 2012 18:48:56 +0100
Martin <lazarus at mfriebe.de> wrote:

> On 21/05/2012 18:33, Mattias Gaertner wrote:
> > On Mon, 21 May 2012 19:19:40 +0200
> > Bernd<prof7bit at googlemail.com>  wrote:
> >
> >> 2012/5/21 Mattias Gaertner<nc-gaertnma at netcologne.de>:
> >>
> >>>   IDEWindowCreators.ShowForm(MessagesView,EnvironmentOptions.MsgViewFocus);
> >> This does not focus the window. Its happening later.
> > Maybe
> >
> > ide/main.pp
> > function TMainIDE.DoJumpToCompilerMessage
> >
> > "if FocusEditor then begin"
> >
> I did set a break in TCustomForm.Activate; And forced a codetool error 
> message.
> 
>     procedure TMainIDE.DoJumpToCodeToolBossError;
> calls
>        IDEWindowCreators.ShowForm(MessagesView,true);
> followed by
>        SourceEditorManager.ShowActiveWindowOnTop(True);
> 
> both calls activate the window.
> 
> On windows the WM_ACTIVATE messages are handled immediately (during the 
> call) and therefore they obey the order.
> No idea, maybe GTK re-orders the events?
> 
> After all, those calls are the same for win and gtk2. So there must be 
> something in the widgetset

Probably a combination.
It works here with gtk2 + lightdm. Docked and not docked.

Mattias




More information about the Lazarus mailing list