diff -r 51dda465e618 -r 38fb6f7eacd5 camerauis/cameraapp/generic/src/CamUserSceneSetupViewBase.cpp --- a/camerauis/cameraapp/generic/src/CamUserSceneSetupViewBase.cpp Wed Apr 14 15:41:04 2010 +0300 +++ b/camerauis/cameraapp/generic/src/CamUserSceneSetupViewBase.cpp Tue Apr 27 16:19:06 2010 +0300 @@ -244,9 +244,9 @@ void CCamUserSceneSetupViewBase::HandleForegroundEventL( TBool aForeground ) { PRINT1( _L("Camera => CCamUserSceneSetupViewBase::HandleForegroundEventL %d"), aForeground ); + CCamAppUi* appUi = static_cast( AppUi() ); if ( aForeground ) { - CCamAppUi* appUi = static_cast( AppUi() ); // if foreground event is received while in videocall, go to standby with error if ( iController.InVideocallOrRinging() && ECamNoOperation == iController.CurrentOperation() ) { @@ -286,7 +286,7 @@ } } // To background - else + else if( !aForeground && appUi->AppInBackground( EFalse ) ) { PRINT( _L("Camera <> CCamUserSceneSetupViewBase::HandleForegroundEventL dec engine count") ); // Register that we nolonger need the engine @@ -531,14 +531,14 @@ { PRINT( _L("Camera => CCamUserSceneSetupViewBase::SwitchToCaptureSetupModeL()") ); iUserSceneSetupModeActive = EFalse; + SetCaptureSetupModeActive(ETrue); iContainer->MakeVisible( ETrue ); AppUi()->RemoveFromStack( iContainer ); iVFRequested=ETrue; StartViewFinder(); iController.StartIdleTimer(); - SetCaptureSetupModeActive(ETrue); - + // Remove the view's main container, and add the capture setup // control associated with the input command to the container stack. CCamCaptureSetupViewBase::SwitchToCaptureSetupModeL( aSetupCommand, ETrue );