diff options
author | Christof Pintaske <cp@openoffice.org> | 2002-08-16 16:16:27 +0000 |
---|---|---|
committer | Christof Pintaske <cp@openoffice.org> | 2002-08-16 16:16:27 +0000 |
commit | 93bf94a1e10897a94d02e0b160c1b3cdb4d8baaa (patch) | |
tree | 71f071f715b98e99cb4979857a23fdb1fbd44be0 | |
parent | 331a6626fa21bca94d04ab569560e6fe17c64675 (diff) |
#102010# accessibility hack: keep menues open after focus lost
-rw-r--r-- | vcl/source/window/winproc.cxx | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/vcl/source/window/winproc.cxx b/vcl/source/window/winproc.cxx index 06b0a85dd594..7fcdfdde5d58 100644 --- a/vcl/source/window/winproc.cxx +++ b/vcl/source/window/winproc.cxx @@ -2,9 +2,9 @@ * * $RCSfile: winproc.cxx,v $ * - * $Revision: 1.56 $ + * $Revision: 1.57 $ * - * last change: $Author: ssa $ $Date: 2002-07-18 08:04:31 $ + * last change: $Author: cp $ $Date: 2002-08-16 17:16:27 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -1619,11 +1619,19 @@ IMPL_LINK( Window, ImplAsyncFocusHdl, void*, EMPTYARG ) // TrackingMode is ended in ImplHandleLoseFocus // To avoid problems with the Unix IME // pFocusWin->EndExtTextInput( EXTTEXTINPUT_END_COMPLETE ); - NotifyEvent aNEvt( EVENT_LOSEFOCUS, pFocusWin ); - if ( !ImplCallPreNotify( aNEvt ) ) - pFocusWin->LoseFocus(); - pFocusWin->ImplCallDeactivateListeners( NULL ); - GetpApp()->FocusChanged(); + + // XXX #102010# hack for accessibility: do not close the menu, + // even after focus lost + static const char* pEnv = getenv("SAL_FLOATWIN_NOAPPFOCUSCLOSE"); + if( !(pEnv && *pEnv) ) + { + NotifyEvent aNEvt( EVENT_LOSEFOCUS, pFocusWin ); + if ( !ImplCallPreNotify( aNEvt ) ) + pFocusWin->LoseFocus(); + pFocusWin->ImplCallDeactivateListeners( NULL ); + GetpApp()->FocusChanged(); + } + // XXX } } |