diff -r e30d4a1b8bad -r c26cc2a7c548 phoneapp/phoneuicontrol/src/cphonestateincall.cpp --- a/phoneapp/phoneuicontrol/src/cphonestateincall.cpp Wed Sep 15 12:12:21 2010 +0300 +++ b/phoneapp/phoneuicontrol/src/cphonestateincall.cpp Wed Oct 13 14:31:22 2010 +0300 @@ -309,30 +309,42 @@ __LOGMETHODSTARTEND(EPhoneControl, "CPhoneStateInCall::HandleIdleL()" ); __ASSERT_DEBUG( aCallId >= 0, Panic( EPhoneCtrlParameterNotInitialized ) ); - TransitionHandlerL().IdleCallUiUpdateLC(); - + IsNumberEntryUsedL() ? + BeginTransEffectLC( ECallUiDisappear ) : + BeginTransEffectLC( ENumberEntryClose ); + BeginUiUpdateLC(); iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveCallHeader, aCallId ); iViewCommandHandle->ExecuteCommandL( EPhoneViewHideToolbar ); SetDefaultFlagsL(); if ( IsNumberEntryUsedL() ) { - // Show the number entry if it exists and update cba's. - SetNumberEntryVisibilityL( ETrue ); - // Close dtmf dialer when call is disconnected. - if ( IsDTMFEditorVisibleL() ) - { - CloseDTMFEditorL(); - // Display idle screen and update CBA's - DisplayIdleScreenL(); + if ( NeedToReturnToForegroundAppL() ) + { + // Return phone to the background if menu application is needed to foreground. + iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground ); + iViewCommandHandle->ExecuteCommandL( EPhoneViewSetControlAndVisibility ); + iCbaManager->SetCbaL( EPhoneNumberAcqCBA ); } - else if ( iOnScreenDialer && IsCustomizedDialerVisibleL() ) - { - CloseCustomizedDialerL(); - // Display idle screen and update CBA's - DisplayIdleScreenL(); - } - } + else + { + // Show the number entry if it exists and update cba's. + SetNumberEntryVisibilityL( ETrue ); + // Close dtmf dialer when call is disconnected. + if ( IsDTMFEditorVisibleL() ) + { + CloseDTMFEditorL(); + // Display idle screen and update CBA's + DisplayIdleScreenL(); + } + else if ( iOnScreenDialer && IsCustomizedDialerVisibleL() ) + { + CloseCustomizedDialerL(); + // Display idle screen and update CBA's + DisplayIdleScreenL(); + } + } + } else { iViewCommandHandle->ExecuteCommandL( EPhoneViewMenuBarClose ); @@ -350,7 +362,8 @@ } DeleteTouchPaneButtons(); - TransitionHandlerL().EndUiUpdateAndEffect(); + EndUiUpdate(); + EndTransEffect(); DisplayCallTerminationNoteL(); iStateMachine->ChangeState( EPhoneStateIdle ); iViewCommandHandle->ExecuteCommandL( EPhoneViewHideToolbar ); @@ -404,26 +417,6 @@ // Go to current state implementation UpdateInCallCbaL(); } - TBool audioMute = iStateMachine->PhoneEngineInfo()->AudioMute(); - TPhoneCmdParamCallStateData callStateData; - callStateData.SetCallState( EPEStateConnected ); - iViewCommandHandle->HandleCommandL( EPhoneViewGetCallIdByState, &callStateData ); - TInt call = callStateData.CallId(); - if ( call != KErrNotFound && iStateMachine->PhoneEngineInfo()->CallType( call ) == EPECallTypeVoIP - && audioMute ) - { - TPhoneCmdParamBoolean dtmfSendFlag; - dtmfSendFlag.SetBoolean( ETrue ); - iViewCommandHandle->ExecuteCommandL( EPhoneViewSetVoipCallDTMFVisibilityFlag, - &dtmfSendFlag ); - } - else - { - TPhoneCmdParamBoolean dtmfSendFlag; - dtmfSendFlag.SetBoolean( EFalse ); - iViewCommandHandle->ExecuteCommandL( EPhoneViewSetVoipCallDTMFVisibilityFlag, - &dtmfSendFlag ); - } } // ----------------------------------------------------------- @@ -606,14 +599,13 @@ switch( aCommand ) { case EPhoneInCallCmdDialer: - TransitionHandlerL(). - BeginTransEffectLC( EPhoneTransEffectCallUiDisappear ); + BeginTransEffectLC( ECallUiDisappear ); if ( !IsNumberEntryUsedL() ) { CreateNumberEntryL(); } SetNumberEntryVisibilityL( ETrue ); - TransitionHandlerL().EndTransEffect(); + EndTransEffect(); break; case EPhoneCmdOptions: @@ -847,11 +839,10 @@ case EPhoneViewOpenCallHandling: if ( iOnScreenDialer && IsNumberEntryUsedL() ) { - TransitionHandlerL(). - BeginTransEffectLC( EPhoneTransEffectCallUiAppear ); + BeginTransEffectLC( ECallUiAppear ); // Remove number entry from screen iViewCommandHandle->ExecuteCommandL( EPhoneViewRemoveNumberEntry ); - TransitionHandlerL().EndTransEffect(); + EndTransEffect(); HandleNumberEntryClearedL(); } commandStatus = CPhoneState::HandleCommandL( aCommand ); @@ -926,8 +917,7 @@ if ( iOnScreenDialer ) { //In touch, just activate dialer - TransitionHandlerL(). - BeginTransEffectLC( EPhoneTransEffectCallUiDisappear ); + BeginTransEffectLC( ECallUiDisappear ); if ( IsNumberEntryUsedL() ) { SetNumberEntryVisibilityL(ETrue); @@ -937,7 +927,7 @@ CreateNumberEntryL(); SetNumberEntryVisibilityL(ETrue); } - TransitionHandlerL().EndTransEffect(); + EndTransEffect(); } else { @@ -1556,7 +1546,7 @@ } else { - CloseClearNumberEntryAndLoadEffectL( EPhoneTransEffectPhoneUiClose ); + CloseClearNumberEntryAndLoadEffectL( ENumberEntryClose ); } }