phoneapp/phoneuistates/src/cphonegsmincall.cpp
branchRCL_3
changeset 81 c26cc2a7c548
parent 62 5266b1f337bd
--- a/phoneapp/phoneuistates/src/cphonegsmincall.cpp	Wed Sep 15 12:12:21 2010 +0300
+++ b/phoneapp/phoneuistates/src/cphonegsmincall.cpp	Wed Oct 13 14:31:22 2010 +0300
@@ -289,13 +289,8 @@
         &uidParam );
     
     // Disable global notes when there is an incoming call
-    TPhoneCmdParamBoolean globalNotifierParam;
-    globalNotifierParam.SetBoolean( ETrue );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewSetGlobalNotifiersDisabled,
-        &globalNotifierParam );
-    iViewCommandHandle->ExecuteCommandL( EPhoneViewSetEikonNotifiersDisabled,
-        &globalNotifierParam );
-    
+    DisableGlobalNotifiersL();
+    DisableEikonNotifiersL();
     }
 
 // -----------------------------------------------------------
@@ -399,4 +394,53 @@
             EPhoneViewShowGlobalNote, &globalNoteParam ); 
     }
 
+
+// ---------------------------------------------------------
+// CPhoneGsmInCall::SetDivertIndication
+// ---------------------------------------------------------
+//
+EXPORT_C void CPhoneGsmInCall::SetDivertIndication( const TBool aDivertIndication )
+    {
+    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneGsmInCall::SetDivertIndication()");
+           
+    CPhoneState::SetDivertIndication( aDivertIndication );    
+    
+    TRAP_IGNORE( HandeDivertIndicationL() );
+	}
+
+// ---------------------------------------------------------
+// CPhoneGsmInCall::HandeDivertIndicationL
+// ---------------------------------------------------------
+//
+void CPhoneGsmInCall::HandeDivertIndicationL()
+    {
+    __LOGMETHODSTARTEND( EPhoneControl, "CPhoneGsmInCall::HandeDivertIndicationL()");
+       
+    TBuf< KPhoneContactNameMaxLength > remoteInfoText( KNullDesC );
+    TInt ringingCallId ( KErrNotFound );
+        
+    ringingCallId = GetRingingCallL();
+    
+    if( ringingCallId > KErrNotFound )
+       {
+       TPhoneCmdParamCallHeaderData divertData;
+    
+       divertData.SetCallFlag( CBubbleManager::EDiverted );
+       
+       GetRemoteInfoDataL( ringingCallId, remoteInfoText );
+       divertData.SetCLIText( 
+                  remoteInfoText,
+                  CBubbleManager::ERight );
+       
+       divertData.SetCiphering(
+           iStateMachine->PhoneEngineInfo()->IsSecureCall( ringingCallId ) );
+       divertData.SetCipheringIndicatorAllowed(
+           iStateMachine->PhoneEngineInfo()->SecureSpecified() );
+           
+       iViewCommandHandle->ExecuteCommandL( 
+           EPhoneViewUpdateCallHeaderRemoteInfoData, ringingCallId,
+           &divertData );
+        }
+    }
+
 // End of File