diff -r 8871b09be73b -r 24062c24fe38 phoneapp/phoneuicontrol/src/cphonestate.cpp --- a/phoneapp/phoneuicontrol/src/cphonestate.cpp Fri Feb 19 22:50:26 2010 +0200 +++ b/phoneapp/phoneuicontrol/src/cphonestate.cpp Fri Mar 12 15:42:40 2010 +0200 @@ -1480,13 +1480,13 @@ } // ----------------------------------------------------------- -// CPhoneState::NeedToSendToBackgroundL +// CPhoneState::NeedToReturnToForegroundAppL // ----------------------------------------------------------- // -EXPORT_C TBool CPhoneState::NeedToSendToBackgroundL() const +EXPORT_C TBool CPhoneState::NeedToReturnToForegroundAppL() const { return iViewCommandHandle->HandleCommandL( - EPhoneViewGetNeedToSendToBackgroundStatus ) == + EPhoneViewGetNeedToReturnToForegroundAppStatus ) == EPhoneViewResponseSuccess; } @@ -1717,7 +1717,7 @@ // Show the number entry if it exists SetNumberEntryVisibilityL(ETrue); } - else if ( NeedToSendToBackgroundL() ) + else if ( NeedToReturnToForegroundAppL() ) { // Continue displaying current app but set up the // idle screen in the background @@ -2275,22 +2275,16 @@ iViewCommandHandle->ExecuteCommandL( EPhoneViewSetVideoCallFlag, &booleanParam ); } - // Go to background if necessary - if ( NeedToSendToBackgroundL() || IsAutoLockOn() ) + // Check if application and number entry was open before incoming call. If so give control to number entry + // to prevent flickering + if ( NeedToReturnToForegroundAppL() || IsAutoLockOn() ) { - iViewCommandHandle->ExecuteCommandL( EPhoneViewSendToBackground ); // If number entry is used set control and visibility. if ( IsNumberEntryUsedL() ) { iViewCommandHandle->ExecuteCommandL( EPhoneViewSetControlAndVisibility ); } } - // If there is no need to send back ground and number entry is used then - // we must show number entry. - else if ( !NeedToSendToBackgroundL() && IsNumberEntryUsedL() ) - { - SetNumberEntryVisibilityL(ETrue); - } } // -----------------------------------------------------------