idlefw/src/idleint/aiuiidleintegration.cpp
branchRCL_3
changeset 82 ace62b58f4b2
parent 51 15e4dd19031c
child 101 9e077f9a342c
--- a/idlefw/src/idleint/aiuiidleintegration.cpp	Tue May 25 13:01:39 2010 +0300
+++ b/idlefw/src/idleint/aiuiidleintegration.cpp	Wed Jun 09 10:01:25 2010 +0300
@@ -26,6 +26,7 @@
 #include <ctsydomainpskeys.h>
 #include <apgtask.h>
 
+
 // User includes
 #include <aisystemuids.hrh>
 #include <aiutility.h>
@@ -106,7 +107,9 @@
     
     iEikEnv.SetSystem( ETrue );
              
-    TInt wgId( iEikEnv.RootWin().Identifier() );
+    RWindowGroup& windowGroup = iEikEnv.RootWin();
+    windowGroup.AutoForeground(EFalse);
+    TInt wgId( windowGroup.Identifier() );
     TInt focusWgId( iEikEnv.WsSession().GetFocusWindowGroup() );
     
     if ( focusWgId == wgId )
@@ -218,6 +221,8 @@
 //
 void CAiUiIdleIntegrationImpl::SetCallBubbleIfNeededL()
 	{
+    __PRINTS( "*** CAiUiIdleIntegrationImpl::SetCallBubbleIfNeededL" );
+    
     if( !iIncallBubbleAllowed )
     	{
         TInt callStatus( 0 );
@@ -229,8 +234,11 @@
         // Call ongoing => show bubble
 	  	if( err == KErrNone && callStatus > EPSCTsyCallStateNone )
 	      	{
-	       	iIncallBubble->SetIncallBubbleAllowedInIdleL( ETrue );                	
-	       	iIncallBubbleAllowed = ETrue;
+			__PRINTS( "*** CAiUiIdleIntegrationImpl::SetCallBubbleIfNeededL - enable" );
+
+            iIncallBubble->SetIncallBubbleAllowedInUsualL( ETrue );
+            iIncallBubble->SetIncallBubbleAllowedInIdleL( ETrue );
+            iIncallBubbleAllowed = ETrue;
 	       	}    
     	}
 	}
@@ -241,11 +249,16 @@
 //
 void CAiUiIdleIntegrationImpl::ClearCallBubbleL()
 	{
+    __PRINTS( "*** CAiUiIdleIntegrationImpl::ClearCallBubbleL" );
+
 	 if( iIncallBubbleAllowed )
     	{
+         __PRINTS( "*** CAiUiIdleIntegrationImpl::ClearCallBubbleL - disable" );
+
     	iIncallBubble->SetIncallBubbleAllowedInIdleL( EFalse );
+    	iIncallBubble->SetIncallBubbleAllowedInUsualL( EFalse );
     	iIncallBubbleAllowed = EFalse;
-    	}        
+    	}
 	}
     
 // ----------------------------------------------------------------------------
@@ -279,34 +292,16 @@
 	if ( err == KErrNone )
 		{
 		// Call ongoing => show bubble if not showing already
-		TBool allowed = EFalse;
-		
 		if ( !self->iIncallBubbleAllowed &&
 		     self->iForeground &&
 		    ( callStatus > EPSCTsyCallStateNone ) )
 			{
-			allowed = ETrue;
-    		
-			TRAP( err, 
-                self->iIncallBubble->SetIncallBubbleAllowedInIdleL( allowed ) );
-			            		
-			if ( err == KErrNone )
-    		    {
-    			self->iIncallBubbleAllowed = allowed;
-    		    }
+            TRAP_IGNORE( self->SetCallBubbleIfNeededL() );
 			}
 		// No call ongoing => hide if bubble is visible			
 		else if ( self->iIncallBubbleAllowed && callStatus <= EPSCTsyCallStateNone )
 			{
-			allowed = EFalse;
-			
-    		TRAP( err, 
-                self->iIncallBubble->SetIncallBubbleAllowedInIdleL( allowed ) );
-    		
-    		if ( err == KErrNone )
-    		    {
-    			self->iIncallBubbleAllowed = allowed;
-    		    }
+    		TRAP_IGNORE( self->ClearCallBubbleL() );
 			}
 		}