From 180887145341f3d5a67b288fc4a4204e0a915893 Mon Sep 17 00:00:00 2001 From: th Date: Fri, 18 May 2001 07:29:14 +0000 Subject: [PATCH] #85378# - Raise dialog to user attention if another dialog is locked --- vcl/source/window/winproc.cxx | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/vcl/source/window/winproc.cxx b/vcl/source/window/winproc.cxx index 2e3a9724593f..b5621a4a79ec 100644 --- a/vcl/source/window/winproc.cxx +++ b/vcl/source/window/winproc.cxx @@ -2,9 +2,9 @@ * * $RCSfile: winproc.cxx,v $ * - * $Revision: 1.17 $ + * $Revision: 1.18 $ * - * last change: $Author: th $ $Date: 2001-04-25 16:30:26 $ + * last change: $Author: th $ $Date: 2001-05-18 08:29:14 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -127,6 +127,9 @@ #ifndef _SV_FLOATWIN_HXX #include #endif +#ifndef _SV_DIALOG_HXX +#include +#endif #ifndef TF_SVDATA #ifndef _SV_DRAG_HXX #include @@ -1584,7 +1587,14 @@ IMPL_LINK( Window, ImplAsyncFocusHdl, void*, EMPTYARG ) if ( mpFrameData->mpFocusWin->IsEnabled() && mpFrameData->mpFocusWin->IsInputEnabled() ) mpFrameData->mpFocusWin->GrabFocus(); else - mpFrameData->mpFocusWin->ImplGetFirstOverlapWindow()->GrabFocus(); + { + ImplSVData* pSVData = ImplGetSVData(); + Window* pTopLevelWindow = mpFrameData->mpFocusWin->ImplGetFirstOverlapWindow(); + if ( !pTopLevelWindow->IsInputEnabled() && pSVData->maWinData.mpLastExecuteDlg ) + pSVData->maWinData.mpLastExecuteDlg->ToTop( TOTOP_RESTOREWHENMIN ); + else + pTopLevelWindow->GrabFocus(); + } } else GrabFocus();