diff -r 423dd85009cf -r ac3859d43844 uiacceltk/hitchcock/ServerCore/Src/alfappui.cpp --- a/uiacceltk/hitchcock/ServerCore/Src/alfappui.cpp Fri May 14 02:53:35 2010 +0300 +++ b/uiacceltk/hitchcock/ServerCore/Src/alfappui.cpp Tue May 25 17:55:19 2010 +0300 @@ -944,20 +944,29 @@ void CAlfAppUi::UpdateActiveSession(CAlfAppSrvSessionBase* aSession) { - EndPointerEventHandling(); - iData->iActiveSession = aSession; + if( iData->iActiveSession != aSession ) + { + EndPointerEventHandling(); + iData->iActiveSession = aSession; + + iData->iResourceManager->SetActiveSession( iData->iActiveSession ); - iData->iResourceManager->SetActiveSession( iData->iActiveSession ); - - if(!aSession) - { - if (iData->iMainDisplay) // TBD: multiple display support once again... + if(!aSession) { - TRAP_IGNORE(iData->iMainDisplay->SetClearBackgroundL(CHuiDisplay::EClearNone)); + if (iData->iMainDisplay) // TBD: multiple display support once again... + { + TRAP_IGNORE(iData->iMainDisplay->SetClearBackgroundL(CHuiDisplay::EClearNone)); + } } + iData->iBridgeObj->HandleVisualVisibility( 0 ); } } +CAlfAppSrvSessionBase* CAlfAppUi::ActiveSession() + { + return iData->iActiveSession; + } + // --------------------------------------------------------------------------- // From class CAknAppUi. // Handles window server event. @@ -1398,4 +1407,13 @@ // let the session complete message } +RAlfBridgerClient* CAlfAppUi::BridgerClient() + { + if (iData) + { + return iData->iBridgeObj->BridgerClient(); + } + return 0; + } + // end of file