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();
|