uiacceltk/hitchcock/ServerCore/Src/alfappui.cpp
changeset 29 ac3859d43844
parent 27 70e659bb284f
child 31 1b6909418757
--- 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